私は、製品のエンティティおよび製品のシリーズ、ファミリ、ブランドなどの関連エンティティを持つエンティティフレームワークコードをリファクタリングしようとしています。シリーズ、ファミリ、ブランドのエンティティはすべて、IdおよびTextプロパティ。これら2つの方法を1にリファクタリングするにはどうすればよいですか?
以下の2つのメソッドは非常に似ており、1つのメソッドにリファクタリングできるはずですが、どのエンティティからどのエンティティをクエリしているかを動的に渡す方法がわかりません。この場合、db.ProductFamiliesまたはdb.ProductSeriesSetを渡すことができる必要があります。どのようにこれらの2を作るためのアイデアは1になる?
ありがとうございます!
public DTOs.ProductCollection GetFamily(int id)
{
using (Entities db = new Entities())
{
var fam = (from collection in db.ProductFamilies.Include("Product")
.Include("Product.Stuff1")
.Include("Product.Stuff2")
where collection.Id == id
select collection).FirstOrDefault();
return ProductCollectionEFToProductCollectionDTO(fam, true);
}
}
public DTOs.ProductCollection GetSeries(int id)
{
using (Entities db = new Entities())
{
var ser = (from collection in db.ProductSeriesSet.Include("Product")
.Include("Product.Stuff1")
.Include("Product.Stuff2")
where collection.Id == id
select collection).FirstOrDefault();
return ProductCollectionEFToProductCollectionDTO(ser, true);
}
}
ProductSeriesSetまたはProductFamiliesから照会するfrom節にある違いを処理するにはどうすればよいですか? –
私は気づかなかった、はい、あなたのものが私のものよりも優れています。 –