2011-06-13 12 views
46

मैं एंटिटी फ्रेमवर्क धाराप्रवाह-एपीआई के बारे में सुनता रहता हूं लेकिन मैं इस पर एक अच्छा संदर्भ खोजने के लिए संघर्ष कर रहा हूं। यह क्या है?एंटिटी फ्रेमवर्क धाराप्रवाह एपीआई क्या है?

हम इकाई ढांचे और मॉडलिंग टूल का उपयोग करते हैं। क्या वह सब है? या यह कुछ अलग है?

इसी तरह, यदि यह बहुत व्यापक प्रश्न नहीं है, तो पीओसीओ क्या है? मुझे पता है कि यह सादा पुराने सीएलआर ऑब्जेक्ट्स के लिए खड़ा है, लेकिन मेरे लिए इसका मतलब क्या है जो पहले से ही डिजाइनर मॉडल उपकरण के साथ ईएफ का उपयोग करता है? यदि वह प्रश्न बहुत अस्पष्ट है तो कृपया इसे अनदेखा करें। मैं बस यहां सीख रहा हूं और जो भी जानकारी आप प्रदान करना चाहते हैं वह सहायक है।

उत्तर

50

इकाई फ्रेमवर्क 4.1 कोड डेटाबेस डेटाबेस लिखने के पहले दृष्टिकोण को प्रस्तुत करता है। इसे पीओसीओ (सादा ओल्ड सीएलआर ऑब्जेक्ट्स) भी कहा जाता है। विचार यह है कि आप इन कक्षाओं से अपना डेटाबेस बना सकते हैं, बल्कि डेटाबेस को पहले बना सकते हैं और उस से एक मॉडल बना सकते हैं।

इस पर बहुत सारे अच्छे ब्लॉग लेख और एमएसडीएन दस्तावेज हैं। एक से शुरुआत कर सकते

http://blogs.msdn.com/b/adonet/archive/2010/12/14/ef-feature-ctp5-fluent-api-samples.aspx

http://weblogs.asp.net/scottgu/archive/2010/12/08/announcing-entity-framework-code-first-ctp5-release.aspx

http://weblogs.asp.net/manavi/archive/2011/03/27/associations-in-ef-4-1-code-first-part-1-introduction-and-basic-concepts.aspx

सादर धाराप्रवाह एपीआई हो सकता है, यह मूल रूप से एफई कक्षाएं उपयोग कर रहा है अपने डेटाबेस जैसे निर्माण करने के लिए:

modelBuilder.Entity<Category>().HasKey(c => c.CategoryCode); 

तो आप मैन्युअल रूप से बता रहे हैं कि Category तालिका में प्राथमिक कुंजी है `CategoryCode '। आप भी इस तरह पी घोषणा कर सकते हैं:

public class Category 
{ 
    [Key]  
    public int CategoryCode { get; set;} 
} 

[Key] विशेषता अपने POCO सवाल का जवाब देते हुए से Data Annotations

+2

जेसन MSDN पर अनुभाग की जांच कर सकते हैं, Am मैं कुछ बड़ा लापता अगर मैं धाराप्रवाह एपीआई के बजाय डेटा एनोटेशन का उपयोग करने का फैसला किया।मैं बस एमवीसी के साथ शुरू कर रहा हूं और यह विषय मेरे लिए एक बड़ा वक्र है। – Crismogram

+4

मुझे विश्वास नहीं है कि आप गायब हैं। लेकिन मैं कहूंगा कि धाराप्रवाह एपीआई का उपयोग करने का मतलब है कि आप विभिन्न वर्गों से जुड़े विशेषताओं में चारों ओर उस सेटअप को फैलाने के बजाय, एक विधि में सभी डेटाबेस सेटअप डाल सकते हैं। तो यह एक मामला है जिस तरह से आप वास्तव में पसंद करते हैं। –

6

पीओसीओ सादा पुराने सीएलआर ऑब्जेक्ट के लिए खड़ा है।

Article फ़्लुएंट एपीआई पर।

0

आता है: आवेदन मैं वर्तमान में मैं पर काम कर रहा हूँ में करने के लिए डेटा पास करने के POCO का उपयोग कर रहा हूँ मेरा सिल्वरलाइट फ्रंट एंड (ईएफ बस इसे काट नहीं रहा था)। अनिवार्य रूप से, मैं उन इकाइयों का उपयोग करता हूं जो ईएफ मॉडलर ने बनाई हैं, उन्हें एक धारावाहिक-अनुकूल संस्करण में मालिश करें, और फिर तार पर उन्हें आगे भेज दें। आवश्यकता होने पर पीओसीओ अबास्ट्रक्शन की एक परत प्रदान करने के लिए हैं। मैं इसे डीएओ पैटर्न के लिए डीएओ पैटर्न की तरह उपयोग करने के बजाय सामान्य रूप से डीएओ पैटर्न की तरह उपयोग करने के बजाय डीएओ पैटर्न के अनुकूलन के रूप में सोचता हूं।

0

, http://www.asp.net/entity-framework/tutorials/creating-an-entity-framework-data-model-for-an-asp-net-mvc-application

अनिवार्य रूप में POCO वर्गों पर पैरा देखें एफई के संदर्भ में, POCO कक्षाएं इकाई वर्गों कि इकाई की रूपरेखा EntityObject वर्ग से विरासत नहीं है (जो आप डाटाबेस प्रथम में डिफ़ॉल्ट रूप से क्या मिलता हैं या मॉडल पहले)। जैसा कि अन्य उत्तरों में से एक उल्लेख है, इससे वस्तुओं को क्रमबद्ध करना आसान हो जाता है, लेकिन कुछ विकास और स्वचालित परीक्षण पद्धतियां उन वस्तुओं के साथ काम करना पसंद करती हैं जिनके पास इकाई फ्रेमवर्क का कोई संदर्भ नहीं है।

संबंधित मुद्दे