2010-08-08 15 views
6

मैं आगामी परियोजना के लिए एक अच्छा ओआरएम ढूंढ रहा हूं।इन आवश्यकताओं के साथ सबसे अच्छा ओआरएम क्या है

डेटाबेस में लगभग 1000 से 1200 टेबल होंगे, और यह SQL सर्वर और ओरेकल दोनों में होगा, जिसका उपयोग ग्राहकों की उद्यम आवश्यकताओं के आधार पर किया जाएगा। परियोजना का कुछ हिस्सा डब्ल्यूसीएफ सेवाओं के साथ भी काम करेगा। मुझे एक डिजाइनर या ऐसा कुछ चाहिए। LINQ का अच्छा समर्थन। स्वीकार्य प्रदर्शन।

मैंने DataObjects.Net को आजमाया है लेकिन इसमें कोई डिज़ाइनर नहीं है। हम उन सभी तालिकाओं को कोड नहीं कर सकते हैं और न ही कोड जनरेटर का उपयोग कर सकते हैं। और मुझे यकीन नहीं है कि DataObjects.Net स्विचिंग डेटाबेस का समर्थन करता है। इसके अलावा मैं ईएफ 4 से परिचित हूं लेकिन यह डेटाबेस दोनों को एक साथ समर्थन नहीं कर सकता है, और डेटाबेस को मैन्युअल रूप से स्विच कर सकता है (edmx फ़ाइल को संशोधित करना) रखरखाव नौकरी के लिए ... में दर्द है।

अग्रिम धन्यवाद।

संपादित करें: OpenAccess और LLBLGEN Pro में डिज़ाइनर है लेकिन मुझे उनके साथ अनुभव नहीं है।

+0

मुझे पता है कि डिजाइनर के साथ कोई भी नहीं है जो वस्तुओं की संख्या के साथ अच्छी तरह से काम करता है। सबसे अच्छा आप प्राप्त कर सकते हैं काफी एलएलबीएलएन प्रो - बस क्योंकि यह केवल एक डेसेंट डिजाइनर के साथ है जो 1000-1200 इकाइयों के साथ भी प्रयोग योग्य है (EntityFramework इस राशि के साथ "कोई डिजाइनर" में काफी ज्यादा नहीं जाता है - यह पूरी तरह से अनुपयोगी है) । – TomTom

+0

मुझे लगता है कि यह प्रश्न "रचनात्मक" करीबी कारण से मुक्त होने के लिए पर्याप्त विशिष्ट है। –

उत्तर

7

मैं अभी भी इकाई फ्रेमवर्क v4 - EF4 के लिए वोट दूंगा।

सब के बाद:

  • आप एक से अधिक edmx फ़ाइलें, कोई समस्या नहीं है सकते हैं - एसक्यूएल सर्वर के लिए एक, ओरेकल

    के लिए एक
  • आप अपने स्वयं के वर्ग पुस्तकालय में उन है, और फिर लोड डाल सकता है या, या अन्य, या दोनों, यदि आवश्यक हो, रनटाइम पर (उदाहरण के लिएसभी

+0

के लिए डिजाइनर के रूप में इस्तेमाल किया जा सकता है I दूसरा @marc। ईएफ 4 में डिजाइनर समर्थन और अच्छा लिनक समर्थन है और @ ईआरएमएक्स फाइलों को रखने के @ मार्क का विचार कई आरडीबीएमएस समर्थन के दर्द को कम कर सकता है। – Sruly

+0

असल में यदि आपके पास लगभग 1200 टेबल हैं, तो आपके पास वास्तव में केवल 1 edmx फ़ाइल नहीं होनी चाहिए। संदर्भ को करने के लिए आवश्यक सभी ट्रैकिंग पर विचार करते हुए यह कभी भी प्रदर्शन के अनुसार काम नहीं करेगा। आपको अभी भी ऑरैकल और एसक्यूएल सर्वर दोनों के लिए एकाधिक एडीएमएक्स की आवश्यकता होगी। –

+0

@Stephane: हाँ, अच्छा बिंदु - प्रत्येक ईडीएमएक्स में 200 या उससे अधिक टेबलों की तुलना में बहुत अधिक नहीं होना चाहिए। आमतौर पर 200 (या कम) टेबल –

2

इस जानकारी को देखते हुए मैं NHibernate (और/या fluent-nhibernate) में देखने का सुझाव दूंगा।

जिस आइटम को आप देखना चाहते हैं वह प्रदर्शन है। यह आपके आवेदन की प्रकृति पर भारी निर्भर करता है। 1,000 से 1,200 टेबल बड़े पैमाने पर लगता है, इसलिए मैं निर्णय को अंतिम रूप देने से पहले निश्चित रूप से कई सार्थक प्रदर्शन परीक्षण (अन्य सभी परीक्षणों के अतिरिक्त) चलाने की अनुशंसा करता हूं।

संपादित: वास्तव में NHibernate के लिए बेहतर मूल्य उस जगह nhibernate.info है (धन्यवाद, जस्टिन!)।

+0

क्यों NHibernate? वस्तुओं के समय में डेटाबेस मॉडलिंग को कम करने के लिए, हम एक डिजाइनर या आदि का उपयोग करना चाहते हैं। क्या NHibernate में कोई डिज़ाइनर है? – Salar

+0

इन परीक्षणों के मुताबिक http://ormbattle.net/ NHibernate दूसरों की तुलना में अच्छा प्रदर्शन नहीं करता है। – Salar

+0

@ सैलोर - यह श्रेणी पर निर्भर करता है, एनएचबीर्नेट दूसरों के मुकाबले बेहतर है और इसके विपरीत। –

1

पर वास्तव में कड़ी मेहनत नहीं मैं भी सुझाव है कि NHibernate लेकिन अनुसंधान के लिए जगह - Managed Extensibility Framework या अपनी खुद की कुछ)

  • आप आसानी से उन edmx फ़ाइलों डेटाबेस में कनेक्शन तार का उपयोग कर लक्षित कर सकते हैं का उपयोग करके यह निश्चित रूप से NHForge है:

    :

    http://nhibernate.info/

    यहाँ (LINQ सहित) उच्च स्तरीय सुविधा सिंहावलोकन है

    http://nhibernate.info/doc/nhibernate-features.html

    वहाँ LLBLGen प्रो सहित कुछ डिजाइनरों उपलब्ध हैं,:

    http://nhibernate.info/doc/commercial-product-ecosystem.html

    NHibernate 3 अल्फा में है लेकिन मुझे पता है कि यह पहले से ही कुछ स्थानों पर उत्पादन में प्रयोग किया जा रहा है। यह एक नई परियोजना के लिए जाने का सबसे अच्छा तरीका हो सकता है।

  • +0

    हां, मैं सहमत हूं। शुरू करने के लिए बेहतर जगह एनएचफोर्ज है। मैं तदनुसार अपना जवाब अपडेट करूंगा। – Manfred

    1

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

    +0

    अच्छा बिंदु, मैं अपने स्वयं के जनरेटर का उपयोग ईएफ 4 के साथ करने जा रहा हूं। – Salar

    2

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

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