0

選択した値に基づいて何らかのタイプのインスタンスを作成したいので、jquery.ajax() メソッドを使用して URL 経由でこのタイプの名前を文字列として渡し、リフレクションを使用してこのタイプのインスタンスを作成します。

しかし、私はこのアプローチについて心配しています。

ModelBindingカスタムTypeConverterまたは[FromUri]属性で実装できることを知っています。そして、オブジェクト フィールドを初期化するためにいくつかのデータを渡します。

問題は、私のタイプにはデフォルトの空のコンストラクターがあり、フィールドを初期化する必要がないことです。

パラメータを指定せずに、url または http 本文を介して複雑なオブジェクトのインスタンスを渡すにはどうすればよいですか?

4

1 に答える 1

0


Activator.CreateInstanceを呼び出す独自のカスタム モデル バインダーを実装する必要があります。次に、MoldeBindingAttribute をアクションに適用する必要があります。アクション自体で、オブジェクト型のパラメーターを宣言する必要があります (コンパイル時に型がわからないため)。それがあなたの要求を達成する唯一の方法です。

于 2013-09-03T10:22:25.750 に答える