SlowCheetah - заставить его работать

Я пытался использовать расширение SlowCheetah, но я не могу заставить его работать. Я думаю, что я мог где-то пропустить шаг.

Я скачал расширение и установил его. Я создал свой файл web.config и сделал "добавить преобразование"

Чтобы проверить это, я уже использовал ELmah в своем проекте, поэтому я попытался назначить ему другой адрес электронной почты для отправки журнала ошибок для каждой конфигурации, и ни одного в файле web.config.

web.config

<elmah>
    <security allowRemoteAccess="0"/>
    <errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="C:\myLogPath"/>
    <errorFilter>
      <test>
        <or>
          <equal binding="HttpStatusCode" value="404" type="Int32"/>
          <is-type binding="BaseException" type="System.FieldAccessException" />
        </or>
      </test>
    </errorFilter>
</elmah>

web.debug.config

<elmah>
    <errorMail from="error-debug@domain.tld" to="me@domain.tld" priority="High" xdt:Transform="Insert"/>
</elmah>

Итак, когда я смотрю на "превью-превью", мне кажется, что результат - это то, чего я хочу. Затем я запускаю свое приложение (с помощью F5 или ctrl+F5) и специально выкидываю исключение на моем веб-сайте, чтобы вызвать сообщение об ошибке Elmah, но я никогда не получаю никакого письма. Если я добавлю строку errorMail в мой файл web.config, я получу электронное письмо, поэтому проблема не в Elmah.

Как я уже сказал, я чувствую, что, возможно, пропустил простой шаг в настройке расширения.

2 ответа

Проблема, с которой вы сталкиваетесь, на самом деле не в SlowCheetah, а в том, как вы запускаете свое веб-приложение из Visual Studio.

SlowCheetah действительно добавит необходимые цели MSBuild в ваш проект, чтобы выполнять преобразования при сборке, но только для вещей, включенных в выходные данные вашего проекта (например, в папку \ bin).

При создании веб-приложения ваш файл web.config остается на месте, и в папку \ bin копируются только сборки. Visual Studio запускает сервер WebDev и указывает его в корневой каталог вашего веб-приложения. Поскольку ваш web.config не был изменен, он всегда будет содержать исходное содержимое.

Насколько мне известно, медленный Cheetah поддерживает преобразования конфигурации для app.config файлы но не web.configs на отладке в настоящее время. Стоит поставить трансформированный web.config файл в bin папка вашего проекта, но ваш проект все еще читает из файла конфигурации в корневой папке. Пожалуйста, взгляните на обходной путь на http://sedodream.com/CommentView,guid,68b7e248-b9f5-4d07-bdfe-eb037bcf2cbb.aspx. Это работает для меня вместо использования медленного гепарда.

Вы также можете запросить поддержку преобразования веб-конфигурации для Slow-Cheetah при отладке по адресу https://github.com/sayedihashimi/slow-cheetah/issues/39 Они рассматривают возможность добавления к нему поддержки F5.

Другие вопросы по тегам