マップされたPOCOエンティティで作業することに疑問があります。 プロパティを含むエンティティがあります(このプロパティは、データベースにマップされる他のPOCOクラスです)。エンティティフレームワーク、マッピングされていないエンティティでの作業方法
public class BaseRepository<TEntity> : IBaseRepository<TEntity> where TEntity : class
{
internal readonly DbContext recuperadorContext;
internal readonly IDbSet<TEntity> dbSet;
public BaseRepository(DbContext context)
{
recuperadorContext = context;
dbSet = recuperadorContext.Set<TEntity>();
}
public TEntity Adicionar(TEntity obj)
{
var objReturn = dbSet.Add(obj);
return objReturn;
}
}
実装は次のとおりです:
私はこのリポジトリがで動作するように、一般的なエンティティを受け、一般的なリポジトリを持って
public class CupomFiscalRepository : BaseRepository<CupomFiscalDetalhes>
{
}
マッピングされていないエンティティとそのプロパティは以下の通りです:
public class CupomFiscalDetalhes
{
public Movimento Movimento { get; set; } //POCO class mapped
public Cliente ClienteCRM { get; set; } //POCO class mapped
public Vendedor Vendedor { get; set; } //POCO class mapped
}
CupomFiscalDetalhesにはマッピングされるテーブルがないので、EntityFrameworkにマップされているすべてのPOCOクラスをhtで動作させる必要がありますか? ジェネリックリポジトリを使用してこれらのデータをデータベースに保存する方法がわかりません。
CupomFiscalDetalhesにはいくつかのプロパティ(関連するテーブルを持つ他のクラス)がありますが、IBaseRepositoryを永続化するように実装するクラスのみがあり、CupomFiscalDetalhesは「結合」するクラスになります。情報の束、そう? – Maturano
あなたがしようとしているように聞こえます。コントローラクラスによっては、3つの関連エンティティのリポジトリを検索し、それらをクラスプロパティに割り当てます。 – robaudas