作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在WCF中,如何从未标记DataContractAttribute或SerializableAttribute的类继承并将其用作datacontract?
例如:我有一个自定义类,名为“EmailAttachment”,该类是从System.Net.Mail.Attachment继承的:
[DataContract]
public class EmailAttachment : Attachment
{
[DataMember]
public string AttachmentURL
{
set;
get;
}
[DataMember]
public string DisplayName
{
set;
get;
}
}
System.Runtime.Serialization.InvalidDataContractException: Type 'EmailAttachment' cannot inherit from a type that is not marked with DataContractAttribute or SerializableAttribute.
最佳答案
这取决于您希望数据契约(Contract)的外观。您不能使用包装器而不是派生类吗?就像是:
[DataContract]
public class EmailAttachment
{
public EmailAttachment(){}
internal EmailAttachment(Attachment inner) {_attachment = inner;}
[DataMember]
public string AttachmentURL
{
set;
get;
}
[DataMember]
public string DisplayName
{
set;
get;
}
private Attachment _attachment;
}
关于inheritance - 如何从WCF中未标记DataContractAttribute或SerializableAttribute的类继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4453947/
我是一名优秀的程序员,十分优秀!