asp.net-mvc – MVC错误 – 传入字典的模型项目的类型为“System.Collections.Gener
我不知道这个错误发生了什么: 传入字典的模型项目的类型为“System.Collections.Generic.List1 [RepositoryExample.Employee]”,但是该字典需要一个类型为“RepositoryExample.Models.IEmployeeManagerRepository”的模型项. 当我转到索引视图时,我收到错误.我从控制器添加了索引视图,但没有代码.我使用Linq到SQL. @model RepositoryExample.Models.IEmployeeManagerRepository @{ ViewBag.Title = "Index"; } <h2>Index</h2> 这是我的代码: EmployeeController.cs // GET: /Employee/ public ActionResult Index() { return View(_repository.ListEmployees()); } LinqEmployeeManagerRepository.cs public class LinqEmployeeManagerRepository: RepositoryExample.Models.IEmployeeManagerRepository { private DeptDirectoryDataClassesDataContext _db = new DeptDirectoryDataClassesDataContext(); public Employee GetEmployee(string UserName) { return (from e in _db.Employees where e.UserName == UserName select e).FirstOrDefault(); } public IEnumerable<Employee> ListEmployees() { return _db.Employees.ToList(); } public Employee CreateEmployee(Employee employeeToCreate) { _db.Employees.InsertOnSubmit(employeeToCreate); _db.SubmitChanges(); return employeeToCreate; } public Employee EditEmployee(Employee employeeToEdit) { var OriginalEmployee = GetEmployee(employeeToEdit.UserName); _db.Employees.Attach(employeeToEdit,OriginalEmployee); _db.SubmitChanges(); return employeeToEdit; } public void DeleteEmployee(Employee employeeToDelete) { var OriginalEmployee = GetEmployee(employeeToDelete.UserName); _db.Employees.DeleteOnSubmit(OriginalEmployee); _db.SubmitChanges(); } } IEmployeeManagerRepository.cs namespace RepositoryExample.Models { public interface IEmployeeManagerRepository { Employee CreateEmployee(Employee employeeToCreate); void DeleteEmployee(Employee employeeToDelete); Employee EditEmployee(Employee employeeToUpdate); Employee GetEmployee(string UserName); IEnumerable<Employee> ListEmployees(); } } 任何想法我做错了什么?我试图按照本教程中的Repository模式的例子(http://www.asp.net/mvc/tutorials/iteration-4-make-the-application-loosely-coupled-cs) 解决方法在您的Index.cshtml视图的顶部替换:@model RepositoryExample.Models.IEmployeeManagerRepository 有: @model IEnumerable<RepositoryExample.Employee> _repository.ListEmployees()方法返回IEnumerable< Employee>这就是你在这里的观点: return View(_repository.ListEmployees()); 这就是您在视图中的@model指令中应该使用的类型. (编辑:百色站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 使用IIS7.5将网站中的URL绑定到另一个网站控
- ASP.NET成员:拒绝用户阻止CSS,页面无法正确呈现?
- asp.net – 如何在MVC 3中设置图表系列颜色?
- asp.net-mvc – ASP.NET MVC:部分知道它是否是从另一个页面
- asp.net-mvc-3 – 剃刀引擎 – 如何根据不同的条件渲染不同
- asp.net-core – .net核心自定义身份验证中的User.Identity
- ASP.NET MVC编辑器模板和Html.EditorFor(…) – 如何消除类
- asp.net – Umbraco CMS(.NET):加载xslt /用户控件的日志错
- asp.net – WebFormsMVP的缺点?
- 优化 – 字典/客户端VS应用程序变量
- asp.net – 启用Application Insights会使Web应用
- asp.net-mvc-3 – 在MVC Razor View中使用If语句
- 有没有办法将内部控件放在ASP.NET自定义控件中?
- asp.net-mvc – 为什么MVC4捆绑捆绑Knockout.js?
- asp.net-web-api – ASP身份OAuth令牌 – 我应该
- asp.net-mvc – 如何使用Visual Studio 2013和En
- asp.net-mvc-2 – 在名称中使用连字符处理MVC2变
- asp.net-mvc – mvc razor @helper可以返回非编码
- 在对ASP.NET MVC Action的AJAX请求期间有网络请求
- asp.net-mvc – ASP.NET MVC Beta 1:DefaultMod