2013-09-25 24 views
1

我创建了新的MVC 4 Web应用程序并试图运行它。但是我得到一些例外mvc中的LazyInitializer异常

LazyInitializer.EnsureInitialized(ref _initializer, ref _isInitialized, ref _initializerLock); 

,我无法浏览到注册或登录页面。我已经选择互联网应用

enter image description here

什么地方出了错。任何人都可以帮我

+0

数据库初始化出错。 – AgentFire

+0

@AgentFire我dint甚至添加了任何代码或修改。我刚刚创建了新的MVC应用程序并运行它 – Backtrack

+0

您的SQL Express数据库中可能存在错误,或者甚至缺少一个。你应该手动初始化你的数据库。 – AgentFire

回答

0

只需删除整行,你的应用程序将运行。如果你想安装的现有成员则是指此

LazyInitializer.EnsureInitialized(ref _initializer, ref _isInitialized, ref _initializerLock); 

Setting up existing membership with mvc4

+1

哪一行我不得不删除。解释一下 – Backtrack

+0

@whoah如果你删除了那个,那么你的应用程序将运行,你可以使用你自己的逻辑来执行登录,注册等。如果你不想删除,那么请参考我的答案中提到的链接。 –

-1

为99%的问题是在这里(当然不要删除此行):

删除此

WebSecurity.InitializeDatabaseConnection("DefaultConnection", "Users", "UserId", "UserName", autoCreateTables: true); 

@AgentFire在评论中说,你的数据库有问题。

你可以在Web.Confing中显示负责数据库连接的错误和行的trackstack?也可能是由于缺少SQL Express数据库而导致的错误。

+1

好的,我该如何克服这一点 – Backtrack

0

它是简单的只是去在ConnectionString标记你的web.config添加此标记用自己的ConnectionString

<add name="DefaultConnection" connectionString="Data Source=localhost;Initial Catalog=DatabaseName;Integrated Security=True" providerName="System.Data.SqlClient" />