首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Entity 中怎么使类的字段不用到数据库映射

2012-12-19 
Entity 中如何使类的字段不用到数据库映射 public string _state { get set } 如何将这个字段不使用到数

Entity 中如何使类的字段不用到数据库映射
 public string _state { get; set; } 如何将这个字段不使用到数据库的字段对应

目的是解决ExtJs返回的JSON

[{
"UserID":"1",
"Account":"admin",
"Password":"admin",
"UserCName":"admin",
"UserEName":"admin",
"Email":"admin@888.com",
"Telephone":"22222222",
"Mobile":"15899999",
"DepartID":"634579187802656250",
"Sex":1,
"BirthDay":"2011-11-16",
"JobNumber":"0001",
"Address":null,
"Position":null,
"LastLoginTime":null,
"LastLoginIP":null,
"IsEnable":true,
"IsDelete":false,
"IsOnline":false,
"Remark":null,
"Creator":null,
"CreateTime":"2012-08-24",
"_uid":0,"_index":0,                    这是多的。
"RoleID":"634580260901093750",
"_state":"modified"                     这是更新ExtJs的Grid的状态
}]

在操作ExtJs的Grid的时候会多同2个字段来判断操作。
[解决办法]
页面建一个Hidden控件 ID为GridData
给GridData赋值
#{GridData}.setValue(Ext.encode(GridPandel1.getRowsValues(false)));

后台获取代码
 List<Model.User> list = JsonMapper.ToObject<List<Model.User>>(GridData.Value.ToString());

foreach (Model.User user in list)
{
}
Model.User里把你上面那些加进去
如:

 public class User
{//最好用objest类型
public object UserID{ get; set; }
public object Account{ get; set; }
...
}
[解决办法]
页面建一个Hidden控件 ID为GridData
给GridData赋值
#{GridData}.setValue(Ext.encode(GridPandel1.getRowsValues(false)));

后台获取代码
 List<Model.User> list = JsonMapper.ToObject<List<Model.User>>(GridData.Value.ToString());

foreach (Model.User user in list)
{
}
Model.User里把你上面那些加进去
如:

 public class User
{//最好用objest类型
public object UserID{ get; set; }
public object Account{ get; set; }
...
}
[解决办法]
页面建一个Hidden控件 ID为GridData
给GridData赋值
#{GridData}.setValue(Ext.encode(GridPandel1.getRowsValues(false)));

后台获取代码
 List<Model.User> list = JsonMapper.ToObject<List<Model.User>>(GridData.Value.ToString());

foreach (Model.User user in list)
{
}
Model.User里把你上面那些加进去
如:

 public class User
{//最好用objest类型
public object UserID{ get; set; }
public object Account{ get; set; }
...
}
[解决办法]
没看懂我的意思哦,根据"_state":"modified" 这是更新ExtJs的Grid的状态 来做添加,修改,删除的操和,而这个值不是反序列类的属性,反序列后得不到这个值。有没有更好的方法需要2次反序列,一次到位。
[解决办法]
你返回的JSON不是有_state这个属性吗?
你只要判断_state这个值就可以了啊
if(model._state=="add")
{}
else if (model._state=="delete")
{}
难度你就不能在里加个public object _state{ get; set; }这个吗


如果你使用的是ext.net就更简单了
  BLL.Roles bll = new BLL.Roles();   
             ChangeRecords<Model.Roles> persons = e.DataHandler.ObjectData<Model.Roles>();


             foreach (Model.Roles updated in persons.Updated)
            {
                if (updated.rolename.Trim().Length <= 0) continue;
                try
                {
                    if (bll.Update(updated))
                        X.Msg.Notify("成功", "<font color='green'>角色信息更新成功!</font>").Show();
                }
                catch
                {
                    X.Msg.Notify("失败", "<font color='red'>角色信息更新失败!</font>").Show();
                }
            }
             foreach (Model.Roles inserted in persons.Created)
            {
                if (inserted.rolename.Trim().Length <= 0) continue;
                try
                {
                    inserted.roleno = (DateTime.Now.ToString("yyMMddHHmmss")).ToString();
                    if (bll.Add(inserted)>0)
                        X.Msg.Notify("成功", "<font color='green'>角色添加成功!</font>").Show();
                }
                catch { X.Msg.Notify("失败", "<font color='red'>角色添加失败!</font>").Show(); }
            }
             foreach (Model.Roles deleted in persons.Deleted)
             {
                 if (deleted.rolename.Trim().Length <= 0) continue;
                 try
                 {
                     deleted.roleno = (DateTime.Now.ToString("yyMMddHHmmss")).ToString();


                     if (bll.Delete(deleted.roleid) ==true)
                         X.Msg.Notify("成功", "<font color='green'>角色删除成功!</font>").Show();
                 }
                 catch { X.Msg.Notify("失败", "<font color='red'>角色删除失败!</font>").Show(); }
             }
            e.Cancel = true;
[解决办法]
问题我不想用Ext.Net,那个速度我不能接收~
[解决办法]
问题我不想用Ext.Net,那个速度我不能接收~
[解决办法]
问题我不想用Ext.Net,那个速度我不能接收~

热点排行