मैं डब्ल्यूसीएफ रीस्टफुल वेब सेवाओं के साथ प्रयोग कर रहा हूं और मुझे ऑटो-कार्यान्वित गुणों में समस्या है।डब्ल्यूसीएफ एक्सएमएल सीरियलाइजेशन और ऑटोइम्प्लीफाइड प्रॉपर्टीज
[ServiceContract]
public interface IChooser
{
[WebGet(UriTemplate="/Chooser/RegisteredDevices")]
[OperationContract]
List<DeviceDescriptor> RegisteredDevices();
[WebGet(UriTemplate = "/Chooser/Ping")]
[OperationContract]
string Ping();
}
: - यहाँ मेरी सेवा अनुबंध है
public class DeviceDescriptor
{
public string DeviceId { get; set; }
public string DisplayName { get; set; }
}
मैं एक RESTful WCF सेवा है कि DeviceDescriptors की एक सूची वापस करने के लिए माना जाता है है:
मैं इस प्रकार के रूप में परिभाषित एक वर्ग DeviceDescriptor कहा जाता है, खैर, यह काम करता है, सिवाय इसके कि एक्सएमएल आउटपुट में, संपत्ति के नाम सही नहीं आते हैं, ऐसा लगता है कि सीरिएलाइज़र संपत्ति नामों के बजाय स्वत: जेनरेट किए गए बैकिंग फ़ील्ड के "अचूक नाम" का उपयोग कर रहा है। मेरा आउटपुट इस तरह से निकलता है:
<DeviceDescriptor>
<_x003C_DeviceId_x003E_k__BackingField>Pipe.Dome</_x003C_DeviceId_x003E_k__BackingField>
<_x003C_DisplayName_x003E_k__BackingField>Pipe diagnostic tool</_x003C_DisplayName_x003E_k__BackingField>
</DeviceDescriptor>
तो, क्या इसका कोई तरीका है? WCF संपत्ति नामों का उपयोग क्यों नहीं करता?
StackOverflow विरोधाभास: मैं बस इस आइटम के लिए 'लोकप्रिय सवाल' बैज जीता, अभी तक सिर्फ एक ही वोट दें है। –