我可以让我的持久层对象实现一个使用 enum 的接口,并隐式转换为 int 吗?

发布于 2024-08-21 13:23:55 字数 240 浏览 5 评论 0原文

我有一个域接口

public interface ITicket
{
...
TicketWorkflowStatus StatusId{get;set;} // Enum
}

,但数据库上的 linq-to-sql 持久层想要使用 int,我可以在 dbml 中更改它,以便本地类型为 TicketWorkflowStatus ?我有什么选择?

I have a domain interface

public interface ITicket
{
...
TicketWorkflowStatus StatusId{get;set;} // Enum
}

but the linq-to-sql persistance layer on the database wants to use int, can I change it in the dbml so that the local type is TicketWorkflowStatus? What are my options?

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

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

发布评论

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

评论(1

世界等同你 2024-08-28 13:23:55

域应该与持久性基础设施分离,并且没有任何借口该基础设施可以在对域模型进行建模时强制做出这样的决策。

在你的情况下,它是外部耦合。

经验告诉我们——一旦你开始为你的 ORM 提供太多服务,它很快就会让你屈服。

Domain is supposed to be detached from persistence infrastructure and there are no excuses that this infrastructure can force such a decisions when modeling Your domain model.

In Your case it's external coupling.

Telling from experience - once You start to serve too much to Your ORM, it will bring down You to knees in no time.

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