0

SQL データベース接続を使用して認証を確認して、ページを開始したいと思います。これは私が持っているコードですが、なぜ機能しないのかわかりません:

public partial class SiteMaster : System.Web.UI.MasterPage
{
  protected void Page_Load(object sender, EventArgs e)
  {
    // Try to open database.
    try
    {
        SqlConnection con = new SqlConnection();
        con.ConnectionString = WebConfigurationManager.ConnectionStrings["blahblah"].ConnectionString;
        con.Open();
        con.Close();
        //successful login, do nothing.
    }
    catch (Exception err) //if error Opening, catch the error, and display
    {
        SiteMasterMsg.Text = "Could not login in using ___.";
        SiteMasterMsg.Text += err.Message;
    }

問題は、ページが単に停止し、データベース接続のログインに失敗したことを示すデフォルトの IIS エラー ページが表示されることです。私の希望は、接続を「試行」し、ログイン試行が失敗したときにエラーをキャッチし、エラーのあるページを表示することでした。Default.aspx ページにこれがあります。

<asp:Label id="SiteMasterMsg" runat="server" />

何が悪いのかわかりません。何か不足していますか、それとももっと良い方法がありますか?

前もって感謝します!

4

1 に答える 1

1

問題は、このコードが自分の Site.Master.cs ページにあるためであることに気付きました。そのため、ページが実際には完全に開発されることはなく、何らかのレベルのエラーで停止し、それが私が見ていたことです。解決策は、専用の Login.aspx ページを作成し、このコードを Site.Master.cs ページに配置しないことでした。

于 2013-04-22T20:02:00.203 に答える