【问题标题】:How can I start to create my own code generator to produce Entity objects?如何开始创建自己的代码生成器来生成实体对象?
【发布时间】:2016-08-05 04:05:41
【问题描述】:

我正在分析一个具有 2 个库的 c# 系统:业务层和数据层访问。

业务库有:

    1 BaseManager.cs class
    Several Managers (ClientManager.cs, ContactManager.cs, etc).

    1 BaseEntity.cs class
    Several Entities(Client.cs, Contact.cs, etc)

    1 NotifyPropertyChange.cs  class 

数据访问层有:

    1 BaseData.cs class
    Several data objects (ClientDatasql.cs, ContactDataSql, etc)

    Several interfaces (IClientData.cs,IContactData.cs, etc)

    1 Class called DataFactory.cs

库中的所有类都是部分的,例如

Client.cs, Client.Generated.cs
ContactManager.cs, ContactManagerGenerated.cs   
BaseData.cs, Basedata.Generated.cs
Etc.

所有这些类都是用代码生成器生成的,这个代码生成器是由我工作场所的某个人编写的。使用的方法是“数据库优先”,实体框架没有这样做。

我的问题是:

我如何开始创建自己的代码生成器以生成那种类?

有什么工具可以帮助我做到这一点吗? 还是我应该从头开始写? 我应该开始阅读什么样的主题?

提前致谢。

【问题讨论】:

    标签: c# entity generator


    【解决方案1】:

    如果您首先确切地查看实体框架是什么以及它提供了什么,这可能是一个好主意。

    当我遇到 EF 问题时,我最喜欢的起点通常是 msdn.microsoft.com/ef

    在您的具体情况下,EF 支持称为 Database First 的工作流,其中现有数据库用于将要使用的实体的基础。有许多可用的工具可以获取数据库并从中生成实体类。 Here 是一个基本示例。

    【讨论】:

      猜你喜欢
      • 2010-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多