2009-02-18 14 views
8

लगभग निश्चित रूप से एक बेवकूफ सवाल है लेकिन मुझे कहीं भी जवाब नहीं मिल रहा है।फ्लुएंट एनएचबेर्नेट - ऑरैकल के लिए कॉन्फ़िगर कैसे करें?

Getting Started tutorial में डेटाबेस SQLite है और इसलिए उनके सत्र कारखाना निर्माण FluentNHibernate.Cfg.Db नाम स्थान

ग्रेट में SQLiteConfiguration वर्ग का उपयोग किया जाता है! लेकिन मुझे ओरेकल डेटाबेस का उपयोग करने के लिए कॉन्फ़िगरेशन क्लास दिखाई नहीं दे रहा है। मैं यह कैसे करु?

fluent NH mailing list (with answer)

उत्तर

8

यह मेरे लिए काम करता है। उम्मीद है की यह मदद करेगा!

private static ISessionFactory CreateSessionFactory() 
    { 

     var cfg = OracleClientConfiguration.Oracle9 
      .ConnectionString(c => 
       c.Is("DATA SOURCE=<<NAME>>;PERSIST SECURITY INFO=True;USER ID=<<USER_NAME>>;Password=<<PASSWORD>>")); 

     return Fluently.Configure() 
       .Database(cfg) 
       .Mappings(m => m.FluentMappings.AddFromAssemblyOf<CLASS_NAME>().ExportTo(@".\")) 
       .ExposeConfiguration(BuildSchema) 
     .BuildSessionFactory(); 
    } 

    private static void BuildSchema(NHibernate.Cfg.Configuration config) 
    { 
     // this NHibernate tool takes a configuration (with mapping info in) 
     // and exports a database schema from it 
     new SchemaExport(config) 
      .Create(false, true); 
    } 
+0

हाँ से कॉन्फ़िगर करने योग्य है, मुझे लगता है कि आप इस पैच का उपयोग कर रहे हैं जो सबमिट किया गया था क्योंकि मैंने यह –

+0

पोस्ट किया था क्या आपके पास डेटाबेस बनाने के दौरान डेटा स्रोत क्या होगा? –

+0

यह सामान्य ओरेकल डेटा स्रोत है। यह मदद करनी चाहिए? http://stackoverflow.com/questions/11400794/oracle-odp-net-connection-string-what-goes-in-data-source – kimsk

3

को पार तैनात इस मदद करता है?

http://tiredblogger.wordpress.com/2008/12/04/persistanceconfiguration-for-oraclefluent-nhibernate/

संपादित करें: कोड उल्लेख ConnectionStringExpression वर्ग जो अब धाराप्रवाह NHibernate में मौजूद है का उपयोग करता है। हालांकि, उस वर्ग का उपयोग ओरेकल कॉन्फ़िगरेशन _config फ़ील्ड रखने के अलावा किसी अन्य चीज़ के लिए नहीं किया जाता है। आप सुरक्षित रूप से, OracleConnectionStringExpression कक्षा में फ़ील्ड जोड़ सकते हैं और इसे हटा सकते हैं।

शेष मुद्दा यह है कि एनएचबीरनेट अब कुछ कारणों से उन घटकों की तलाश करेगा जो ओरेकल.डाटाएप के वर्तमान निर्माण में नहीं हैं। यदि आप इससे निपटना चाहते हैं तो आप कर सकते हैं जो थर्डब्लॉगर ने here किया था।

+0

मुझे ऐसा लगता है .... बहुत बहुत धन्यवाद! –

+0

हालांकि वह CONnectionStringExpression कहां प्राप्त कर रहा है? –

+0

किसी ने एक पैच सबमिट किया है, अब यह एफएनएच –

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