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 – 使用JavaScript重新排列的ListBox元素
 - asp.net – 当绑定值包含冒号时,如何绑定GridVie
 - ASP.net WebAPI跨域调用问题的解决方法
 - asp.net-mvc – View中的意外NullReferenceExcep
 - iCalendar格式中关于RRule的解析和生成
 - 实体框架 – WebApi OData:$filter’any’或’a
 - asp.net-mvc – 使用AWS .NET SDK进行SNS订阅确认
 - asp.net-web-api2 – 在WebAPI2项目中加载System
 - 具有多个ASP.NET Web应用程序的Visual Studio解决
 - asp.net – axd和ashx处理程序之间的区别
 
