मैं वर्तमान में अपने आवेदन में एक ही परियोजना में अपने बिजनेस लेयर और डेटा लेयर का प्रतिनिधित्व करता हूं। कक्षाओं के दो सेटों के बीच चिंताओं का बहुत अच्छा अलगाव है। हालांकि, माई डेटा लेयर क्लासेस पैरामीटर के रूप में लेते हैं और मेरी व्यावसायिक वस्तुओं को वापस करते हैं। इसलिए मैं कोड है कि शिथिल जैसा दिखता होगा (कृपया इस कोड के भी महत्वपूर्ण नहीं है, मेरे उत्पादन कोड ज्यादा इस तरह नहीं दिखता है):मैं अपने व्यवसाय और डेटा परतों को पूरी तरह से कैसे अलग कर सकता हूं?
//business class fragment
public bool Save()
{
if(this.IsValid)
{
//DataProvider is one of many data access classes that implement an IDataProvider interface. Switched elsewhere in the class. This allows switching of Database providers, xml, etc.
DataProvider.Save(this);
return true;
}
return false;
}
public List<MyBusinessObject> GetObjectsByCriteria(string criteria)
{
return DataProvider.GetMyBusinessObjectsByCriteria(criteria);
}
मैं अपने व्यवसाय वर्गों के लिए है नहीं करना चाहती डेटासेट्स से निपटने के अलावा मुझे अपने डेटा लेयर क्लास बिजनेस क्लासेस के साथ सौदा करना पसंद है।
मैं एक बहुत पढ़ा पर डेटा एक्सेस ऑब्जेक्ट्स, या डाटा ट्रांसफर संभवतः इस समस्या को हल करने के लिए ऑब्जेक्ट्स, लेकिन यह उन पैटर्न के लिए एक विरोधी पैटर्न मामले की तरह लगता है है।
मैं क्या कर सकता हूं? मैं अपने आवेदन की इन दो परतों के पूर्ण अलगाव को कैसे प्राप्त करूं?
हम यही करते हैं, लेकिन हम इसे डीटीओ के साथ भी जोड़ते हैं। –