如何在TT文件中不需要将ICollection替换为ObservableCollection?

Kon*_*ten 6 c# collections entity-framework data-modeling observablecollection

每次我用EF创建一个新的数据模型时,我都必须输入TT文件并替换每次出现的ICollection和第一次出现的HashSet for ObservableCollection以及名称空间Generic for ObjectModel.

这个过程在互联网上进行了描述(" 延迟加载 "部分正上方的项目符号列表),对于新技术的缺点似乎是一种愚蠢的解决方法,随着时间的推移应该得到补救而不是必需的.

是否可以自动创建可观察的集合,或者描述的方法是最有效且通常应用的?

g.p*_*dou 3

我认为根据您的需要定制 .TT 模板是一种可以接受的(或者更多:最佳)做法。唯一的问题是,重复/手动执行此自定义过程创建您自己的 .TT 并将其安装为Visual Studio Item Template。我投票给第二个选项,这是DRY的一个小应用。

但是,您需要做好面对缺点的准备:当原始 .TT 项目模板发生更改(新版本等)时,您也应该将这些更改应用到自定义模板上。最简单的方法:比较,然后选择最有效的方法:在自定义模板上复制版本更改在新版本上重新应用自定义更改。