4

MVC3 プロジェクトを Postgres 9.1 のデータベースに接続しようとしています。次のリンクをたどっています: info1info2info3です。外観については、コントローラーを作成するために文字列接続のみが必要です。

Mono.Securityおよび.dllへの参照があり、Npgsqlそれらをアセンブリに追加します。

私はこれを使用していますconnectionString

<connectionStrings>
    <add name="TestPostgreSQLContext"         
         connectionString="metadata=res://*/Models.TestPostgreSQL.csdl|res://*/Models.TestPostgreSQL.ssdl|res://*/Models.TestPostgreSQL.msl;provider=Npgsql.NpgsqlConnection;provider connection string=&quot;data source=localhost;initial catalog=testPostgres;persist security info=True;user id=postgres;password=123456;multipleactiveresultsets=True;App=EntityFramework&quot;" 
         providerName="Npgsql.NpgsqlConnection"/>
</connectionStrings>

コードのマークアップ:

public TestPostgreSQLContext() : base("name=TestPostgreSQLContext", "TestPostgreSQLContext")
{            
    this.ContextOptions.LazyLoadingEnabled = true;
    OnContextCreated();
}
public TestPostgreSQLContext(string connectionString) : base(connectionString, "TestPostgreSQLContext")
{
    this.ContextOptions.LazyLoadingEnabled = true;
    OnContextCreated();
}
public TestPostgreSQLContext(EntityConnection connection) : base(connection, "TestPostgreSQLContext")
{
    this.ContextOptions.LazyLoadingEnabled = true;
    OnContextCreated();
}

よりグラフィカルなアイデアを次に示します。 ここに画像の説明を入力

4

1 に答える 1

2

アプリの構成ファイルまたは machine.config 内で、Npgsql を登録済みプロバイダーとして宣言しましたか? (この公式の Npgsql ドキュメントを参照してください

于 2012-06-27T11:18:21.163 に答える