दूर करने के लिए मैं Repository
और Unit of Work
पैटर्न के साथ इकाई की रूपरेखा मॉडल-सबसे पहले उपयोग कर रहा हूँ की जरूरत नया स्वरूप, खजाने एफई Pocos लौट आते हैं।इकाई की रूपरेखा Pocos - कोड गंध
मुझे लगता है कि मैं नहीं तो मेरे कोड अब XyzService
जो एक अलग इकाई की रूपरेखा के लिए व्यापार तर्क को लागू करने वर्ग Xyz POCO
उत्पन्न है जैसी चीजों से भरा है मेरी Pocos कि इकाई की रूपरेखा द्वारा उत्पन्न कर रहे करने के लिए व्यवहार जोड़ सकता है, ग्रहण किया।
मैं निम्नलिखित प्रश्न हैं:
यह एक बुरा कोड गंध के रूप में न केवल मैं एफई Pocos है, मैं हर POCO के लिए एक सेवा है। कई वर्गों के अलावा, व्यावसायिक तर्क व्यापार इकाई के बाहर विभाजित है। क्या यह एनीमिक विरोधी पैटर्न का एक उदाहरण है?
यदि मैं ईएफ के साथ चिपक जाता हूं, तो क्या कोई तरीका है कि मैं व्यवहार (यानी आंशिक कक्षाओं के माध्यम से) या अन्य माध्यमों को जोड़ सकता हूं?
लगातार अज्ञान पैटर्न को देखते हुए जो डेटा परत (हमारे मामले में एक भंडार) से रिटर्न बिजनेस इकाइयों का उपयोग करते हैं, अगर मैं
EF-MODEL -> REPOSITORY-DAL -> BIZ-ENTITY
से जाना चाहता हूं तो मुझे लगता है कि व्यापार इकाई के बीच दो तरह के मैपिंग होंगे और ईएफ मॉडल पीओसीओ। क्या ऑटोमैपर जैसे यूटिलिटीज ने नेस्टेड ऑब्जेक्ट्स के जटिल रिश्तों को गहन रूप से संभाला है जिनकी मुझे संभावना है?डुप्लिकेटेड व्यावसायिक संस्थाओं को उनके समकक्ष ईएफ मॉडल इकाइयों के साथ कम करने के लिए, क्या मैं ईएफ को हटाने और प्रत्येक रिपोजिटरी के लिए LINQ से SQL का उपयोग करके अपने स्वयं के भंडार कार्यान्वयन को बेहतर नहीं लिखूंगा?
कोई भी अनुशंसित तरीका जो मुझे कोड पर ध्यान केंद्रित करने की अनुमति देता है (ईएफ मॉडल पर पहले तय करने के बजाए लक्ष्य के बजाय), फिर भी अंत में इकाई फ्रेमवर्क का उपयोग करें जब मैं दृढ़ता परत लिखने के लिए तैयार हूं, लेकिन ऐसा करने में बहुत सारे अतिरिक्त काम और मैपिंग से परहेज करना? ईएफ कोड-पहले इस संबंध में बेहतर होगा?
मैं अन्य प्रौद्योगिकियों कि विकास सहायता कर सकते हैं (उदाहरण के लिए NHibernate) तो कृपया उल्लेख करने के लिए स्वतंत्र लग रहा है की कुछ और याद किया है।
आपको सीधे पीओसीओ में व्यवहार जोड़ने में सक्षम होना चाहिए। आंशिक वर्ग के उत्तर का उल्लेख करने के लिए – MReis