面对错误DataSource和And DataSourceID都是在GridView Entity Framework上定义的

时间:2014-03-07 10:51:48

标签: asp.net entity-framework gridview datasource

我正在使用实体框架工作,并希望绑定网格视图上的数据但面临问题我有我粘贴的代码以及附加屏幕截图我也看到了关于这个问题的答案但对我没有好处所以任何人都有经验必须欣赏这个错误。

enter image description here

aspx.cs代码

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindGrid();
        }
        lblMessage.Text = "";
    }

    void BindGrid()
    {
        using (GapEntities1 context = new GapEntities1())
        {
            if (context.Organizations.Count() > 0)
            {
                // GdvOrganization is a gridview ID name
                GdvOrganization.DataSource = context.Organizations;
                GdvOrganization.DataBind();
            }
        }
    }

1 个答案:

答案 0 :(得分:4)

好像你试图从Markup端(.aspx)绑定GridView以及使用后面的代码。(。aspx.cs)

选择任何一种方式仅绑定网格。

1。)如果从后面的代码绑定gridview,则从标记中删除网格视图中的DataSourceId属性。更改以下代码:

<asp:gridview id="GdvOrganization" runat="server" autogeneratecolumns="False" 
DataSourceID="MyDataSource">

<asp:gridview id="GdvOrganization" runat="server" autogeneratecolumns="False">

2。)如果您希望从标记端绑定,则必须删除c#代码以绑定网格。

如果超过2个步骤不感兴趣,请尝试以下技巧(推荐??)

GdvOrganization.DataSource = ds;
GdvOrganization.DataSourceID = String.Empty;
GdvOrganization.DataBind();