0

次のシナリオがあります。

私のページの以下の2つのグローバル変数:

MainContext db = new MainContext();
User user = new User();

ボタンの更新時に呼び出されるプロパティを入力するメソッド:

private void FillProperties()
        {
            user.FirstName = txtFirstName.Text;
            user.LastName = txtLastName.Text;
            user.Email = txtEmail.Text;
        }

ボタンの更新で私は次のことをしています:

FillProperties();
user.ID = Request.QueryString("userid");
db.SaveChanges();

しかし、レコードは更新されていません。これは、ユーザー変数がdbオブジェクトに関連付けられていないため、論理的だと思いますが、ia、これを行うことはできません。

db.Users.AddObject(user);

AddObjectがdbプロパティに見つからないため。

ユーザーを更新するにはどうすればよいですか?

あなたの答えは大歓迎です。

4

2 に答える 2

1

DbContext APIを使用している場合は、単に

db.Entry(user).State = EntityState.Modified;
于 2012-04-25T09:55:49.710 に答える
0

DBのどこにユーザーを追加しますか?
ユーザーがDBに存在する場合、それを更新するには、次のようにする必要があります。

user = db.Users.Where(x => x.ID == Request.QueryString("userid")).Single();
FillProperties();
db.SaveChanges();
于 2012-04-25T10:22:12.287 に答える