1

これが私の問題です:

データベースのすべてのレコードを表示できません。 オブジェクト参照がオブジェクトのインスタンスに設定されていない
ことを示すエラーがあります。

どうすればこれを修正できるのか本当にわかりません。

これはエラーです..

strProjectID = Request.QueryString["ProjectID"].ToString();

そしてここにコードがあります...

protected void Page_Load(object sender, EventArgs e) 
    {

        strProjectID = Request.QueryString["ProjectID"].ToString();
        if (JQGrid1.AjaxCallBackMode != AjaxCallBackMode.None)            
        {               
            // save the last grid state in session - to be used for exporting                
            Session["gridFilterPageState"] = JQGrid1.GetState();            
        }
    }
4

3 に答える 3

2

リクエストに渡されたクエリ文字列パラメーターがない場合ProjectIDは、null インスタンスで .ToString を呼び出しています。そのため、ページを呼び出すときに、このクエリ文字列パラメーターを渡していることを確認してください: /WebFormName.aspx?ProjectID=123.

于 2012-09-24T06:21:15.587 に答える
1

この問題は、指定されたパラメーターが指定された URL で渡されない場合に発生します...指定されたパラメーターが URL を介して渡される必要があることを確認してください...次の方法で、要求に指定されたパラメーターが含まれているかどうかを確認できます。

if(Request.QueryString["ProjectID"] !=null)
{
   strProjectID = Request.QueryString["ProjectID"].ToString();
}

チェックもエラーもまったく発生させたくない場合は、次のようにすることができます。

 strProjectID = Convert.ToString(Request.QueryString["ProjectID"]);

含まれていないempty string場合は返されますQuerystringProjectID

于 2012-09-24T06:23:45.610 に答える
0

コードを以下のコードに置き換えます。

protected void Page_Load(object sender, EventArgs e) 
{
    if(Request.QueryString["ProjectID"] != null)
    {
       strProjectID = Request.QueryString["ProjectID"].ToString();
    }

    if (JQGrid1.AjaxCallBackMode != AjaxCallBackMode.None)            
    {               
        // save the last grid state in session - to be used for exporting                
        Session["gridFilterPageState"] = JQGrid1.GetState();            
    }
}

説明:問題は、ProjectIDがQueryStringに存在しない可能性があることです。したがって、安全を期すために、ヌルチェックを行うことをお勧めします。

于 2012-09-24T06:26:21.033 に答える