2017-03-03 6 views
2

私のプロジェクトのソリューションでは、Entityフレームワークのデータベース接続を1か所で維持しようとしているので、別のベンダー(MYSQLからMSSQLへ、またはその逆)にデータベースを切り替える必要がある場合は、 1つの場所で接続名を変更し、すべての場所で変更する必要はありません...私は次の構造を試したが、エラーに実行して、それを修正する方法?EF接続文字列を1か所に設定する方法は?

プロジェクト#1は

Dashboard.EntityFramework 
-->bitDbConnection.cs 


using 


namespace Dashboard.EntityFramework 
{ 
    public class bitDbConnection 
    { 
     BitDatabaseEntities bitDB = new BitDatabaseEntities(); 
    } 
} 

プロジェクト#2

Dashboard.Repository 
-->Repository.cs 

using Dashboard.EntityFramework 
when I try use to bitDB variable I can the below error 

エラー: -

The name bitDB does not exist in current context 

答えて

2

これはおそらく、あなたが欲しいものではありませんが、あなたのコードを動作させるために、このように書く:

namespace Dashboard.EntityFramework 
{ 
    public class bitDbConnection 
    { 
     public BitDatabaseEntities bitDB = new BitDatabaseEntities(); 
    } 
} 

using Dashboard.EntityFramework 
public class Repository 
{ 
    public void DoSomething() 
    { 
     var bitDB = new bitDbConnection().bitDB; 

    } 
} 
012だから、

、最初bitDBフィールドを公開し、それを使用して...コメント欄で質問に対する

編集:

public class Repository 
{ 
    private BitDatabaseEntities bitDB = new BitDatabaseEntities().bitDB; 
    public void DoSomething() 
    { 
     var x = bitDB.ToString(); 
    } 
} 
+0

M - ( 'VAR bitDB =新しいbitDbConnectionを宣言するための方法があります) .bitDB; '関数の外部でクラスレポジトリ'クラスリポジトリ ' – user2125827

+0

Marko - クラス内の関数が使用できるように、関数の外側とクラス内部で' var bitDB'を宣言する方法がありますか? – user2125827

+0

私は編集しました別の例で答えてください... –

関連する問題