相关疑难解决方法(0)

在调用"WebSecurity"类的任何其他方法之前,必须调用"WebSecurity.InitializeDatabaseConnection"方法

每次我用Visual Studio重新启动Debugging时,我都会遇到这个怪异的错误:

在调用"WebSecurity"类的任何其他方法之前,必须调用"WebSecurity.InitializeDatabaseConnection"方法.此调用应放在站点根目录中的_AppStart.cshtml文件中.

但这是每次,当我部署应用程序生产时.我在这里随机地得到这个错误.

我把正确的标签:

[Authorize(Roles = "admin")]
[InitializeSimpleMembership]
public class IndexController : Controller
Run Code Online (Sandbox Code Playgroud)

到控制器,这是过滤器的方式.它只是不想工作.

using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Threading;
using System.Web.Mvc;
using MeetingTaskManagement.Models;
using WebMatrix.WebData;

namespace MeetingTaskManagement.Filters
{
    [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
    public sealed class InitializeSimpleMembershipAttribute : ActionFilterAttribute
    {
        private static SimpleMembershipInitializer _initializer;
        private static object _initializerLock = new object();
        private static bool _isInitialized;

        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            // Ensure ASP.NET Simple Membership is initialized only once per app …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asp.net-membership asp.net-mvc-4

22
推荐指数
2
解决办法
3万
查看次数