【问题标题】:Creating partial class in C#在 C# 中创建部分类
【发布时间】:2011-02-15 18:22:25
【问题描述】:

我是一名学生,我不知道partial class 是什么。以下代码属于部分类

我自动创建了部分类:

public partial class EGUI: Form
{     
    private OleDbConnection dbConn;   // Connectionn object
    private OleDbCommand dbCmd;       // Command object
    private OleDbDataReader dbReader; // Data Reader object
    private Emp Edetails;
    private string sConnection;
    private string sql;
}

【问题讨论】:

    标签: c# partial-classes


    【解决方案1】:

    这是确定的答案:http://msdn.microsoft.com/en-us/library/wa80x488(v=vs.80).aspx

    可以拆分定义 一个类或一个结构,或一个 接口超过两个或多个源 文件。每个源文件包含一个 类定义的部分,和 所有部分都结合在一起时 应用程序已编译。

    【讨论】:

      【解决方案2】:

      首先,这是:http://msdn.microsoft.com/en-us/library/wa80x488(v=vs.80).aspx

      其次,它允许程序员将特定的代码片段收集到两个不同的文件中。一个非常好的例子是创建 ASP.NET WebForm 时。 WebForm 将为您的事件处理程序等(Button_Click 等)提供一个文件,然后您将拥有一个额外的文件,其中包含您在页面上使用的 ASP.NET 控件的声明。这会将您关心的代码保存在一个文件中,而将更明显的“自动生成”内容保存在另一个文件中。

      如果我错了,请纠正我,但我也相信部分类可能允许您执行类似于“猴子补丁”的操作,因为它以这样一种方式公开类,您可以添加新方法、变量等并获得访问权限到类的私人成员。

      【讨论】:

      • 是的,ASP.NET 正是以这种方式使用 .Designer 文件。然后是在“部分”文件之一中添加基类(如果尚未定义)的“技巧”,或者添加一个或两个接口作为基类型......和/或添加抽象关键词。甚至还有另一个技巧……“空”方法。类似于: void MyMethod();你可以从部分文件中调用它,如果它没有在其他文件中定义,它就会被跳过。
      【解决方案3】:

      partial class 是一个类,它的定义可以在同一项目/程序集中的不同文件中拆分。例如,Visual Studio 窗体设计器广泛使用此功能,以便将您放置在窗体上的设计时控件与实际代码分开,并且一旦项目被编译,两个源文件就会合并以生成生成的类。

      【讨论】:

        【解决方案4】:

        看看这个。有一个关于部分类和部分方法的简单示例供初学者使用。

        http://w3mentor.com/learn/asp-dot-net-c-sharp/object-oriented-concepts-c-sharp/partial-class-and-partial-method-in-c/

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2018-09-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-09-14
          • 1970-01-01
          相关资源
          最近更新 更多