1

MVC プロジェクトでデータベースを作成しようとしています。コードファーストのアプローチ。DbContextモデルとデータベースを書きました。データベースへの接続に問題があります。問題は接続文字列にあると思われますが、よくわかりません。必要なデータベースは、次のように定義された 2 つのテーブルで構成されます。

public class EmployeeRequest
{
    [Key]
    public int EmployeeRequestId { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string UserName { get; set; }
    public int ExtNumber { get; set; }
    public bool isProcessed { get; set; }
    public virtual ICollection<ChangeOrder> ChangeOrders { get; set; }
}

public class ChangeOrder
{
    [Key]
    public int ChangeOrderId { get; set; }
    public short Operation { get; set; } //0 - Add, 1- delete
    public int TargetExt { get; set; }
    public short Status { get; set; } //0- Pending, 1- Approved, 2- Denied
    public DateTime DtRequested { get; set; }
    public DateTime DtProcessed { get; set; }
    public DateTime DtChangesApplied { get; set; }
    public int EmployeeRequestID { get; set; }
    public virtual EmployeeRequest Request { get; set; }
 }

DbContextクラスは次のとおりです。

public class RequestsContext : DbContext
{
    public DbSet<EmployeeRequest> EmployeeRequests { get; set; }
    public DbSet<ChangeOrder> ChangeOrders { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    }
}

接続文字列:

<add name="RequestsContext" 
     providerName="System.Data.SqlClient" 
     connectionString="Data Source=(LocalDb);Database=Requests.mdf;Trusted_Connection=True"/>

ホストに接続できなかったというエラーが表示されます。

なぜこれが起こっているのかわかりません。何か案は?

4

2 に答える 2

1

接続文字列を DbContext ベースに渡します。

public class RequestsContext : DbContext
{
    public DbSet<EmployeeRequest> EmployeeRequests { get; set; }
    public DbSet<ChangeOrder> ChangeOrders { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    }

    public RequestsContext ()
    : base("RequestsContext")
    {}

}
于 2013-07-29T20:54:17.007 に答える
1

アプリケーションが .mdf ファイルの場所にアクセスできることを確認してください。アプリケーションが「myDocuments」などのタイプのフォルダーにある場合、アプリケーションはデフォルトでそのフォルダーにアクセスできない場合があります。

于 2013-07-29T20:55:05.547 に答える