我们可以使用SQLMetal Objectmodel作为应用程序对象模型吗?

本文关键字:应用程序 对象模型 可以使 SQLMetal Objectmodel 我们 | 更新日期: 2023-09-27 18:12:03

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

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

sqlmetal/code:ps.cs/server:devapp042db/数据库:promotionalsponsorship/命名空间:木豆

它创建了一个"LINQ to SQL SQLMEtal"对象模型。这不是我们的常规课程。它有很多自动生成的代码,就像LINQ/EF一样,有很多自动生成的属性和方法。

我已经使用了像Dapper和来自Service stack的ORMLite这样的Micro orm,它们的美妙之处在于它可以与我们创建的简单对象模型一起工作,而不是自动生成自己的对象模型。

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

为了澄清我的观点,下面是我所谓的SQL金属类和一个简单的模型类的示例

我们可以使用SQLMetal Objectmodel作为应用程序对象模型吗?

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

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

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