1

データベースに連絡先テーブルがあります。

ContactID (int)
FirstName (varchar)
LastName (varchar)
...
XmlFields (xml) // This field is xml type

新しい連絡先を作成するために、2つのクラスを作成しました。1つは通常のフィールド用で、もう1つはフィールドからXmlFieldsフィールドを表示するためのものです。

コントローラーでは、次のようになります。

public ActionResult Create(Contact contact, FormCollection collection)
...

オブジェクトでキャッチする通常のフィールドと、オブジェクトでキャッチしようとするcontactxmlとして保存する必要があるフィールド。問題は、 オブジェクトがすべてのフィールドをキャッチすることです。特定のオブジェクトに投稿するときにxmlフィールドを分離して、それらを簡単に操作できるようにすることは可能かどうか疑問に思います。これらのxmlフィールドは動的に生成され、ユーザーごとに異なるため、これは個別のオブジェクトで必要です。XmlFieldscollectioncollection

よろしくお願いします、
イル

4

1 に答える 1

2

次のようにフィールドを区切ることができます。

public ActionResult Create(int ContactID, string FirstName)

そして、生データをXMLに渡します...カスタムモデルバインダーの作成を検討しない限り、MVCがどのデータをどこにプッシュするかを自動的に知る方法はありません:http://davidhayden.com/blog/dave/ archive / 2008/09/08/CustomModelBinderMoreUIValidationASPNETMVC.aspxこれは別の有効なオプションです。

HTH。

于 2010-04-30T11:55:17.263 に答える