c# – 如何使用一个控制器处理大量派生模型
发布时间:2020-12-15 22:12:53 所属栏目:百科 来源:网络整理
导读:我正在使用ASP.NET MVC,我有几个模型类都派生自父对象.我想在一个控制器动作中处理所有这些模型,因为它们几乎完全相同,除了一些数据字段.我想将它们保存到数据库中.我怎样才能实现这样的行为? 例: class ParentModel {...} class ChildModel1 : ParentMode
我正在使用ASP.NET MVC,我有几个模型类都派生自父对象.我想在一个控制器动作中处理所有这些模型,因为它们几乎完全相同,除了一些数据字段.我想将它们保存到数据库中.我怎样才能实现这样的行为?
例: class ParentModel {...} class ChildModel1 : ParentModel {...} class ChildModel2 : ParentModel {...} class ChildModel3 : ParentModel {...} class ChildModel4 : ParentModel {...} public class ModelController : Controller { //But with this I want to handle all the child objects as well //And add them automatically to the database. public ActionResult Add(ParentModel model) { db.ParentModel.Add(model); } } 解决方法
您应该创建一个ViewModel类,例如:
public class viewmodel { public ChildModel1 childModel1 { get; set; } public ChildModel2 childModel2 { get; set; } public ChildModel3 childModel3 { get; set; } public ChildModel4 childModel4 { get; set; } } 然后创建一个视图模型对象: viewmodel v = new viewmodel(); 现在您可以将子模型添加到视图模型中: v.childModel1 = yourchildmodel1; v.childModel2 = yourchildmodel2; v.childModel3 = yourchildmodel3; v.childModel4 = yourchildmodel4; 现在你可以通过这个模型. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ruby-on-rails – Ruby排序依据(整数)“NilClass与3200的比
- ios – 更新标签需要太长时间(快速)
- ruby-on-rails – 在rails上的ruby中将数组存储在数据库中
- 从 setState promise 化的探讨 体会 React 团队设计思想
- Flex中的initialize,creationComplete,applicationComplete
- c# – ReSharper使用属性设置XML注释中的间距
- React生命周期
- Cocos2d-x lua shader使用
- Binary XML file line #8: Error inflating class android.
- PostgreSQL学习手册(索引)