Razorengine "Невозможно скомпилировать шаблон. Проверьте список ошибок для деталей." - PullRequest
1 голос
/ 17 ноября 2011

Я использую "Razorengine" для генерации тела электронной почты из шаблона cshtml. При запуске приложения в режиме отладки (VS 2010) все работает хорошо. Шаблон отображается хорошо, и все данные из модели вставляются как требуется.

Но когда я публикую приложение. на мой локальный сервер IIS (win 7 pro) я получаю сообщение об ошибке «не удается скомпилировать ...» При публикации на работающем сервере IIS (онлайн-хостинг) появляется другая ошибка («Инициализатор типа для RazorEngine.Razor вызвал исключение»)

Шаблон cshtml начинается с

@inherits "RazorEngine.Templating.TemplateBase <Ebits.EnrolmentLCMT.Core.boekingBeheer.resumeBoekingObject>

содержит таблицы стилей, теги html и razor, относящиеся к модели

Это я называю в своем коде:

resumeBoekingObject resumeBoeking = boekingBeheer.getBoekingResume(boeking, taal);
string mailBodyTemplate = System.IO.File.ReadAllText(HttpContext.Current.Server.MapPath("../htmlPages/confirmMailTemplate.cshtml"));
string mailBodyTekst = Razor.Parse<resumeBoekingObject>(mailBodyTemplate, resumeBoeking);

!! Я уверен, что шаблон хорошо читается, потому что я использовал его как bodytekst в своей почте.

Любые идеи кто-нибудь.

Большое спасибо

1 Ответ

0 голосов
/ 02 февраля 2012

Для вашего действующего сервера IIS вы, скорее всего, не хватает DLL MVC3 в вашем развертывании (я думаю, System.Web.Razor.dll). Проверьте GAC (C: \ Windows \ assembly) на наличие файла, который он перечисляет в неразмещенной части вашей ошибки, и проверьте каталог BIN на наличие отсутствующего файла.

Сегодня вечером я столкнулся с подобной проблемой и нашел соответствующую информацию здесь: http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx

...