【问题标题】:LINQ to SQL Classes implementing an interface实现接口的 LINQ to SQL 类
【发布时间】:2012-01-05 20:57:23
【问题描述】:

我正在使用 LINQ to SQL (O/R) 设计器为应用程序设计数据模型,我想知道:是否可以让(许多)类实现接口或基类并将实现的字段值存储在数据库?

我的大多数类(如果不是全部)都需要存储描述对象元数据的公共字段,例如对象的创建时间和创建者、对象是否被删除以及上次修改的时间......理想情况下,这些字段只进入数据库中实现类表的列中。

我知道在 .dbml 文件中指定全局基类或接口的选项,但这不是很优雅,因为我会有一些不实现接口的 L2S 类。

我知道使用 NHibernate 之类的东西很容易做到这一点。我只是想看看是否有办法用 LINQ to SQL 以一种优雅的方式做到这一点。

任何指针?

【问题讨论】:

    标签: c# linq linq-to-sql interface or-designer


    【解决方案1】:

    是的,这是可能的。只需添加带有部分对应类的单独代码文件并在那里实现您的接口。

    【讨论】:

    • 我是否必须指定任何属性才能让 L2S 看到它们是需要进入数据库的字段?
    • 是的。从任何现有数据库创建模型并查看自动生成的属性。您将很快发现那里发生了什么,并能够在您自己的课程中重现它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多