2014-04-02 43 views
0

我想爲我的dnn項目訪問另一個數據庫,而不是在安裝期間爲dnn配置的數據庫。如何在dnn模塊中訪問外部數據庫

我能能,如果我在DNN配置的Web配置文件的AppSettings添加一個鍵/值來訪問連接字符串。

這是正確的方法嗎?或者我需要添加新的配置文件來添加連接字符串嗎?如果是的話我如何能在DNN C#編譯的模塊訪問的連接字符串

+0

在我的角度來看,我認爲最好的做法包括在web.config中的appSettings部分添加一個鍵/值。 您也可以在dnn模塊中管理此連接字符串的設置:例如,在模塊設置中。這取決於你需要的東西。 –

回答

1

的Web.config做法很可能是最好的方式,但如果你在安裝模塊遠程你必須記住設置在web.config文件,或使用DNN中提供的XMLMerge功能。我有一個例子在配置部分

<component type="Config"> 
    <config> 
     <configFile>web.config</configFile> 
     <install> 
     <configuration> 
      <nodes> 
      <node path="/configuration/dotnetnuke/sitemap/providers" action="update" key="name" collision="overwrite"> 
       <add name="DNNSimpleArticleSiteMapProvider" type="Christoc.Modules.dnnsimplearticle.Providers.Sitemap.Sitemap, DNNSimpleArticle" providerPath="~\DesktopModules\dnnsimplearticle\Providers\Sitemap\" /> 
      </node> 
      </nodes> 
     </configuration> 
     </install> 
     <uninstall> 
     <configuration> 
      <nodes /> 
     </configuration> 
     </uninstall> 
    </config> 
    </component> 

這將增加一個新的站點地圖提供者在我DNNSimpleArticle模塊將信息添加到web.config文件https://dnnsimplearticle.codeplex.com/SourceControl/latest#cs/dnnsimplearticle.dnn的樣子,但你可以調整的連接字符串代替。

另外兩個選項。

硬代碼的模塊,在連接字符串,而不是從靈活性的角度主意。

創建一個模塊,設定和存儲連接字符串那裏。這將允許您至少通過DNN中的UI進行更改。