我们都知道 当DataGridView绑定DataTable时,可以通过DataRow.DataRowState来判断行状态。但是当DataGridView来绑定linq实体时,就找不到行状态了。如
DataGridView.DataSource = List<TEntity>;(有100条数据)在前段DataGridView单元格里更改某行值或增加新行,在后台List<TEntity>里怎样判断那些行实体是被修的改或是增加的。

解决方案 »

  1.   

    用db.TEntity.GetOriginalEntityState(entity)来判断试一试.
      

  2.   


    修改或删除状态怎么找呢。DataGridview绑定DataTable,是可以找到 “没有改变”,“删除”,“修改”,“增加”状态的。用linq实体类就没有状态了,微软这样设计没有道理呀。
      

  3.   

    DataGridView 对数据的修改和增加其实是直接增加或者修改某条数据,然后重新绑定数据的,知道这个,觉得你应该就知道怎么做了,要理解原理
      

  4.   

    linq 的实体类 TEntity代替DataTable总感觉不太舒服。1 实体类没有行状态
    2 设置默认值也没有
      

  5.   

    怎么模仿DataRowState 来写。