繁体   English   中英

CodeFluent Force更新数据库记录

[英]CodeFluent Force Update a Database Record

我有以下简化的C#代码,使用CodeFluent方法更新ID为“ 1”的记录:

CFEObject anObject = new CFEObject();
anObject.ID = 1; //ID is the primary key, and an Identity Column
anObject.Name = "New Name";
anObject.Save();

上面代码的问题是它不会更新ID为1的对象。而是,它获取下一个ID并创建一个新记录,而不是对现有记录进行编辑。

我意识到,通过使用“ LoadById”方法加载CFE对象可以解决上述问题,但是我无法使用它,因为我没有ID,直到稍后已经设置了值为止。 因此,当我使用“ LoadById”时,它将擦除我现有的设置属性。

我如何能够不使用LoadById方法而强制其更新ID为“ 1”的CFE记录?

Save方法调用生成的存储过程。 您可以检查该存储过程的代码,以了解为什么它创建新记录而不是更新现有记录。

默认情况下,开放式并发处于启用状态。 在这种模式下,您需要在更新实例之前设置RowVersion属性。 如果该值为null ,则存储过程将创建一个新记录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM