ページ上のいくつかのコントロールに基づいて動的にバインドしたいGridviewコントロールがあります。Selectメソッドを動的に設定し、パラメーターを渡そうとしている次のコードを除いて、すべてが正常に機能するようになりました。例外が発生し、パラメータを作成するための複数の方法を試しました。ここにコード:
string filterValue = FilterValue.Value; //FilterValue.Value is a HiddenField (Value is definitely populated)
MyObjDataSource.SelectParameters.Add("policynumber",TypeCode.String, filterValue);
MyObjDataSource.SelectMethod = "GetPolicybyPolicyNumber";
MyObjDataSource.Select();
私のSelectメソッドは次のようになります。
public IQueryable GetPolicybyPolicyNumber(Parameter policynumber, string sortExpr, int maximumRows, int startRowIndex)
{
//Debugging does not even reach here. I'm just returning null for demo purposes
return null;
}
私が取得し続ける例外は次のとおりです。
System.InvalidOperationException: System.Web.UI.WebControls.ObjectDataSourceView.ConvertType(Object value、Type type、Stringで、パラメーター'policynumber'の値を'System.String'から'System.Web.UI.WebControls.Parameter'に変換できませんparamName)...。
私もこれを試しましたが、同じ例外があります:
Parameter param = new Parameter();
param.Type = TypeCode.String;
param.DefaultValue = FilterValue.Value;
MyObjDataSource.SelectParameters.Add(param);
何かアドバイス?Tx