问个奇怪的问题。关于ADO.NET的。。关于强类型的DataSet我定义了一个Typed的DataSet. 里面有TypedDataTable 和 Typed DataRow我改变一个 DataRow 的 某个属性值。然后立刻查看里面的 DataRowState 居然发现是 unchanged....因为这样。。后面用DataAdapter更新的时候,每次都更新不了why????? 请问大虾。。
是不是 强类型的东西不能这样做啊?头快晕掉了。。而且在我的vs2003里面 typed datarow的引用,后面打 . 经常没有智能感应出来,但定义还是找的到的typed dataset 是 编译器自动生成的代码,我大致看了以下,没有找到任何会导致 DataRowState 异常的代码阿。

解决方案 »

  1.   

    改DataRow 的 某个属性值?
    你要改变某行的字段值,DataRowState才会变.
      

  2.   

    改变的时候已经结束编辑并且没有调用acceptchanges,状态才会变
      

  3.   

    因为这样。。后面用DataAdapter更新的时候,每次都更新不了
    ------------------------
    說下你更新不了的詳細狀況!比如直接出錯,或沒錯但數據沒變??
      

  4.   

    我就是改变了字段的值啊比如 typeddatarow row;row.ClientID = "xxxxxxxx";row.RowState == ??(居然就是unchanged)上面两句是连在一起的。只有修改不能改变这个属性 。其他的add delete 都相应的改变了这个是为啥阿??是强类型的dataRow的原因吗?天啊,头都快大了,我看参考书都说的和我遇到的不一样。。都明确的说,后面RowState会立刻改变成 Modified..
      

  5.   


    改变的时候已经结束编辑并且没有调用acceptchanges,状态才会变
    可是我没有用 BeginEdit()
    ***
    ***
    ***+ EndEdit()这样的写法阿。。太郁闷了
      

  6.   

    你的typeddatarow如何定义的,在
    row.ClientID = "xxxxxxxx";
    这条语句是如何操作的
      

  7.   

    比如 typeddatarow row;row.ClientID = "xxxxxxxx";//Exception: 未将对象引用设置到对象实例。row.RowState == ??(居然就是unchanged)
      

  8.   

    比如 typeddatarow row;row.ClientID = "xxxxxxxx";//Exception: 未将对象引用设置到对象实例。row.RowState == ??(居然就是unchanged我晕,当然不是空引用错误咯。 快找到问题所在了。好像和控件邦定有关。
      

  9.   

    row.ClientID = 是通过控件来设置值????