我正在创建一个演示应用程序来学习如何使用存储库模式来执行插入操作。我正在使用 Nop Commerce**(http://www.nopcommerce.com) **存储库模式的代码
Error:没有为此对象定义无参数构造函数
我看过这个链接:MVC:没有为此对象定义无参数构造函数
这是我的结构:
我的存储库界面:
public partial interface IRepository<T>
{
void Insert(T entity);
}
我的服务层:
public partial interface IEmployeeService
{
void InsertCategory(EmployeeMaster employeeMaster);
}
我的类将实现该接口(服务):
public partial class EmployeeService : IEmployeeService
{
#region Fields
private readonly IRepository<EmployeeMaster> _employeeMasterRepository;
#endregion
#region Ctor
public EmployeeService
(
IRepository<EmployeeMaster> employeeMasterRepository
)
{
this._employeeMasterRepository = employeeMasterRepository;
}
#endregion
public virtual void InsertCategory(EmployeeMaster employeeMaster)
{
if (employeeMaster == null)
throw new ArgumentNullException("employeeMaster");
_employeeMasterRepository.Insert(employeeMaster);
}
这是我的控制器:
public class HomeController : Controller
{
#region Fields
private readonly IEmployeeService _employeeService;
#endregion
#region Constructors
public HomeController
(
IEmployeeService employeeService
)
{
this._employeeService = employeeService;
}
#endregion
出现错误:没有为此对象定义无参数构造函数
我已经研究过这个错误,所有的消息来源都说使用依赖注入来解决这个错误。
有人可以指导我如何使用依赖注入来解决这个错误吗?
也许您正在以一个目前对您来说太复杂的项目作为示例。 Nopcommerce是一个大而全功能的产品,有很多元素,所以很容易迷失方向。这不是学习存储库模式如何工作的最佳示例,但我当然建议您在清楚了解基本概念以了解它们在实际场景中的使用后再次检查它。
NopCommerce 使用Autofac用于依赖注入,一个非常流行的 IoC 容器。你可以寻找一个名为DependencyRegistrar
在项目中Nop.Web.Framework
如果您对此感到好奇,请查看它是如何使用的。您可以在其存储库及其中获取有关如何使用 Autofac 进行依赖注入的更多示例入门指南.
我的建议是寻找一个更容易遵循的示例。对于初学者来说,任何流行的 IoC 容器都可以,直到您有自己的选择标准。例如,您可以按照Autofac 的 MVC 指南
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)