2014-09-05 45 views
0

我有一個C#MVC項目,目前我正在使用通過MEF實現的基本插件架構。插件及其相應的部分通過Web界面上傳並放置在插件文件夾中,然後在應用程序啓動時發現它們。C#如何在類中嵌入連接字符串?

一些插件需要數據訪問外部數據庫(而不是主數據庫)。當應用程序啓用時,我將無法輕鬆更改主應用程序的web.config文件。

所以我的問題是如何將連接字符串直接嵌入到我的插件類中?

+0

我可以將連接字符串存儲在數據庫中,但我仍然必須在我的插件中直接引用它,而無需修改核心應用程序的web.config;因此這個問題。請記住,除了我已放入前端的功能(例如能夠加載插件)之外,我將無法訪問應用程序正在運行的服務器。 – dcrdev 2014-09-05 23:13:28

+0

嗨用戶3861788你能幫助這個問題嗎? http://stackoverflow.com/questions/24971606/asp-net-mvc-5-mef-how-to-programmically-import-and-export-parts聽起來就像你可以有MEF的MVC有一個插件框架。你有一個管理員設置頁面,你可以啓用和禁用插件? – Kbdavis07 2014-09-30 10:08:46

回答

0

一對夫婦的想法:

1)只要硬編碼: 弊:我覺得你很關心動態更改連接字符串。所以這不適合你需要的。

2)將另一個配置文件存儲在您可以訪問的共享驅動器上。 專業版:讓我們隨時更改連接字符串。 Con:不是安全的最佳選擇。

3)使用經過驗證的Web服務。在啓動時,調用Web服務(可能每小時或連接失敗)以獲取連接字符串。 專業版:這使您可以即時更改連接字符串。 親:這可以用安全來實現

在三個選項中,第三個選項似乎最符合您的需求。但那些只是我的頭頂。