0
ブリッジテーブルProductFeatureを使用して結合されたProductテーブルとFeatureテーブルがあります。以下は、これらの3つのテーブルの簡略版です。これらはうまく動作します。ここでは問題ありません。複数のテーブルを結合するブリッジテーブル
[Table("Products")]
public partial class ProductEntity
{
public int Id { get; set; }
public string Code { get; set; }
public ICollection<ProductFeatureEntity> productFeatures {get; set;}
}
[Table("Features")]
public partial class FeatureEntity
{
public int Id { get; set; }
public string Code { get; set; }
public ICollection<ProductFeatureEntity> productFeatures {get; set;}
}
[Table("ProductFeatures")]
public partial class ProductFeatureEntity
{
[Key, Column(Order = 1)]
public int ProductId { get; set; }
[Key, Column(Order = 2)]
public int FeatureId { get; set; }
public int SequenceNbr {get; set;}
public ProductEntity Product {get; set;}
public FeatureEntity Feature {get; set;}
}
今、同じブリッジテーブルをProductテーブル自体に追加できるようにする必要があります。別の言葉で言えば、「製品は複数の機能を持つことができます」から「製品は複数の機能を持つことができ、複数のサブ製品を持つこともできます」から変更する必要があります。 SequenceNbrフィールドで制御されるシーケンスを、各フィーチャーとサブプロダクトで知る必要があるため、同じブリッジテーブルを使用する必要があります。 EFでこれを行うことは可能ですか?
を私はちょうどそれができるようにすることであると思いますシーケンシング能力を失った自分自身を参照してください。 ProductFeatureテーブルには、SequenceNbrフィールドがあります。私はそのテーブルに製品を追加する必要があります。 –
これはProductEntity用であり、サブ製品を作成してParentIdを記入することができ、すべての製品またはサブ製品にProductFeatureEntityがあり、SequenceNbrフィールドが使用されます。 – AmirhosseinYari
サブ製品の順序をどのように知ることができますか?前述したように、製品は複数の機能とサブ製品を持つことができ、製品に付属する各機能またはサブ製品の順序はインポートです。たとえば、ProductAにはFeature2、Sub-product1、およびFeature1があります。私のプロセスでは、ProductAのために、Feature2が最初に来て、次がSub-Product1であり、次がFeature1であることを知る必要があります –