2013-12-13 23 views
1

我的应用程序中有一个DateTime列,该列由SQLServer自动计算。它在创建行时效果很好。但是,我希望能够稍后进行更新。我有财产标记[DatabaseGenerated(DatabaseGeneratedOption.Computed)]在实体框架中更新计算列

是否有可能在EF中更新类似的属性?

+0

它是一个计算列或它有一个默认值?你如何计算该栏中的日期? – johnny

+0

来自DB的默认值 – Omar

+0

您可以使用数据注释的替代方法。这个答案可能有所帮助:http://stackoverflow.com/questions/584556/how-to-use-default-column-value-from-database-in-entity-framework – Mike

回答

3

不,DatabaseGeneratedOption.Computed EF永远不会在update和insert语句中包含该属性。相反,在这样的陈述之后,它总是会阅读它的价值。

如果您必须更新客户端代码中的属性,则除了删除数据注释之外,没有其他选择使其成为普通的可更新属性。您可以在拥有的类的构造函数中设置默认值。

+0

现在,我执行一个SQL命令来更新值。 – Omar