मैं विजुअल स्टूडियो 2010 में NuGet के माध्यम से एक एम्बेडेड RavenDB =>RavenDB-Embedded.1.0.499
पैकेज के साथ खेल रहा हूं। इसका उपयोग इस प्रोजेक्ट में किया जा रहा है जिसे मैंने इस उत्कृष्ट एमएसडीएन आलेख को पढ़ने के बाद शुरू किया था:RavenDB को एक एंबेडेबल डॉक्यूमेंटस्टोर के रूप में चलाने और RavenDB प्रबंधन स्टूडियो तक पहुंच
Embedding RavenDB into an ASP.NET MVC 3 Application
अब मैं RavenDB Management Studio (वेब यूआई) का उपयोग करना चाहते हैं।
मैंने यहां वर्णित चरणों का पालन किया: Is it possible to connect to an embedded DB with Raven Management Studio और यहां Running RavenDB in embedded mode with HTTP enabled लेकिन मुझे बिंदु नहीं मिला।
इस कोड मैं DocumentStore
प्रारंभ करने में उपयोग कर रहा हूँ है:
_documentStore = new EmbeddableDocumentStore
{
ConnectionStringName = "RavenDB",
UseEmbeddedHttpServer = true
};
और इस Web.config
में ConnectionString
मौजूद है:
<add name="RavenDB" connectionString="DataDir = ~\App_Data\Database" />
मैं भी चरणों RavenDB: Embedded Mode में वर्णित पढ़ें। मैं सर्वर मैन्युअल रूप से प्रारंभ करने की कोशिश की:
// Start the HTTP server manually
var server = new RavenDbHttpServer(documentStore.Configuration,
documentStore.DocumentDatabase);
server.Start();
लेकिन जब से मैं कोई RavenDbHttpServer
, documentStore.Configuration
और documentStore.DocumentDatabase
है ऊपर कोड पुराना लगता है। मैं Raven.Database.Server.HttpServer
ढूंढने में कामयाब रहा लेकिन अन्य ऑब्जेक्ट्स _documentStore
में गायब हैं।
तो, सवाल यह है:
मैं अपने एम्बेडेड डेटाबेस डॉक्स कल्पना करने के लिए वेब UI कैसे हिट कर सकते हैं? मुझे अपने ब्राउजर एड्रेस बार में यूआरएल क्या रखना चाहिए?
किसी भी सलाह की सराहना की जाती है।
संपादित करें: मुझे इसे काम करने का एक तरीका मिला है। मैं अपने ब्लॉग पोस्ट में बताया गया है कि यह सबसे अच्छा तरीका नहीं हो सकता है, लेकिन यह काम करता है:
RavenDB Embedded with Management Studio UI
ध्यान दें: ऊपर दृष्टिकोण का एक नकारात्मक पक्ष यह है कि मैं अपने अनुप्रयोग में डेटाबेस का उपयोग करने में सक्षम नहीं कर रहा हूँ क्योंकि सर्वर द्वारा खोले जाने के बाद यह लॉक हो जाता है। इस तरह मुझे सर्वर को रोकना होगा और फिर ब्राउज़र में अपना ऐप पुनः लोड करना होगा।
मुझे आशा है कि रावेनडीबी के गुरुओं के पास बेहतर/सही दृष्टिकोण होगा ... बस हमें बताएं।
ओएमजी: यह अजीब है ... मैंने http: // localhost: 8080 की कोशिश की थी लेकिन यह पहले काम नहीं करता था। अब मैं इसे 'EnsureCanListenToWhenInNonAdminContext' जोड़ने के बिना भी काम कर रहा हूं। जाओ पता लगाओ। मुझे लगता है कि पोर्ट पोर्ट 8080 पर पहली बार कोशिश करने के बाद मेरी एक और सेवा चल रही थी ... धन्यवाद जॉन! –
यह काम करता है लेकिन अगर मैं एक यूनिट टेस्ट डीबग करता हूं, तो यह HTTP सर्वर के निष्पादन को रोकता है, इसलिए मैं इसे तब तक उपयोग नहीं कर सकता जब तक कि मैं डीबग नहीं करता जिसका मतलब है कि मैं अपने परीक्षणों को डीबग नहीं कर सकता और स्टूडियो को देख सकता हूं जिसका अर्थ है कि यह बेकार है। इससे बचने का कोई रास्ता है क्या? – kamranicus