Не удалось найти представления CSHTML или VBHTML

Я использую пакет ActionMailer.Net.Standalone в библиотеке классов. В корне проекта у меня есть папка "Шаблоны", где у меня есть мой файл OrderConfirmation.html.cshtml.

Как это:

введите описание изображения здесь

Вот мой класс по почте:

public class Mailer : RazorMailerBase, IMailer
    {
        public RazorEmailResult OrderConfirmation(string toAddress, Order order)
        {
            To.Add(toAddress);
            From = "foo@bar.com";
            Subject = "Account Verification";
            return Email("OrderConfirmation", order);
        }

        public override string ViewPath
        {
            get { return "Templates"; }
        }
    }

Когда я запускаю проект, я получаю следующую ошибку

"Could not find any CSHTML or VBHTML views named [OrderConfirmation] in the path [Templates]. Ensure that you specify the format in the file name (ie: OrderConfirmation.txt.cshtml or OrderConfirmation.html.cshtml)"

Я предполагаю, что путь не правильный. Какой путь я должен использовать?

Благодарю.

2 ответа

Решение

ActionMailer ожидает абсолютный путь к папке ViewPath, т. Е. В вашем случае он должен выглядеть как "c:\Mike\GreatProjects\eshop\Templates", а не только относительно "Templates".

Я перешел к своим свойствам просмотра: "Verification.txt.cshtml", и я изменил Build Action: Contentи Copy to Output Directory: Copy Always, как это:

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