我需要将字段预先设置为最后输入的值。我将值保存Save()
到静态,然后我想在下次创建新的输入表单时将该字段设置为该值。
我无法完成最后一步...我收到实体错误,指出实体已附加。
如何设置字段的值?
我需要将字段预先设置为最后输入的值。我将值保存Save()
到静态,然后我想在下次创建新的输入表单时将该字段设置为该值。
我无法完成最后一步...我收到实体错误,指出实体已附加。
如何设置字段的值?
您应该在数据表的 Created 事件中设置默认值。捕获 Changed 事件中的最后一个值 - 这将捕获当前用户对该字段所做的每一个更改。这是一个使用名为“Widget”的实体的示例,它将默认价格设置为用户输入的最后一个价格:
public partial class Widget
{
private static decimal LastWidgetPrice;
partial void Widget_Created()
{
Price = LastWidgetPrice;
}
partial void Price_Changed()
{
LastWidgetPrice = Price;
}
}
请注意,您无法捕获 Inserting 或 Updating 事件中的值,因为这些事件发生在服务器上,而 Created 事件发生在客户端上。由于 Changed 事件发生在客户端代码中,我们可以使用该事件来捕获最后输入的值。
Created 和 Changed 事件可以使用实体设计器(即表设计器)上的 WriteCode 下拉菜单来创建。