Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# DataContract继承类型未知_C#_Wcf_Datacontract - Fatal编程技术网

C# DataContract继承类型未知

C# DataContract继承类型未知,c#,wcf,datacontract,C#,Wcf,Datacontract,Hi my datacontract具有继承性,但在使用服务时无法访问最后一个成员: namespace Services.SearchService { [DataContract] [KnownType(typeof(LabellingSearch))] public class SearchResult { [DataMember] public int ID { get; set; } [DataMemb

Hi my datacontract具有继承性,但在使用服务时无法访问最后一个成员:

namespace Services.SearchService
{

    [DataContract]
    [KnownType(typeof(LabellingSearch))]
    public class SearchResult
    {
        [DataMember]
        public int ID { get; set; }

        [DataMember]
        public string Title { get; set; }

        [DataMember]
        public DateTime Modified { get; set; }
    }

    /// <summary>
    /// Specialist Search Result for Labelling Content Data
    /// </summary>
    [DataContract]
    [KnownType(typeof(Labelling))]
    public class LabellingSearch : SearchResult
    {
        [DataMember]
        public string Region { get; set; }

        [DataMember]
        public string Country { get; set; }

        [DataMember]
        public string LabelSummary { get; set; }
    }

    /// <summary>
    /// Full Labelling Content Data
    /// </summary>
    [DataContract]
    public class Labelling : LabellingSearch
    {
        public string Content { get; set; }
   }
}
namespace Services.SearchService
{
[数据合同]
[KnownType(typeof(LabelingSearch))]
公共类搜索结果
{
[数据成员]
公共int ID{get;set;}
[数据成员]
公共字符串标题{get;set;}
[数据成员]
修改的公共日期时间{get;set;}
}
/// 
///标签内容数据的专家搜索结果
/// 
[数据合同]
[知识类型(类型(标签))]
公共类标签搜索:搜索结果
{
[数据成员]
公共字符串区域{get;set;}
[数据成员]
公共字符串国家{get;set;}
[数据成员]
公共字符串标签摘要{get;set;}
}
/// 
///完整标签内容数据
/// 
[数据合同]
公共类标签:标签搜索
{
公共字符串内容{get;set;}
}
}

因此,在消费类中,我可以访问类型'labeling',但无法访问其'Content'属性。

您无法访问
内容
属性,因为它不是
数据成员
,因此它没有序列化。添加
[DataMember]
属性

[DataMember]
public string Content { get; set; }
从MSDN关于DataMemberAttribute类

应用于类型的成员时,指定该成员是数据协定的一部分,并且可由DataContractSerializer序列化


您无法访问
内容
属性,因为它不是
数据成员
,所以它没有序列化。添加
[DataMember]
属性

[DataMember]
public string Content { get; set; }
从MSDN关于DataMemberAttribute类

应用于类型的成员时,指定该成员是数据协定的一部分,并且可由DataContractSerializer序列化


您没有将该类成员设置为[DataMember]

[DataContract]
    public class Labelling : LabellingSearch
    {
        [DataMember]
        public string Content { get; set; }
   }

您没有将该类成员设置为[DataMember]

[DataContract]
    public class Labelling : LabellingSearch
    {
        [DataMember]
        public string Content { get; set; }
   }

一直盯着它看太久了,就是看不见它一直盯着它看太久了,就是看不见它