关于partial class的小例子

ET框架的配置模块用到了partial class语法,顾名思义,可以叫部分类或者不完全的类,即同名的多个partial class会视为同一个类对象。一般在不想更改本体内容的情况下又想额外增加内容,比如ET配置StartSceneConfigCategory : ProtoObject和StartSceneConfig:ProtoObject,IConfig由转表工具自动生成内容,而部分配置除了默认属性和方法,还需要额外增加内容,又不想破坏默认内容格式的统一风格,于是使用partial class进行扩展。这种思路让我想起了扩展方法的使用,似乎有些类似,只是扩展方法会有个主体,而partial class是平行关系。

using System;

namespace Test_CSharp
{
    class Program
    {
        static void Main()
        {
            PulClass pulClass = new PulClass();
            pulClass.ID = 1;
            pulClass.Name = "PulClass";
        }
    }

    public partial class PulClass
    {
        public int ID { get; set; }
    }

    public partial class PulClass
    {
        public string Name { get; set; }
    }
}
posted @ 2021-11-18 20:52  qianxun0975  阅读(170)  评论(0编辑  收藏  举报