无参数构造函数错误
Parameterless Constructor error
您好,我正在 Global.ascx 中像这样初始化界面
private static SimpleMembershipInitializer _initializer;
private static object _initializerLock = new object();
private static bool _isInitialized;
public SimpleMembershipInitializer(IAccountHelper iAccountHelper)
{
_accountHelper = iAccountHelper;
_accountHelper.SimpleMembershipInitializer();
}
#endregion
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
SimpleInjector.SetupDependencyInjection();
// Ensure ASP.NET Simple Membership is initialized only once per app start
LazyInitializer.EnsureInitialized(ref _initializer, ref _isInitialized, ref _initializerLock);
}
但是我收到一个错误
The lazily-initialized type does not have a public, parameterless constructor.
我做错了什么?
或者,如果我用以下内容更改代码
public SimpleMembershipInitializer()
{
_accountHelper = new AccountHelper();
_accountHelper.SimpleMembershipInitializer();
}
代码运行良好。
任何人都可以告诉我出现错误的代码有什么问题。
如有任何帮助,我们将不胜感激。
提前致谢
LazyInitializer.EnsureInitialized
需要您的 class 具有 public 无参数构造函数。如果您的 class 构造函数有参数,那么初始化程序不知道如何获取或实例化这些参数。
我推荐你使用依赖注入库来初始化你的依赖。
您好,我正在 Global.ascx 中像这样初始化界面
private static SimpleMembershipInitializer _initializer;
private static object _initializerLock = new object();
private static bool _isInitialized;
public SimpleMembershipInitializer(IAccountHelper iAccountHelper)
{
_accountHelper = iAccountHelper;
_accountHelper.SimpleMembershipInitializer();
}
#endregion
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
SimpleInjector.SetupDependencyInjection();
// Ensure ASP.NET Simple Membership is initialized only once per app start
LazyInitializer.EnsureInitialized(ref _initializer, ref _isInitialized, ref _initializerLock);
}
但是我收到一个错误
The lazily-initialized type does not have a public, parameterless constructor.
我做错了什么?
或者,如果我用以下内容更改代码
public SimpleMembershipInitializer()
{
_accountHelper = new AccountHelper();
_accountHelper.SimpleMembershipInitializer();
}
代码运行良好。
任何人都可以告诉我出现错误的代码有什么问题。
如有任何帮助,我们将不胜感激。
提前致谢
LazyInitializer.EnsureInitialized
需要您的 class 具有 public 无参数构造函数。如果您的 class 构造函数有参数,那么初始化程序不知道如何获取或实例化这些参数。
我推荐你使用依赖注入库来初始化你的依赖。