我有下面的表MVC3继承问题
- 业务(包含所有公共字段)
- Business_Hotel数据库(包含特定于酒店领域)
- Business_Restaraunt(包含特定领域Restaraunts)
- Business_Airport(包含特定于机场场)
我使用这些模型在EF传承。
- 业务(碱)
- 酒店(从商家继承)
- Restaraunts(从商家继承)
- 机场(从商家继承)
我创建的控制器,与所述控制器在VS2010中使用基本实体(商业)创建向导
我想重新使用相同的创建所有三种类型的行动。
[HttpPost]
public ActionResult CreateHotel(Business business)
{
if (ModelState.IsValid)
{
db.Businesses.AddObject(business);
db.SaveChanges();
return RedirectToAction("Index");
}
如果我修改函数,如波纹管它不正确地创建的类型酒店
public ActionResult CreateHotel(Hotels business)
业务所以,问题是我怎么能做到这一点动态。有一个更好的方法吗?
并非总是如此,请考虑这种情况。一个动作可以作为多种类型客户端(silverlight,mvc)的单点联系人,现在用于增加功能,没有人愿意调用新动作,主要是,需求是使用与某些动作相同的动作更多的附加参数。在这种情况下,构建器模式非常方便,代码复杂度很低。但是关注点的分离仍然完好无损,因为构建器逻辑被移出控制器。 –