У меня было такое сегодня, и я нашел какое-то решение.
Я использую VS 2010 и сайт ASP.NET MVC 3, использующий Razor, работающий в IIS (не IIS Express или Cassini).
В моем случае эта ошибка возникла в моих представлениях .cshtml. Для любого вида, который я открыл, первая строка @using
была подчеркнута с ошибкой:
C: \ PathToMyCode \ PathToMyViews \ Index.cshtml: ошибка времени выполнения ASP.NET: не удалось загрузить файл или сборку 'VJSharpCodeProvider, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a' или одна из ее зависимостей. Произошла ошибка, связанная с безопасностью. (Исключение из HRESULT: 0x8013150A)
Были также странные ошибки на всей странице, такие как неоднозначные ссылки между двумя сборками с одинаковым именем (например, предположительно конфликт между "System.Web.Helpers" и "System.Web.Helpers").
Причина: Я управлял веб-сайтом под учетной записью пользователя, у которой не было достаточных разрешений. У этой учетной записи была роль IIS_IUSRS, но, очевидно, есть какая-то другая роль или доступ, который необходим для этого. работать, или ему может потребоваться доступ к определенной папке, к которой он не может добраться.
К сожалению, я не знаю, что это такое, и меня не волнует идея тратить часы, чтобы понять это, после того, как я потратил слишком много времени, пытаясь выяснить, как это произошло в первую очередь.
Но , предоставив этому пользователю роль Администраторы, устранил ошибку .
Я понимаю, что это не идеальное решение, но я надеюсь, что, по крайней мере, некоторые люди отклеятся. Если кто-то точно определит, какие разрешения необходимы для предотвращения этой ошибки, прокомментируйте ниже, и, возможно, мы сможем сузить его.