ASPxGridView - 当我提交更改时,我总是在一次编辑之前看到它们

时间:2013-04-10 07:43:22

标签: asp.net webforms devexpress aspxgridview

我的WebForms页面上有一个GridView问题。我希望也许你可以帮助我。

我有一个由LinqDataSource通过实体框架绑定到SQL Server视图的网格。 View基本上聚合了其中一个表的数据。在我的页面上,我允许对该表进行一些更改,我在不同的上下文中使用Entity Framework进行更新。问题是在PostBack之后我总是看到之前编辑的变化。

例如: 我有价值“马修”的实体。 我编辑为“约翰” - > postback =>我看到“马修”。 我编辑为“Mick” - > postback =>我看到“约翰”。

我尝试禁用网格的视图状态和行缓存 - 但没有成功。

我很感激任何建议。

谢谢!

                <p>
                <asp:LinqDataSource ID="LinqDataSource1" runat="server" ContextTypeName="WebApplication2.Database1Entities" EntityTypeName="" TableName="Clients">
                </asp:LinqDataSource>
                <dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False" DataSourceID="LinqDataSource1" KeyFieldName="id" EnableRowsCache="False">
                    <Columns>
                        <dx:GridViewDataTextColumn FieldName="id" VisibleIndex="0">
                        </dx:GridViewDataTextColumn>
                        <dx:GridViewDataTextColumn FieldName="name" VisibleIndex="1">
                        </dx:GridViewDataTextColumn>
                    </Columns>
                </dx:ASPxGridView>
            </p>
            <p>
                <dx:ASPxTextBox ID="ASPxTextBox1" runat="server" Width="170px">
                </dx:ASPxTextBox>
                <dx:ASPxButton ID="ASPxButton1" runat="server" Text="ASPxButton" OnClick="ASPxButton1_Click">
                </dx:ASPxButton>
            </p>


    protected void ASPxButton1_Click(object sender, EventArgs e)
            {
                var ent = new Database1Entities();
                var itemToUpdate = ent.Clients.FirstOrDefault(p => p.id == 1);
                itemToUpdate.name = ASPxTextBox1.Text;
                ent.SaveChanges();
        }

1 个答案:

答案 0 :(得分:0)

马修,

我建议您使用ASPxGridView的编辑事件。看一下这个例子:

这是Code Central示例,因此您可以下载整个解决方案并在本地运行:

如果仍然没有帮助,请联系DevExpress支持团队,他们可以帮助您: DevExpress Support