私はいくつかのクラスを持つ製品エンティティを持っています(各製品タイプには数千種類の製品タイプのフィールドがあります)。 1つの製品クラスは、「ハンドル長さ」、「ヘッド重量」などのフィールドを有するハンマーであり得る。別のものは、「クッション材料」、「ボックススプリング」などのフィールドを有する椅子であり得る。顧客は、イメージカタログへのキーワードとほぼ同じです。これらは検索フィールドになりますが、製品には製品クラスに対応する特定のフォームがあるため、一般的なテキスト検索は使用しません。に最善のことは次のようになりリポジトリを構築する方法部品の配列を持つエンティティ
Product.Desc["HandleLength"]
Product.Desc["HeadWeight"]
Product.Image["FrontFace"]
Product.Price["RetailCost"]
Product.Price["ManufacturersSalePrice"]
:私は単純化でき
Product.Desc.HandleLength
Product.Desc.HeadWeight
Product.Image.FrontFace
Product.Price.RetailCost
Product.Price.ManufacturersSalePrice
:
製品は次のように説明、画像、および価格の分野の3種類の中でブレークダウンリポジトリエンティティを、変化する3つのコンテンツの配列を持つオブジェクトにしますか?このようなオブジェクトを表現するための良いアイデアはありますか?私は何らかの種類の「工場レポジトリ」を検討していました。
驚くべき知覚。私はどのようにテーブル内のクラスを構築するのが好きです。さて、あなたはこれらのクラスを反映するためにリポジトリをどのように設計しますか?リポジトリにメタデータを読み込ませて、ファクトリパターン(ビルダー)のように、その場でオブジェクトをアセンブルしてもらえますか? –