2

MVC Web サイトで EF Code First を使用する予定はありません。WPF クライアントを持つアプリで利用したいと考えています。

プロジェクトは次のように設定されます

  • ContactManager.Core // すべての
    エンティティ (dll)を含む
  • ContactManager.Data // DataContext およびその他のデータ関連の Services(dll) が含まれます
  • ContactManager.Services // ビジネス
    コンポーネント (dll)
  • ContactManager.Client // WPF
    アプリケーション

SQLExpress または SQLCE 4.0 DB を生成できません。コンパクトバージョンのdbにもっと興味があります。存在しないデータベースに接続しようとするため、単体テストが失敗することを除いて、エラーは発生しません。

4

1 に答える 1

1

私は答えを見つけました 2 オプション:

オプション1:

DbContext では、基本コンストラクターで接続文字列を指定します。

public class RecetteContext : DbContext
{
    public RecetteContext()
        :base("<YourConnectionString HERE>")
    {
    }

    public DbSet<Categorie> Categories { get; set; }
    public DbSet<Recette> Recettes { get; set; }

    }
}

オプション 2:

私が使用したものでは、DbContext ベース コンストラクターで接続文字列に名前を付けます。

public RecetteContext()
    : base("RecettesDatabase")
{            }

App.Config ファイルに、同じ名前の ConnectionString を追加します。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="RecettesDatabase"
         connectionString="Data Source=RecettesDB.sdf"
         providerName="System.Data.SqlServerCe.4.0"/>
  </connectionStrings>
</configuration>

それがあなたの問題を解決したことを願っています!

于 2011-10-22T01:05:18.380 に答える