C# Can';t创建新控制器-对路径的访问被拒绝

C# Can';t创建新控制器-对路径的访问被拒绝,c#,asp.net,asp.net-mvc,entity-framework,C#,Asp.net,Asp.net Mvc,Entity Framework,这可能看起来像是一个重复的问题,但结果是不同的,修复对我不起作用 我正在使用Visual Studio Professional 2013。这是我第一个使用VS2013的项目,到目前为止我一直在使用VS2012 我正在尝试在ASP.NET MVC应用程序中创建新控制器。我使用的是EntityFramework5,代码优先(.NET4.5)。我希望Visual Studio为我创建模板 但是,每次尝试创建控制器时,都会收到以下错误消息: 运行所选代码生成器时出错:“访问” 路径 'C:\Users

这可能看起来像是一个重复的问题,但结果是不同的,修复对我不起作用

我正在使用Visual Studio Professional 2013。这是我第一个使用VS2013的项目,到目前为止我一直在使用VS2012

我正在尝试在ASP.NET MVC应用程序中创建新控制器。我使用的是EntityFramework5,代码优先(.NET4.5)。我希望Visual Studio为我创建模板

但是,每次尝试创建控制器时,都会收到以下错误消息:

运行所选代码生成器时出错:“访问” 路径 'C:\Users\MYUSERNAME\AppData\Local\Temp\SOMERANDOMGUID\System.Web.Mvc.dll' “被拒绝”

VS 2013中是否存在某种缺陷?我不明白这意味着什么,重启VS2013也无济于事。以下是我迄今为止尝试过的一些东西

  • 以管理员身份启动VS
  • 授予“所有人”对本地\Temp文件夹的读/写权限
  • 重新启动的计算机
  • 从bin文件夹中清理项目并删除项目
  • 卸载/重新安装System.Web.MVC(我也收到EntityFramework.dll的此错误)
  • 这是我的模型

    namespace TestApp.Models
    {
        public class Passenger
        {
            public int ID { get; set; }
            public string LastName { get; set; }
            public string FirstName { get; set; }
        }
    
        public class Ship
        {
            public int ID { get; set; }
            public string ShipName{ get; set; }
            public ICollection<Passenger> Passenger { get; set; }
        }
    }
    
    namespace TestApp.Models
    {
    公务舱乘客
    {
    公共int ID{get;set;}
    公共字符串LastName{get;set;}
    公共字符串名{get;set;}
    }
    公船
    {
    公共int ID{get;set;}
    公共字符串ShipName{get;set;}
    公共ICollection乘客{get;set;}
    }
    }
    
    当我尝试创建一个控制器时,一切都非常简单。我填写我的模型和上下文,然后单击添加

    当我点击“添加”时,我得到了对路径的讨厌访问被拒绝的错误


    如果您有任何帮助,我们将不胜感激。

    请检查该库是否被正在运行的进程锁定。如果是,您应该能够终止该进程,删除该文件夹(因为它是一个临时文件夹),然后重新开始。可能是*.svchost.exe正在阻止它。这似乎是Windows文件系统对锁定文件的默认错误响应。

    我在Mircosoft.Web.Infrastructure.dll中遇到了类似问题,我使用以下软件包管理器命令解决了这个问题:

    更新包-重新安装Microsoft.Web.Infrastructure

    它基本上是卸载/安装软件包。注意:如果您尝试从NuGet GUI手动卸载,由于依赖关系,它将不允许您卸载某些软件包,因此我建议使用上面列出的console with命令

    有关更多信息,请查看此处:

    尝试禁用防病毒程序。将entityframework更新至其最新版本6.0,然后重试。通过添加具有所有权限的everyone用户重试一次,以避免权限相关问题。另外,请使用应用程序错误事件日志查看器重新检查以发现问题