2011-02-04 9 views
14

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

उदाहरण के लिए, मैं NpgSQL डाउनलोड किया है, उन्हें पंजीकृत GAC में:

gacutil -i c:\temp\npgsql.dll 
gacutil -i c:\temp\mono.security.dll 

और फ़ाइल machine.config को जोड़ा गया:

<add name="Npgsql Data Provider" 
invariant="Npgsql" support="FF" 
description=".Net Framework Data Provider for Postgresql Server" 
type="Npgsql.NpgsqlFactory, Npgsql, Version=2.0.6.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" /> 

लेकिन Npgsql दृश्य स्टूडियो में डेटा स्रोत सूची में प्रकट नहीं किया था :

Data source in VS

इस सूची में कस्टम डीबी प्रदाता कैसे जोड़ें?

युपीडी: यदि मैं कमांड स्ट्रिंग का उपयोग edmgen.exe मैं त्रुटि मिली:

error 7001: Failed to find or load the registered .Net Framework Data Provider.

उत्तर

3

पुराना (7 फरवरी 2013 से): विजुअल स्टूडियो में एनजीपीएसक्ल प्रदाता को एक्सेसिबल में जोड़ना असंभव है, क्योंकि अब के लिए एनजीपीएसक्यूएल डीडीईएक्स का समर्थन नहीं करता है।

2 9 दिसंबर 2013 को अपडेट करें: ऐसा लगता है कि डीडीईएक्स समर्थन added था।

+3

हम इस समर्थन पर काम कर रहे हैं। हम जल्द ही इसे जोड़ने की उम्मीद करते हैं। –

+0

बस एक फॉलो अप: हमने इसके 2.2 बीटा 1 में इसके लिए समर्थन जोड़ा। आप इसे यहां संकलित, कॉन्फ़िगर और इंस्टॉल करने के तरीके के बारे में अधिक जानकारी प्राप्त कर सकते हैं: https://github.com/npgsql/Npgsql/wiki/Visual-Studio- डिज़ाइन- समय- समर्थन ---DDEX- प्रदाता मुझे उम्मीद है कि यह मदद करता है –

3

आप एक कॉन्फ़िग फ़ाइल (Web.config, Machine.config, आदि) में DbFactoryProvider घोषित करने के लिए की जरूरत है।

 
<system.data> 
    <DbProviderFactories> 
    <remove invariant="MySql.Data.MySqlClient"/> 
    <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/> 
    </DbProviderFactories> 
</system.data> 

मैं भी अनुप्रयोग स्तर config फ़ाइल में इनमें घोषित पसंद करते हैं और मेरी क्षुधा विधानसभा की स्थानीय प्रतिलिपि का उपयोग किया है: यहाँ एक नमूना एक मैं MySQL का उपयोग कर एक परियोजना से खींच लिया है। यह पोर्टेबिलिटी के साथ मदद करता है क्योंकि हम गारंटी नहीं दे सकते कि तृतीय पक्ष प्रदाता जीएसी में उपलब्ध है।

+0

मैंने मशीन.config फ़ाइल में जोड़ा Npgsql प्रदाता, लेकिन नोटिंग हुआ। – Anton

+1

आपको संपादित करने के लिए सही machine.config चुनना होगा। 64 बिट सिस्टम के मामले में, c: \ Windows \ Microsoft.NET \ Framework64 \ v4.0। * \ Config \ machine.config संपादित करें, अन्यथा सही कॉन्फ़िगरेशन फ़ाइल का पता लगाने के लिए "फ्रेमवर्क 64" की बजाय "फ्रेमवर्क" निर्देशिका का उपयोग करें । –

2

आप दृश्य स्टूडियो में डेटा स्रोत सूची में Npgsql ऊपर सूचीबद्ध करने के लिए चाहते हैं, तो इस article एक छोटे से सहायक हो सकता है।

वैसे भी, क्योंकि विजुअल स्टूडियो माइक्रोसॉफ्ट द्वारा वितरित किया गया है, जाहिर है आपको रजिस्ट्री तालिका पर काम करने की आवश्यकता है।

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

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