एएसपी.नेट | एमवीसी 4 | सी # | डब्ल्यूसीएफएएसपी.नेट एमवीसी - मॉडल के लिए डब्ल्यूसीएफ कक्षाएं
मैं प्रस्तुति परत (एमवीसी) से मध्यस्थ के रूप में डब्ल्यूसीएफ वेब सेवाओं का उपयोग डेटा परत (इकाई) से कर रहा हूं। एमवीसी से वेब सेवा में चल रहे डेटा मॉडल डेटा को सरल बनाने के लिए मैंने सोचा कि मैं डब्ल्यूसीएफ में प्रॉक्सी कक्षाओं का उपयोग करूंगा, ताकि एक केंद्रीकृत वर्ग हो। दुर्भाग्य से, इसने मॉडल के भीतर गुणों पर एमवीसी सजावट के नुकसान का कारण बना दिया। क्या एमवीसी व्यू के लिए मॉडल के साथ एक केंद्रीकृत वर्ग बनाने के लिए और डब्ल्यूसीएफ सेवा के लिए एक परिवहन विधि के रूप में भी एक अच्छा तरीका है?
ऑटोमैपिंग एक विकल्प के रूप में दिमाग में आया, लेकिन मुझे विश्वास है कि दो समान वर्गों की आवश्यकता होगी। एमवीसी पक्ष पर एक और डब्ल्यूसीएफ पक्ष पर एक। यदि कक्षा में कोई संपत्ति बदल जाती है तो मुझे दोनों पक्षों में बदलाव करने की आवश्यकता होगी।
कोई अन्य सुझाव की सराहना की जाएगी। धन्यवाद!
संपादित :: उदाहरण
यहाँ एक पेज है कि रिकॉर्ड
public class ReconcileModel
{
#region PROPERTIES
public List<ReconcileItem> ReconcileItems { get; set;}
#endregion
#region CONSTRUCTORS
public ReconcileModel()
{
ReconcileItems = new List<ReconcileItem>();
}
#endregion
}
की एक तालिका में शामिल है यहां कक्षा कि तालिका में प्रत्येक रिकॉर्ड का प्रतिनिधित्व करने के लिए है के लिए मॉडल है।
public class ReconcileItem
{
#region PROPERTIES
public int ID { get; set; }
public string Description { get; set; }
public string LastLocation { get; set; }
public string LastRead { get; set; }
public string IntendenLocation { get; set; }
public string PickId { get; set; }
public string OEM { get; set; }
public string LotNumber { get; set; }
public string SerialNumber { get; set; }
public DateTime ExpirationDate { get; set; }
public string ReconcileReason { get; set; }
public string RemoveReason { get; set; }
#endregion
#region CONSTRUCTORS
public ReconcileItem()
{
}
#endregion
}
वर्ग के WCF अनुबंध प्रतिनिधित्व ऊपर होगा
[DataContract]
public class ReconcileItem
{
[DataMemeber]
public int ID { get; set; }
[DataMember]
public string Description { get; set; }
[DataMember]
public string LastLocation { get; set; }
[DataMember]
public string LastRead { get; set; }
[DataMember]
public string IntendenLocation { get; set; }
[DataMemeber]
public string PickId { get; set; }
[DataMember]
public string OEM { get; set; }
[DataMember]
public string LotNumber { get; set; }
[DataMember]
public string SerialNumber { get; set; }
[DataMember]
public DateTime ExpirationDate { get; set; }
[DataMember]
public string ReconcileReason { get; set; }
[DataMember]
public string RemoveReason { get; set; }
}
मैं इस रिकॉर्ड को अपडेट करना चाहते हैं, तो वर्ग, WCF सेवा के लिए भेजा उचित इकाई फ्रेमवर्क वर्गों को मैप किया है, और सहेजा जाता है डेटाबेस में। स्थानांतरण को सरल बनाने के लिए मैंने सोचा कि मैं इस कक्षा को डब्लूसीएफ परियोजना में डाल दूंगा और इसे एमवीसी परियोजना में संदर्भित करूंगा। फिर मैं डब्ल्यूसीएफ और एमवीसी के बीच कक्षा को आगे बढ़ा सकता था। इसके अलावा, अगर मैंने डब्ल्यूसीएफ में कक्षा को अद्यतन किया तो यह एमवीसी में दिखाई देगा। केंद्रीकृत द्वारा इसका मतलब है।
आपका प्रश्न थोड़ा अस्पष्ट है। क्या आप हमें कुछ कोड के साथ प्रस्तुत कर सकते हैं, उदाहरण के लिए 'केन्द्रीकृत वर्ग' से आपका क्या मतलब है? – Steven
@ स्टीवन संपादन देखें और मुझे बताएं कि क्या चीजों को स्पष्ट करता है। धन्यवाद! – Will