В моем App_code есть вспомогательная функция с именем FormatTelephone(string number) в Formatter.cshtml.Я попытался получить доступ к нему в частичном представлении @Formatter.FormatTelephone(number).Когда я проверяю его, он говорит:
App_code
FormatTelephone(string number)
Formatter.cshtml
@Formatter.FormatTelephone(number)
Сообщение об ошибке компилятора: CS0103: имя «Formatter» не существует в текущем контексте
Какова вероятная причина?Спасибо!
Я столкнулся с этой проблемой при развертывании сайта на другом сервере. Убедитесь, что файл App_Code / Formatter.cshtml фактически скопирован на сервер! Моя ошибка заключалась в том, что у файла есть действие по сборке, которое было установлено на ' Нет '. Щелкните правой кнопкой мыши файл и выберите «Свойства», а затем установите для параметра «Действие при сборке» значение « Содержимое ».
Примечание:
Если у вас не установлен asp.net mvc 3/4, убедитесь, что в папке bin находятся следующие dll.
Скотт Хансельман имеет пост в блоге о том, что может быть причиной вашей проблемы. BIN Развертывание ASP.NET MVC 3 с Razor на Windows Server без установленного MVC
У меня работает ~/App_Code/Formatter.cshtml:
~/App_Code/Formatter.cshtml
@helper FormatTelephone(string number) { <div>Formatted @number</div> }
, а затем в некотором представлении:
@Formatter.FormatTelephone("123")