我应该使用什么样的自动化方法来创建和维护许多类似的POCO和DTO?

时间:2017-03-31 14:50:59

标签: c# xamarin entity-framework-6 visual-studio-2017 azure-table-storage

我需要维护几个类似的文件,内容相似,但每个目的略有不同,例如

  • 查看(ASP.net,Xamarin.Forms等)
  • ViewModel(按字段验证)
  • 实体框架代码第一类
  • NoSQL类iOS CloudKit,Azure表

其中一些需要特殊实现(INotifyPropertyChanged,Rx),或者其他需要从抽象类继承。

问题

  • 是否存在允许对几个类似文件进行集中管理/属性传播的DTO自动化(或模式描述语言)?

也许我可以扩展visual studio来在后台运行一个脚本来维护文件,并提醒我任何不一致的内容

2 个答案:

答案 0 :(得分:0)

实体框架已经为此目的使用了T4模板,并且没有什么能阻止您扩展该机制以生成每个类的多个副本,每个类都针对特定目的而定制。您可能希望为每种类型的代码生成配置一些规则和覆盖,并且可能为每种实体类型配置,但由于它只是代码,您基本上可以执行任何您想要的操作。

答案 1 :(得分:0)

您可以使用JSON,XML或其他任何内容定义类配置的“组”。 然后,您可以使用T4模板来读取此配置,并为每个组生成几个类似的类。

这将在保存和\或构建时发生。