Shy*_*yju 6 c# inheritance constructor
我试图弄清楚当我调用派生类构造函数时如何调用基类构造函数.
我有一个名为"AdditionalAttachment"类,这是从System.Net.Mail.Attachment.I继承增加了2个属性,我的新类,这样我可以与我的新特性有现有的附件类的所有属性
public class AdditionalAttachment: Attachment
{
[DataMember]
public string AttachmentURL
{
set;
get;
}
[DataMember]
public string DisplayName
{
set;
get;
}
}
Run Code Online (Sandbox Code Playgroud)
之前我曾经创建过类似的构造函数
// objMs是一个MemoryStream对象
Attachment objAttachment = new Attachment(objMs, "somename.pdf")
Run Code Online (Sandbox Code Playgroud)
我想知道如何为我的类创建相同类型的构造函数,它将执行与基类的上述构造函数相同的操作
Mar*_*ius 13
这会将您的参数传递给基类的构造函数:
public AdditionalAttachment(MemoryStream objMs, string displayName) : base(objMs, displayName)
{
// and you can do anything you want additionally
// here (the base class's constructor will have
// already done its work by the time you get here)
}
Run Code Online (Sandbox Code Playgroud)
您可以编写一个调用类基构造函数的构造函数:
public AdditionalAttachment(MemoryStream objMs, string filename)
: base(objMs, filename)
{
}
Run Code Online (Sandbox Code Playgroud)
使用此功能:
public AdditionalAttachment(MemoryStream ms, string name, etc...)
: base(ms, name)
{
}
Run Code Online (Sandbox Code Playgroud)