有人可以向我解释.NET中的存储库模式,一步一步给出一个非常简单的示例或演示.
我知道这是一个非常常见的问题,但到目前为止我还没有找到满意的答案.
我有一个ASP.NET MVC 3应用程序.
我有Model,ViewModel,View,Controller.
我Ninject用作IoC.
我Controller使用a ViewModel将数据传递给View.
我已经开始使用Services(具体和接口类型)从中获取信息ViewModel并对数据库进行查询以对其进行操作.
我可以使用相同Service的设置ViewModel吗?或者这是否违背设计模式?
即我可以ViewModel在Service图层中抽象设置吗?
脚本
情景是; 我Model有很多对其他的引用Models,所以当我ViewModel在控制器中设置时,它是详细的,我觉得Controller这样做太多了.所以我希望能够做到这样的事情:
var vm = _serviceProvider.SetupViewModel(Guid model1Id, Guid model2Id, /*etc..*/)
看起来像这样的SetupViewModel函数ServiceProvider:
public MyModelViewModel SetupViewModel(Guid model1Id, Guid model2Id, /*etc...*/)
{
var vm = new MyModelViewModel();
var model1 = _repository.Model1s.FirstOrDefault(x => x.Id.Equals(model1Id)); …Run Code Online (Sandbox Code Playgroud)