实体框架配置问题(EF Code-First)

发布于 2024-11-19 17:20:01 字数 178 浏览 1 评论 0原文

我对以下模型使用每个层次结构的表:

故事(基类) - 个人故事(子类) - 团队故事(子类)

我在表中列了我想要在两个派生类型之间共享的列,但我想在每个类中以不同的方式命名它。这可能吗?我尝试了一些不同的事情,但无法让它正确工作(如果需要的话,可以在明天的工作中挖掘出确切的异常)。

谢谢!

I'm using table per hiearchy for the following model:

Story (base class)
- Individual Story (sub class)
- Team Story (sub class)

I column in my table that I want to share between both derived types, but I would like to name it differently in each class. Is this possible? I tried a few different things but could not get it to work out correctly (can dig up the exact exception tomrrow at work if need be).

Thanks!

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

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

发布评论

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

评论(2

你的心境我的脸 2024-11-26 17:20:01

不,这是不可能的。该列映射到基类中的属性,并且该属性是在子类中派生的。您无法更改派生类中的属性名称,并且 EF 不允许在派生类中映射共享属性(它们必须在基类中映射)。

No it is not possible. The column is mapped to property in the base class and this property is derived in sub classes. You cannot change the name of property in derived class and EF doesn't allow mapping shared properties in derived classes (they must be mapped in the base class).

夏日落 2024-11-26 17:20:01

如果通过“共享”,您的意思是您希望两个子类都使用该数据库字段(但不是基类),只是名称不同,那么只要它不是鉴别器列,就应该可以工作。只需在每个子类型上创建标量属性并将适当的属性映射到公共字段即可。

If by "share", you mean that you'd like both subclasses to use that database field (but NOT the base class) just with different names, that should work as long as it's not the discriminator column. Just create scalar properties on each subtype and map the appropriate property to the common field.

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