2014-02-23 73 views
3

这看起来像是一个重复的问题,但是结果却不一样,修复程序对我无效。无法创建新的控制器 - 访问路径被拒绝

我正在使用Visual Studio Professional 2013.这是我使用VS2013的第一个项目,在此之前我一直在使用VS2012。

我试图在我的ASP.NET MVC应用程序中创建一个新的控制器。我首先使用实体​​框架5(.NET 4.5)。我想让Visual Studio为我创建模板。

然而,每次我试图创建控制器我收到以下错误信息:

运行已选择的代码生成一个错误:“访问 路径 ” C:\用户\ MyUserName输入\应用程序数据\本地的\ Temp \ SOMERANDOMGUID \ System.Web.Mvc.dll程序 ' 被拒绝'

有没有在VS 2013的一些类型的错误?我无法弄清楚这意味着什么,重新启动VS2013没有帮助。以下是我迄今尝试的一些事情。

  1. 启动VS作为管理员
  2. 给了“所有人”读/写权限的本地\ Temp文件夹
  3. 计算机重新启动后
  4. 清理项目和已删除项目从bin文件夹的
  5. 卸载/重新安装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; } 
    } 
} 

当我尝试创建控制器时,一切都非常简单。我填写我的模型和我的上下文,然后单击添加。

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

任何帮助,这将不胜感激。

+0

尝试禁用防病毒程序。 – SLaks

+0

将entityframework更新到其最新版本6.0并尝试。 – Kaf

+0

尝试添加所有权限的所有用户以避免与权限相关的问题。此外,重新检查与应用程序错误事件日志查看器遇到问题 –

回答

0

我有一个类似的问题与Mircosoft.Web.Infrastructure.dll,我决定使用下面的包管理器命令:

更新包-reinstall Microsoft.Web.Infrastructure

,它基本上是卸载/安装软件包。注意:如果您尝试从NuGet GUI进行手动卸载,由于依赖性,它不会允许您使用某些软件包,所以我建议使用上面列出的命令使用控制台。

欲了解更多信息请看这里: http://docs.nuget.org/docs/workflows/reinstalling-packages

0

检查并查看该库是否被正在运行的进程锁定。如果是这样,你应该能够杀死进程,删除文件夹(因为它是一个临时文件夹),然后重新开始。也许* .svchost.exe会阻止它。这看起来像是锁定文件的Windows文件系统默认错误响应。