传入模型,
从数据库获取订单模型,
然后根据自定义模型修改订单模型.
最后保存
保存最后返回的int 值是0
请问怎么让EF框架把我修改的这个模型传入数据库?
5 个解决方案
#1
返回0不代表不成功。它采用的是异常机制,如果失败了会抛出异常。
而返回值,不同的数据库是不一样的,只能作为参考。像mysql就可能返回0
而返回值,不同的数据库是不一样的,只能作为参考。像mysql就可能返回0
#2
返回0的意思是未更改任何数据把.
我的问题解决了
orders o = eqida.orders.First(name => name.orderno == model.ordersId);
o.status = model.status;
eqida.orders.Attach(o);
eqida.Entry(o).State = System.Data.Entity.EntityState.Modified;
把改实体模型状态改为,未更新
#3
如果有下面的这种立即更新方式,可能会更直观:
可以试试这个框架 http://pwmis.codeplex.com
orders o=new orders();
o.orderno= model.ordersId;
o.num=model.num.ToString();
o.status= model.status;
int i= OQL.From(o)
.Update(o.num,o.status)
.Where(o.orderno)
.END
.Execute();
可以试试这个框架 http://pwmis.codeplex.com
#4
你说的是对的。另外第三句Attach可以不要
#5
你是重庆亿奇达科技的吧。
#1
返回0不代表不成功。它采用的是异常机制,如果失败了会抛出异常。
而返回值,不同的数据库是不一样的,只能作为参考。像mysql就可能返回0
而返回值,不同的数据库是不一样的,只能作为参考。像mysql就可能返回0
#2
返回0不代表不成功。它采用的是异常机制,如果失败了会抛出异常。
而返回值,不同的数据库是不一样的,只能作为参考。像mysql就可能返回0
返回0的意思是未更改任何数据把.
我的问题解决了
orders o = eqida.orders.First(name => name.orderno == model.ordersId);
o.status = model.status;
eqida.orders.Attach(o);
eqida.Entry(o).State = System.Data.Entity.EntityState.Modified;
把改实体模型状态改为,未更新
#3
如果有下面的这种立即更新方式,可能会更直观:
可以试试这个框架 http://pwmis.codeplex.com
orders o=new orders();
o.orderno= model.ordersId;
o.num=model.num.ToString();
o.status= model.status;
int i= OQL.From(o)
.Update(o.num,o.status)
.Where(o.orderno)
.END
.Execute();
可以试试这个框架 http://pwmis.codeplex.com
#4
返回0不代表不成功。它采用的是异常机制,如果失败了会抛出异常。
而返回值,不同的数据库是不一样的,只能作为参考。像mysql就可能返回0
返回0的意思是未更改任何数据把.
我的问题解决了
orders o = eqida.orders.First(name => name.orderno == model.ordersId);
o.status = model.status;
eqida.orders.Attach(o);
eqida.Entry(o).State = System.Data.Entity.EntityState.Modified;
把改实体模型状态改为,未更新
你说的是对的。另外第三句Attach可以不要
#5
你是重庆亿奇达科技的吧。