1

データメンバーを追加する場合は、ネットワーク経由でクライアントに送信されます。Isrequiredを追加する利点は何ですか?説明してください

4

2 に答える 2

3

これは、オブジェクトのコピーをネットワーク上で渡すときに、それを適用するデータメンバーが存在している必要があることを意味します。

それで、

[DataContract]

    public class MyObject
    {
    [DataMember] 
    public int numberTest;
    [DataMember(IsRequired=true)]
    public int numberMustBeThere;
    }

上記を送信した場合:

<MyObject>
<numberTest>123</numberTest>
</MyObject>

numberMustBeThereが存在する必要があると記載されているため失敗します

ただし、これら2つのいずれかを送信する場合は、デフォルトがfalseであるため問題ありません(したがって、numberTestは必要ありません)。

<MyObject>
<numberMustBeThere>123</numberMustBeThere>
</MyObject>

<MyObject>
<numberTest>123</numberTest>
<numberMustBeThere>123</numberMustBeThere>
</MyObject>

お役に立てれば

于 2012-10-30T11:10:45.527 に答える
1

基本的に、DataMember IsRequiredと言うときは、datacontractのフィールドが設定されていない場合に備えて、クライアントで例外を発生させる必要があると言っています。これは、データコントラクトの必須フィールドを指定するのに役立ちます。

お役に立てば幸いです。

よろしく、ロドリゴ

于 2012-10-30T11:04:19.553 に答える