如何读取DBML文件并将其映射到.NET中的对象模型?

时间:2009-11-11 16:54:22

标签: linq code-generation object-model sqlmetal

我打算编写代码生成器来生成UI(表单,网格等)。由于我正在使用LINQ,我计划读取DBML文件以进行元数据提取。是否有一些API来读取DBML对象模型(数据库,表,列和关联)?

我已使用Red Gate Software.NET Reflector打开了SQLMetal.exe。它包含一个名为LinqToSqlShared.DbmlObjectModel的命名空间,它似乎包含了读取DBML对象模型所需的一切。坏消息是:该命名空间不会暴露给外部消费,所有类都被声明为“朋友”(或密封)。

再一次,是否存在某些内容,例如LinqToSqlShared.DbmlObjectModel命名空间,将DBML读取到.NET中的对象模型。或者我必须自己写吗?

2 个答案:

答案 0 :(得分:1)

了解如何在L2ST4项目中阅读模型。您可以重复使用T4文件。

答案 1 :(得分:0)

查看Reegenerator之类的工具。我们正在考虑将其作为L2S代码生成器的替代品,因为我们有一些特定的代码生成要求。