2017-11-18 150 views
-1

我想將連接字符串放在USB加密狗鎖上,並讓我的應用程序從鎖中讀取連接字符串。 但我不知道如何傳遞給ADO.NET字符串,並放置在app.config中連接字符串(我使用ado.net)下面的代碼是我的連接字符串標記:如何把字符串作爲連接字符串到app.config?

 <connectionStrings><add name="Db_ReceptionEntities1" connectionString="metadata=res://*/Model.DBReception.csdl|res://*/Model.DBReception.ssdl|res://*/Model.DBReception.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=Db_Reception;user id=sa;password=******;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /></connectionStrings> 
+0

[從App.config獲取連接字符串]的可能重複(https://stackoverflow.com/questions/6536715/get-connection-strin g-from-app-config) – john

+0

@john我相信他們是完全不同的。我想在連接USB時傳遞連接字符串。你提到的帖子是關於獲取連接字符串! –

+0

這可能是爲什麼它說「可能重複」,你不覺得嗎?不需要對試圖幫助的人生氣。 – john

回答

-1

這有助於:

public Db_ReceptionEntities1(string x) 
     : base("name=Db_ReceptionEntities1") 
    { 

     Database.Connection.ConnectionString = x; 
    } 
0

如何把字符串作爲連接字符串到app.config?

您不需要讀取加密狗並將其放入app.config中。您只需從加密狗讀取並將連接字符串提供給您的上下文。

您的連接字符串看起來像EF數據庫第一個連接字符串。 DbContext類具有接受連接字符串名稱或完整連接字符串的構造函數。您可以使用它並將連接字符串傳遞給它。

這樣創建您的上下文:

public class StackContext : DbContext 
{ 
    public StackContext(string connection) : base(connection) 
    { 

    } 
} 

然後讀取加密狗的連接字符串,並將它傳遞給你的背景是這樣的:

// read from dongle 
var connectionString = ...; 
var ctx = new StackContext(connectionString); 
+0

它沒有幫助.tnx爲您的答案 –

+0

@sinaghasemizade你是什麼意思,它沒有幫助? – CodingYoshi

+0

我'已經做到了,但我不知道它是如何工作的。請看下面我自己的答案。 @codingyoshi –