Ich versuche, ein benutzerdefiniertes Modellbinder zu schreiben, aber ich habe große Schwierigkeit, herauszufinden, wie komplexe komplexe Objekte gebunden werden.Benutzerdefiniertes Modellbinder für komplexe zusammengesetzte Objekte HELP
ist dies die Klasse I zu binden bin versucht:
public class Fund
{
public int Id { get; set; }
public string Name { get; set; }
public List<FundAllocation> FundAllocations { get; set; }
}
und das ist, wie mein Versuch, das benutzerdefinierte Binder Schreiben wie folgt aussieht:
public class FundModelBinder : IModelBinder
{
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
throw new NotImplementedException();
}
public object GetValue(ControllerContext controllerContext, string modelName, Type modelType, ModelStateDictionary modelState)
{
var fund = new Fund();
fund.Id = int.Parse(controllerContext.HttpContext.Request.Form["Id"]);
fund.Name = controllerContext.HttpContext.Request.Form["Name"];
//i don't know how to bind to the list property :(
fund.FundItems[0].Catalogue.Id = controllerContext.HttpContext.Request.Form["FundItem.Catalogue.Id"];
return fund;
}
}
Irgendwelche Ideen
danke Tony
Ich habe gerade eine Frage gestellt und dann schließlich eine Lösung für diese Art von Problem gefunden. Für diejenigen, die interessiert sind, können Sie den folgenden Link überprüfen: [http://stackoverflow.com/questions/1077481/how-doi-i-pass-a-dictionary-as-a-parameter-to-an-actionresult -method-from-jquery-a] (http://stackoverflow.com/questions/1077481/how-doi-i-pass-a-dictionary-as-a-parameter-to-an-actionresult-method-from- jquery-a) –