ビューのタイプの通知がないコントローラでupdateModelを使いたいです。 異なるタイプの異なるビューを持っていますが、すべて継承型としてExternalBaseクラスを持っています。MVC Controller of view of UpdateModel
私のコントローラでは、私は常にExternalBaseを持っていますが、コントローラは正しいタイプを認識していません。
私は正しいオブジェクトを取得するメソッドを呼び出して保存しますが、これをexternalBaseとして返します。 innertypeは私の正しいタイプです。オブジェクトにカーソルを合わせると、保存を呼び出すビューのタイプになります。これでupdateModelを呼び出すと、プロパティが埋め込まれません。一例として、
:MyExternalBaseは空のクラス
クラスperson保存上の私のコントローラで
public class Person
: MyExternalBase
{
public string FirstName { get; set; }
public string LastName { get; set; }
public List<TheParameters> Parameters { get; set; }
public Address Address { get; set; }
public TheParameters[] OtherParameters { get; set; }
}
public class Address
{
public string Street { get; set; }
public string City { get; set; }
public string State { get; set; }
public TheParameters Parameter { get; set; }
}
public class TheParameters
{
public string Parameter { get; set; }
}
ある
//私は、次の手順を実行します
MyExternalBase p = new Person();
UpdateModel(p, "Person", form.ToValueProvider());
これでpは満たされません。
代わりにPerson p = new Person()を使用すると問題ありません。しかし私は私のコントローラがビューの種類に依存しないようにしたい。
これはupdateModelのエラーですか、それとも不可能なことですか? それを回避する方法はありますか?
[回答はこちら](http://stackoverflow.com/questions/649733/mvc-controller-independent-of-type-of-view-updatemodel/3113012#3113012) – bzlm