有个实体类字段很多,更新记录的时候要一一列出字段然后赋值,有没有方法遍历实体类的字段然后赋值啊
比如
实体类:  table_a  
字段      ab,cd,ef,tt,……
table_a S=NEW table_a();
VAR R=CTX.table_a.FIRST(R=>R.ab==S.ab);
foreach(field F IN table_a )
{IF(f!=ab)
{
R[F]=S[F];
}}

解决方案 »

  1.   

    本帖最后由 caozhy 于 2012-03-09 10:39:46 编辑
      

  2.   

    1.我不反对linq
    2.别啥玩意都往linq上扣
    3.如果是通用集合,你需要的是automap这类的东西自动映射转换代码4.根据你使用的东西,其本身也有相应的合并手段。datatable有merge方法,linq2sql还是EF都有自己对应的合并手段
      

  3.   


    这样只是知道了有什么字段,能支持字段的的访问吗?
    比如
    foreach(field F IN table_a )
    {IF(f!=ab)
    {
    R[F]=S[F];
    }}
    你只是说明了得到所有字段,而不是给字段赋值
      

  4.   

    可以啊。
    var query = from x in obj.GetType().GetPropertites()
                select x.Name;
    foreach (var item in query)
    {
        obj.GetType().SetProperty(obj, xxx, null);
    }