3

DAL を構築する必要があるデータベースは、複数のスキーマで設計されているため、いくつかの問題が発生しています。

たとえば、これらのテーブルを 2 つの個別のスキーマ (サプライヤー、取引) 内にあるとします。

  • Suppliers.Suppliers
  • 仕入先.種類
  • 取引.取引
  • 取引.タイプ

私はC#で持っています

namespace Data.Entities.Suppliers 
{
    public class Suppliers { /* properties mapped to fields in Sql Server table Suppliers .Suppliers */ }
    public class Types { /* properties mapped to fields in Sql Server table Suppliers .Types */ }
}

namespace Data.Entities.Deals
{
    public class Deals { /* properties mapped to fields in Sql Server table Deals.Deals */ }
    public class Types { /* properties mapped to fields in Sql Server table Deals.Types */ }
}


namespace Data.Repositories 
{
    public class EfDataContext: DbContext 
    {
        public DbSet<Suppliers.Suppliers> Suppliers { get; set; }
        public DbSet<Suppliers.Types> SupplierTypes { get; set; }
        public DbSet<Deals.Deals> Deals{ get; set; }
        public DbSet<Deals.Types> DealTypes { get; set; }
    }
}

しかし、EF は「タイプ」という名前の 2 つのものがあることにつまずいています。DbSet のみを使用して 2 つを明確にするにはどうすればよいですか?

注: .edmx ファイルを使用しないようにしています。

4

1 に答える 1

0

スキーマを指定するには、クラス (http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.tableattribute(v=vs.103).aspx) で TableAttribute を使用するか、流暢を使用してモデルを構成します。 ToTable() メソッドを使用した api (http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.tableattribute(v=vs.103).aspx)

于 2012-05-04T17:15:47.420 に答える