我有自动生成的局部类,例如:
public partial class MyEntity { ... }
我使用
MyEntity.partial.cs
文件扩展了部分类。我想避免自动生成的MyEntity消失或重命名但自定义的MyEntity.partial.cs保留并编译而没有错误的情况。如何确保只能扩展现有的部分类?
最佳答案
我不确定对此是否有好的解决方案。
这是一个解决方案。
让您的自动生成的类包含以下内容:
partial void CompileTimeCheckThatAutoGeneratedPartExists();
然后输入您的每个手写扩展名:
partial void CompileTimeCheckThatAutoGeneratedPartExists()
{
}
注意:自动生成部分中的主体是分号
;
,而扩展部分中的主体是空块{ }
。当自动生成的零件消失,被重命名或移动到另一个
namespace
时,将发生编译时错误。