मैं डेटाकंट्रैक्ट गुणों को आवश्यक बनाने के लिए [DataMember(IsRequired=true)]
का उपयोग करता हूं। ऑपरेशन कंट्रैक्ट पैरामीटर के लिए कुछ IsRequired प्रतीत नहीं होता है। मैं उन्हें कैसे जरूरी बना सकता हूं और शून्य की अनुमति नहीं देता?डब्ल्यूसीएफ: क्या ऑपरेशन कंट्रैक्ट में पैरामीटर बनाने के लिए कोई विशेषता है?
ऑपरेशन कंट्रैक्ट का पैरामीटर सोपयूआई टूल में वैकल्पिक प्रतीत होता है। हालांकि यह कभी भी वैकल्पिक या शून्य नहीं होना चाहिए।
WCF इंटरफ़ेस:
[OperationContract]
IsClientUpdateRequiredResult IsClientUpdateRequired(IsClientUpdateRequiredInput versie);
...
[DataContract]
public class IsClientUpdateRequiredInput
{
[DataMember(IsRequired=true)]
public string clientName { get; set; }
[DataMember(IsRequired = true, Order = 0)]
public int major { get; set; }
[DataMember(IsRequired = true, Order = 1)]
public int minor { get; set; }
[DataMember(IsRequired = true, Order = 2)]
public int build { get; set; }
[DataMember(IsRequired = true, Order = 3)]
public int revision { get; set; }
}
soapUI अनुरोध टेम्पलेट:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tem="http://tempuri.org/" xmlns:pir="http://schemas.datacontract.org/2004/07/PirIS.Web.WCF.InputClasses">
<soap:Header/>
<soap:Body>
<tem:IsClientUpdateRequired>
<!--Optional:-->
<tem:versie>
<pir:clientName>?</pir:clientName>
<pir:major>?</pir:major>
<pir:minor>?</pir:minor>
<pir:build>?</pir:build>
<pir:revision>?</pir:revision>
</tem:versie>
</tem:IsClientUpdateRequired>
</soap:Body>
</soap:Envelope>
धन्यवाद। बस एमएस ने डब्ल्यूसीएफ में इसका ख्याल रखा था। – Dieko