LINQ更新问题
LINQ在执行更新操作时 遇到的问题。
MSDN包括别人的写的更新的例子,都是更新某个对象的某个属性。
这种情况在属性少时或者确定哪个属性更新时才行。
如果 一个类有很多属性,或者不知道哪个属性更新了 怎么办?
要把所有的属性都写一遍么?
我的想法是
在执行更新时 传过来一个对象,
根据这个对象的ID取出数据库的,
然后把 传过来的对象赋值给新取出的对象
最后执行OnsubmitChanges();方法。
但是 却没有更新。
MSDN包括别人的写的更新的例子,都是更新某个对象的某个属性。
这种情况在属性少时或者确定哪个属性更新时才行。
如果 一个类有很多属性,或者不知道哪个属性更新了 怎么办?
要把所有的属性都写一遍么?
我的想法是
在执行更新时 传过来一个对象,
根据这个对象的ID取出数据库的,
然后把 传过来的对象赋值给新取出的对象
最后执行OnsubmitChanges();方法。
但是 却没有更新。
1NorthwindDataContext db = new NorthwindDataContext();
2
3public void Update(Customers c)
4 {
5 //根据ID取出
6 Customers cust = (from cus in db.Customers
7 where cus.CustomerID == c.CustomerID
8 select cus).FirstOrDefault();
9
10 cust = c;
//执行到这个地方时,cust里面的属性已经更改过了
11 db.SubmitChanges();
//但是 提交后 数据库中的值却没有更新
12 }
2
3public void Update(Customers c)
4 {
5 //根据ID取出
6 Customers cust = (from cus in db.Customers
7 where cus.CustomerID == c.CustomerID
8 select cus).FirstOrDefault();
9
10 cust = c;
//执行到这个地方时,cust里面的属性已经更改过了
11 db.SubmitChanges();
//但是 提交后 数据库中的值却没有更新
12 }