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文件后缀名随心所欲
- asp.net操作xml增删改示例分享
- 在ASP.NET中拒绝用户时,’CustomIdentity’上的Serializati
- asp.net – 我如何使用AJAX来确定用户的会话是否已过期,然后
- asp.net – Azure可以运行WPF吗?
- asp.net-mvc – MVC 5:Asp.net身份:如何建模UserRole
- asp.net中一个linq分页实现代码
- asp.net-mvc – 通过Gitignore递归地包含Nuget DLL
- ASP.net WebAPI跨域调用问题的解决方法
- ASP.NET汉字转拼音 - 输入汉字获取其拼音的具体实现
- asp.net – FF和IE不从CSS加载img src
- asp.net – 网站随时随地突破
- asp.net-mvc – 带vNext的MVC 6:我们还需要Glob
- asp.net-mvc – ASP.NET Web Api – 将对象发布到
- asp.net-mvc – Nhibernate / MVC:在View中处理
- asp.net-core – 编译netcoreapp1.0,代码包含#if
- ASP.NET 5针对dnx451 / dnx46性能
- asp.net-mvc – 如何设置AntiForgeryToken cooki
- asp.net-mvc-4 – 全局过滤器MVC 4的执行顺序是什
- asp.net-mvc-4 – MVC 4 Razor如果拆分div标签
