मैं एक विंडोज सी # एप्लीकेशन विकसित करता हूं जो ऑनलाइन और ऑफ़लाइन मोड में काम कर सकता है।
जब ऑनलाइन मोड में यह SQL सर्वर से कनेक्ट होता है। ऑफ़लाइन मोड में यह स्थानीय डीबी से जुड़ता है।एमएस सिंक फ्रेमवर्क और एसक्यूएल सर्वर कॉम्पैक्ट
मैं मांग पर 2 डेटाबेस सिंक करने के लिए Microsoft सिंक फ्रेमवर्क 2.1 का उपयोग करता हूं।
अब तक मैंने स्थानीय डेटाबेस के रूप में SQL सर्वर का एक स्थानीय डीबी उदाहरण उपयोग किया था। लेकिन यह मेरे आवेदन की स्थापना प्रक्रिया के दौरान सिस्टम को स्वचालित रूप से सेटअप करने का दर्द है। इसलिए मैंने SQL सर्वर कॉम्पैक्ट 3.5 या 4.0 का उपयोग करने के लिए सोचा जो वितरित करना बहुत आसान है (एक फ़ाइल में आता है)।
लेकिन मैं यह भी कॉम्पैक्ट डीबी के प्रावधान कोड संकलित करने के लिए नहीं मिल सकता है:
DbSyncScopeDescription scopeDesc = new DbSyncScopeDescription("MyScope");
SqlCeConnection clientConn = new SqlCeConnection(OfflineConnectionString);
var clientProvision = new SqlCeSyncScopeProvisioning(clientConn, scopeDesc);
clientProvision.Apply();
जो मैं (Ce
वर्गों के बिना) से पहले थे, लेकिन SqlCeSyncScopeProvisioning
हल नहीं किया जा सकता है।
यहां कुछ गड़बड़ है।
मैं अपने कॉम्पैक्ट डीबी को अपने स्थानीय डेटाबेस के रूप में वितरित करने के लिए कैसे सिंक कर सकता हूं?
पर अपने कोड को माइग्रेट करने में सक्षम होना चाहिए क्या आपने स्थानीय डीबी डेटाबेस फ़ाइलों को वितरित करने का प्रयास किया है? आप किसी विशेष स्थानीय डीबी फ़ाइल से कनेक्ट कर सकते हैं। जैसे 'कनेक्शनस्ट्रिंग =" डेटा स्रोत = (लोकलडीबी) \ v12.0; AttachDbFilename = सी: \ MyDatabase.mdf; प्रारंभिक कैटलॉग = MyDatabase; एकीकृत सुरक्षा = सही "'। मैंने क्लाइंट पीसी पर अपने ऐप्स वितरित नहीं किए हैं, इसलिए मुझे नहीं पता कि * SqlLocalDB * स्थापित करना परेशानी है या नहीं, लेकिन आप इसे एक शॉट दे सकते हैं। – Gabrielius
SqlLocalDB स्थापित करना इतना आसान नहीं है। विशेष रूप से इसे काम करने के लिए जब मुझे एक पुराना मौजूदा उदाहरण निकालना है और नया इंस्टॉल करना है। लेकिन अगर कॉम्पैक्ट दृष्टिकोण विफल रहता है तो मुझे उस पर काम करना जारी रखना होगा। धन्यवाद। –
पुराने को क्यों हटा दें? क्या यह तुम्हारा है? आप जो भी नाम चाहते हैं उसके साथ आप एक नया उदाहरण जोड़ सकते हैं। मुझे लगता है, मैं स्थानीय डीबी की वकालत कर रहा हूं, क्योंकि सीई थोड़ी पुरानी है और अंत में मर जाएगी। – Gabrielius