私はobjectdatasourceでSQLサーバーにアクセスし、データテーブルを返して詳細ビューコントロールを埋めようとしています。選択したID値は、gridviewコントロールによって返されます。データテーブルがアダプタで埋められていないようで、理由がわかりませんでした。SQLのIDは、主キー(Int、4、nullではない)として設定されます。デバッガーは、詳細データテーブルがnullであると言います。どんな助けでも大歓迎です。
public DataTable GetDetail(string ID)
{
if (ID == "")
{
return null;
}
else
{
DataTable Detail = null;
using (SqlConnection conn = new SqlConnection(connection))
{
string comm = @"select * from dbo.Products where ID = @ID";
conn.Open();
SqlDataAdapter adapter=null;
using (SqlCommand cmd = new SqlCommand(comm, conn))
{
cmd.Parameters.Add("ID", System.Data.SqlDbType.Int, 4).Value = Convert.ToInt32(ID);
adapter = new SqlDataAdapter(cmd);
adapter.Fill(Detail);
return Detail;
}
}
}