0

我们的团队刚刚开始使用 Sql Metal,我已经玩了 2 天。在这样做时,我注意到了几件事。

  1. 当我们运行如下命令时

sqlmetal /code:ps.cs /server:devapp042dbs /database:promotionalsponsorship /namespace:DAL

它创建一个“LINQ to SQL SQLMEtal”对象模型。现在,这不是我们的常规课程。它有很多自动生成的代码,它几乎闻起来像 LINQ/EF,有很多自动生成的属性和方法。

我使用了 Service stack 中的 Dapper 和 ORMLite 之类的 Micro ORM,关于这些的有趣之处在于它可以与我们创建的简单对象模型一起使用,而不是自动生成自己的对象模型。

我的问题是,我们可以使用这些 SQLMetal 映射类作为应用程序的模型,还是必须围绕它创建一个简单的包装类,使用它我们可以提取我们需要的所有信息。

为了澄清我的观点,下面是我称之为SQL 金属类简单模型类的示例

4

1 回答 1

1

虽然这个问题可能会被关闭,因为答案是主观的,简短的回答是yes,使用这样的自动生成的类集作为你的模型是完全有效的。有很多以这种方式构建的成功应用程序。

由于这些类是部分的,您甚至可以通过添加自定义属性/方法/事件来扩展您的域模型。

如果您担心自动生成的代码不够干净,请考虑实体框架、nHibernate 或任何其他支持此方案的 ORM的代码优先方法。这样,您就可以从一个干净的 POCO 模型开始,只需定义其到关系结构的映射即可。

于 2015-09-09T18:10:54.590 回答