3 Stimmen

Nur ausgefüllte Objekteigenschaften über WCF senden?

Ich habe ein Objekt, das über WCF gesendet wird, die im Wesentlichen eine Eigenschaft Inhaber ist - es kann potenziell eine große Anzahl von Eigenschaften, d. h. bis zu 100, aber in der Regel nur eine kleine Teilmenge festgelegt werden, bis zu 10 zum Beispiel haben.

Exemple :

[DataContract(Namespace = "...")]
public class Monkey
{
        [DataMember]
        public string Arms { get; set; }

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

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

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

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

        /* repeat another X times */
}

Gibt es eine Möglichkeit, WCF zu sagen, nur die ausgefüllten Eigenschaften über die Leitung zu senden? Es scheint eine potenzielle Verschwendung von Bandbreite zu sein, das gesamte Objekt zu übertragen.

4voto

Incognito Punkte 16317

Ja, es ist möglich, dass Sie das so machen können

[DataContract(Namespace = "...")]
public class Monkey
{
        [DataMember(EmitDefaultValue=false, ....)]
        public string Arms { get; set; }

        ........    

        /* repeat another X times */
}

Weitere Einzelheiten zur Überprüfung der Eigenschaft EmitDefaultValue エムエスディーエヌ

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X