none
求LINQ修改数据库数据最有效率的实现方案 RRS feed

  • 问题

  • 我具体的项目是这样的:在silverlight中添加一个DataGrid通过调用WCF返回一个ObservableCollection<MyClass>赋给DataGrid的itemsSource属性。

    而WCF中则利用ObservableCollection<MyClass> data=new ObservableCollection<MyClass> (); var result=from v in database.TableName select v;  再将result中的每条记录内容逐个赋给一个MyClass对象加入ObservableCollection<MyClass> 。

    问题来了……

    当ObservableCollection<MyClass>中的数据改变而根据它更新数据库的话岂不是要将ObservableCollection<MyClass>与result逐条对比,如果只修改了几条记录却要对整个表的大量数据进行操作效率会不会很低?

    总之,我的思路是silverlight调用WCF对数据库进行修改,到底怎样实现才最有效率?

    2012年3月17日 14:22

答案

  • 您好,一般您修改几条数据并返回给数据库时,数据库会根据您返回的修改后的实体主键进行查询并修改这些数据表记录,数据表的主键在数据库中都是有建立索引的,不会很慢的。


    Allen Li [MSFT]
    MSDN Community Support | Feedback to us

    2012年3月19日 5:47
    版主