首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InitializeSimpleMembershipAttribute返回TargetInvocationException

InitializeSimpleMembershipAttribute返回TargetInvocationException
EN

Stack Overflow用户
提问于 2013-03-07 02:36:31
回答 1查看 1K关注 0票数 0

我仍然是一个相对缺乏经验的视觉工作室和C#,所以请让我知道,如果必要的信息没有提供或我在我的描述不清楚。

我在Visual Studio 2010 Web Developer Express中有一个MVC 4项目,我正在尝试设置基本窗体身份验证。我已经使用ASP.NET配置管理器设置了两个测试用户和角色。配置管理器还在项目中包含的my App_data文件夹中创建了ASPNETDB.MDF数据库。

我目前使用的是生成的AccountController和Account视图。

每当我尝试访问具有Authorize属性的HTTPGET或HTTPPOST方法时,InitializeSimpleMembershipAttribute类中的以下方法都会抛出TargetInvocationException:

代码语言:javascript
复制
public override void OnActionExecuting(ActionExecutingContext filterContext) 
{
    // Ensure ASP.NET Simple Membership is initialized only once per app start 
    LazyInitializer.EnsureInitialized(ref _initializer, ref _isInitialized, ref _initializerLock);
}

查看异常的详细信息时,内部异常声明“无法初始化ASP.NET简单成员资格数据库”。

上述内部异常的内部异常声明它“找不到”给定模型的概念模型类型。

找不到的模型属于从数据库生成的ADO.Net .edmx文件。它找不到的模型按字母顺序是数据库中的第一个表/类,因此它可能也适用于该数据库中的每个类。

我不确定这是否重要,但我使用一个独立于ASPNETDB.MDF的数据库来存储网站上输入的信息。

我不明白为什么LazyInitializer.EnsureInitialized()方法会导致这个问题。

EN

回答 1

Stack Overflow用户

发布于 2013-03-07 03:47:44

您是否检查了Global.asax.cs Application_Start()WebSecurity.InitializeDatabaseConnection使用的连接字符串-这可能会导致问题。

如果命名连接字符串正确,您是否确定dbContext连接字符串正确:

代码语言:javascript
复制
public SomeContext(): base("MyConnectionStringName")
{
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15255298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档