插入/更新后重新加载触发器在数据库中修改的字段值

发布于 2024-10-27 02:10:00 字数 350 浏览 1 评论 0原文

我有一个实体,其字符串属性映射到数据库中的 nvarchar 字段。我使用插入/更新后触发器来设置该字段的值。默认情况下,EF 在插入/更新后不会加载该字段的值 - 仅在插入后从 DB 重新加载标识字段。

我尝试将此字段上的 StoreGeneratePattern 选项更改为 Compulated (这似乎是正确的方法),但出现错误:

商店生成的模式“已计算” 不支持以下属性 不是“时间戳”类型或 '行版本'。

这是否意味着 EF 仅支持重新加载时间戳? 如何强制 EF 加载其他类型列的值?

I have an entity with a string property mapped to a nvarchar field in the DB. I use an after insert/update trigger to set the value of this field. By default EF will not load the value of this field after insert/update - only identity fields are reloaded from DB after insert.

I've tried to change the StoreGeneratedPattern option on this field to Computed (which seems like the right way to do that) but I get the error:

The store generated pattern 'Computed'
is not supported for properties that
are not of type 'timestamp' or
'rowversion'.

Does it mean that EF supports reloading only timestamps?
How can I force EF to load the values of columns of other types?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

時窥 2024-11-03 02:10:00

我认为这是一个错误。我刚刚重现了此行为并 发布向 MSDN 论坛提问。当首先使用 EDMX 和模型时,这可以正常工作。

I think it is a bug. I just reproduced this behavior and posted a question to MSDN forum. This works without any problem when using EDMX and model first.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文