我发送XML到我的互联网服务和接收方法是:WCF自定义对象返回正确距返回空列表
public XElement SubmitRecipe(Recipe recipe)
配方参数正确地接收到所有的属性,但recipe.Allergies具有计数0,有谁知道为什么?
示例XML文件:
<Recipe>
<Allergies>
<Allergy>nuts</Allergy>
<Allergy>wheat</Allergy>
</Allergies>
<Title>recipe title</Title>
<Id>107</Id>
</Recipe
的配方对象:
[CollectionDataContract(Name = "Allergies", ItemName = "Allergy")]
public class AllergyList : List<string> { }
[DataContract]
public class Recipe
{
[DataMember(Name = "Allergies")]
public AllergyList Allergies { get; set; }
[DataMember]
public int Id { get; set; }
[DataMember]
public string Title { get; set; }
}
在我的创作方法的测试,我得到了我所期望:
public Recipe GetRecipe()
{
Recipe recipe = new Recipe();
recipe.Id = 1;
recipe.Allergies = new AllergyList();
recipe.Allergies.Add("nuts");
recipe.Allergies.Add("wheat");
}
<Recipe>
<Allergies>
<a:Allergy>nuts</a:Allergy>
<a:Allergy>wheat</a:Allergy>
</Allergies>
<Id>1</Id>
</Recipe>