Skip to content

Latest commit

 

History

History
14 lines (13 loc) · 2.18 KB

2009-03-14-modelbinding-complex-entity-framework.markdown

File metadata and controls

14 lines (13 loc) · 2.18 KB
layout title date tags
post386
Modelbinding a complex entity framework/Linq to Sql model to asp.net mvc
2009-03-14 06:41:00 +0100
asp.net_mvc c# Entity_Framework Linq_to_Sql

For a couple of days now I've been trying to "ModelBind" a more complex model (based on the Entity framework) to a controller action. The problems I've been having are mostly related to the amount of code for this task. I'm therefore thinking of ways to reduce the complexity. The main problem is that it's not directly possible to bind to ordinary EF/LS-graphs.

  1. Separate object graph. One solution could be to have a separate object graph for use in with the view. That seems more than wastefull since we want to edit everything on this page and thus end up having to maintain extra objects when we have the EF/LS ones.
  2. A revised binding to the EF/LS objects. If my modelbinder treated the EF/LS objects in the correct maner then my problems would be solved. Problem is though that I need connected objects in the binding. That implies a UpdateModel pattern with the object context visible from the controller. Not a beautiful solution though.
I've written a small asp.net mvc application with a simple (complex model). I've a main entity Smurf. The Smurf entity has several SmurfChild records related to it:


















The model binding I'm trying to do is the following:
public ActionResult EditAll_CustomBinder([ModelBinder(typeof(SmurfListBinder))]IList smurfs)
I'm editing a list of smurfs and the related smurf children in the view.