0

グリッド内のアイテムを更新した後に呼び出されるメソッドがあります:

public void GridView1_UpdateItem(int noteId)
{
    Notes itemToEdit = context.Notes.FirstOrDefault(x => x.NoteId == noteId);
    Notes originalItem = context.Notes.FirstOrDefault(x => x.NoteId == noteId);

    TryUpdateModel(itemToEdit); //it should update only object itemToEdit
}

TryUpdateModel(itemToEdit)オブジェクト originalItem も更新するのはなぜですか? オブジェクト originalItem にはフォームからの新しい値がありますが、古い値を持つ必要があります。

4

1 に答える 1

0

更新関数が古い値を取得していることが、Page.IsPostBackプロパティをPage_Load同じように使用していない理由である可能性があります

protected void Page_Load(object sender, EventArgs e)
    {

        if (!Page.IsPostBack)
        {
        // Your code..
        }
    }
于 2013-06-12T05:12:23.003 に答える