Жоден із перерахованого вище не працював і для мене;
- Dlls було встановлено на Copy Local
- Додавання просторів імен до обох web.configs нічого не зробило
- Додавання посилань на збірку до system.web \ compilation \ assemblies також не допомогло (хоча я не видалив ці посилання, тому, можливо, вони теж потрібні)
Але я нарешті знайшов щось, що працювало на мене:
Це було тому, що у мене був вихідний збірник bin \ Debug \ для налаштування налагодження та bin \ Release \ для конфігурацій Release. Як тільки я змінив конфігурацію збірки на "бін \" для всіх конфігурацій (відповідно до зображення нижче), тоді все почало працювати як слід !!!
Я поняття не маю, чому розділення ваших збірок на папки Release і Debug повинно порушити синтаксис Razor, але, здається, це відбувається через те, що щось не могло знайти збірки. Для мене проекти, які мали проблеми з синтаксисом бритви, - це фактично проекти моєї «бібліотеки бритв». Вони задаються як прикладні проекти, однак я використовую їх як бібліотеки класів з RazorGenerator для складання моїх поглядів. Коли я насправді намагався запустити один із цих проектів безпосередньо, це спричинило таку помилку конфігурації:
Не вдалося завантажити файл або збірку "System.Web.Helpers, Версія = 3.0.0.0, Культура = нейтральна, PublicKeyToken = 31bf3856ad364e35" або одна з її залежностей. Система не може знайти вказаний файл.
Це підштовхує мене до спроби змінити вихідний збір, оскільки я помічаю, що для всіх веб-проектів здається, що вихідний вихід завжди знаходиться безпосередньо у папці bin, на відміну від бібліотек класів за замовчуванням, у яких є папки випуску та налагодження.