实体框架 DBContext 数据绑定问题

发布于 2024-12-21 17:38:05 字数 449 浏览 2 评论 0原文

使用 VS2010、C#、Winforms 和 Entity Framework 4.1

这是我的代码

var order = dbContext.Orders.Where(o=>o.OrderId == 1).Single();
var orderDetails = order.OrderDetails.ToList():

textBox1.Bindings.Add("Text", order, "OrderAmount");
gridView.DataSource = orderDetails;

我有以下关于 Entity Framework 4.1 的两个问题

  1. 如果我更新实体属性,新值不会反映到 UI。

  2. 我想向实体属性设置器添加逻辑;但每次更新模型时它都会被重写。

谢谢。

Using VS2010, C#, Winforms and Entity Framework 4.1

Here is my code

var order = dbContext.Orders.Where(o=>o.OrderId == 1).Single();
var orderDetails = order.OrderDetails.ToList():

textBox1.Bindings.Add("Text", order, "OrderAmount");
gridView.DataSource = orderDetails;

I have following two questions about Entity Framework 4.1

  1. If I update an entity property, the new value is not reflected to the UI.

  2. I want to add logic to an entity property setter; but it gets rewritten each time the model is updated.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

柠檬色的秋千 2024-12-28 17:38:05

关于第二个问题。
类的自动更新是模型首先工作的方式。
您可以阅读 EF 4.1 代码优先与模型/数据库优先了解更多信息。

有时修改 T4 模板会很方便。但我不建议更改 getter/setter。相反,添加一些数据注释属性可能会很有用。您可以在 MSDN 上阅读如何使用它:
使用数据注释自定义数据类
如何:使用 DataAnnotations 属性验证模型数据

About the second question.

Automatic updating of classes is how the model first works.
You can read EF 4.1 Code-first vs Model/Database-first for more information.

Sometimes it's convenient to modify the T4 template. But I don't recommend to change getters/setters. Instead adding some dataannotations attributes could be useful. You can read how to use it on MSDN:
Using Data Annotations to Customize Data Classes
How to: Validate Model Data Using DataAnnotations Attributes

碍人泪离人颜 2024-12-28 17:38:05

内使用 on 属性更改;

在数据绑定textBox1.DataBindings.Add("Text",order,"OrderAmount",true,System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged)

use the on property change inside of the databinding

textBox1.DataBindings.Add("Text",order,"OrderAmount",true,System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged);

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文