CMSのフィールドをいつ使用する必要があり、クラスプロパティとデータベースフィールドをいつ使用する必要がありますか?
私のシナリオ:フィールドusage(テキスト)とprice(double)を持つ製品コンテンツパーツを作成しました。次に、コンテンツタイプの製品を作成し、パーツを追加しました。
モデルで製品レコードを作成し、製品テーブルを追加することもできます。そして、ドライバーなどの部分。一見、プログラミングが必要なオプション2以外に違いはわかりません。
ただし、問題が発生しました。オプション2では、リポジトリを使用して、プログラムで多くのアイテムを作成できました。オプション1では、製品コンテンツアイテムを作成できましたが、製品パーツのフィールドに入力できませんでした(エラーはありませんが、フィールドは空のままです)
では、いつオプション1を使用し、いつオプション2を使用するのでしょうか。そして、オプション1に関する私の問題は、そのオプションに関連していますか?
編集:オプション1の問題の明確化
製品パーツを作成しました。productpartに、小数であるフィールド価格を追加し、テキストフィールドであるフィールドUsageofproductを追加しました。
コードには次のようなものがあります。
dynamic item = _cm.New("Product");
item.TitlePart.Title = "Mijn dummy product";
item.BodyPart.Text = "Some dummy text for this product";
item.ProductPart.Price.Value = new decimal(20.5);
item.ProductPart.Usage.Value = "Some dummy usage of this product";
_cm.Create(item);
コードを実行した後、製品は正しいタイトルと本文で作成されますが、UsageとPriceは空っぽになります。item.As<>メソッドでも試してみました。しかし、私はその名前のオブジェクトを作成していないので、それはAsにコンパイルされません。