0

我需要将字段预先设置为最后输入的值。我将值保存Save()到静态,然后我想在下次创建新的输入表单时将该字段设置为该值。

我无法完成最后一步...我收到实体错误,指出实体已附加。

如何设置字段的值?

4

1 回答 1

1

您应该在数据表的 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 下拉菜单来创建。

于 2011-09-11T06:32:17.467 回答