フィールドを最後に入力した値に事前設定する必要があります。値を静的に保存しているSave()
ので、次に新しい入力フォームが作成されたときに、フィールドをその値に設定したいと思います。
最後のステップを取得できません...エンティティが既に接続されているというエンティティエラーが発生します。
フィールドの値を設定するにはどうすればよいですか?
フィールドを最後に入力した値に事前設定する必要があります。値を静的に保存しているSave()
ので、次に新しい入力フォームが作成されたときに、フィールドをその値に設定したいと思います。
最後のステップを取得できません...エンティティが既に接続されているというエンティティエラーが発生します。
フィールドの値を設定するにはどうすればよいですか?
データテーブルのCreatedイベントでデフォルト値を設定する必要があります。Changedイベントの最後の値をキャプチャします-これにより、現在のユーザーがフィールドに対して行ったすべての変更がキャプチャされます。これは、デフォルトの価格をユーザーが入力した最後の価格に設定する「ウィジェット」と呼ばれるエンティティを使用した例です。
public partial class Widget
{
private static decimal LastWidgetPrice;
partial void Widget_Created()
{
Price = LastWidgetPrice;
}
partial void Price_Changed()
{
LastWidgetPrice = Price;
}
}
これらのイベントはサーバーで発生し、Createdイベントはクライアントで発生するため、InsertingまたはUpdateingイベントの値をキャプチャできないことに注意してください。Changedイベントはクライアントコードで発生するため、そのイベントを使用して、最後に入力された値をキャプチャできます。
CreatedイベントとChangedイベントは、エンティティデザイナ(つまり、テーブルデザイナ)の[書き込みコード]ドロップダウンを使用して作成できます。