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