ObjectDataSoureにバインドするGridviewがあります。
ObjectDataSourceは、クエリ結果とともにDataTableを返すDALメソッドを呼び出すビジネスオブジェクトを使用します。
アプリケーションは実行時に動作しますが、設計時に問題があります:GridViewのタスクウィザード->列の編集を使用する場合:[選択したフィールド]テキスト領域にフィールドが表示されません(したがって、ウィザードを使用して列を編集することはできません) 。
DALメソッド:
public override DataTable GetAllWorkers()
{
using (SqlConnection con = new SqlConnection(this.ConnectionString)) {
SqlCommand cmd = new SqlCommand("t_Workers_GetAllWorkers", con);
cmd.CommandType = CommandType.StoredProcedure;
con.Open();
return GetTable(cmd);
}
}
private DataTable GetTable(SqlCommand cmd)
{
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = cmd;
DataTable dt = new DataTable();
adp.Fill(dt);
return dt;
}
BLLメソッド:
public static DataTable GetAllWorkers()
{
return DataProvider.Instance().GetAllWorkers();
}
ASPX Webページ:
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
SelectMethod="GetAllWorkers" TypeName="BLL.BizImpl"></asp:ObjectDataSource>
<asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1"
EnableModelValidation="True" Height="156px" Width="270px">
</asp:GridView>
誰かが問題の原因を説明できますか?
Thanks