如果要添加数据成员,它将通过线路发送到客户端。添加 Isrequired 有什么好处?请解释
问问题
255 次
2 回答
3
这意味着当您通过网络传递对象的副本时,您应用它的数据成员必须存在。
所以,
[DataContract]
public class MyObject
{
[DataMember]
public int numberTest;
[DataMember(IsRequired=true)]
public int numberMustBeThere;
}
如果您发送了上述内容:
<MyObject>
<numberTest>123</numberTest>
</MyObject>
它会失败,因为它声明 numberMustBeThere 应该存在
但是,如果您发送这两个中的任何一个,都可以,因为默认值为 false(因此不需要 numberTest)
<MyObject>
<numberMustBeThere>123</numberMustBeThere>
</MyObject>
<MyObject>
<numberTest>123</numberTest>
<numberMustBeThere>123</numberMustBeThere>
</MyObject>
希望这可以帮助
于 2012-10-30T11:10:45.527 回答
1
基本上,当您声明 DataMember IsRequired 时,您是说如果未设置数据合同的字段,则应在客户端上引发异常。这对于在数据合同中指定必填字段很有用。
我希望它有所帮助。
问候,罗德里戈
于 2012-10-30T11:04:19.553 回答