1

画面にレポートが表示されており、ユーザーが SendEmail リンクを押したときにメールでコンテンツを送信できるようにしたいと考えています。MVCMailer をインストールして送信しようとしましたが、空のメッセージとして届きます。ここの例に従うと、うまくいきます。しかし、UserMail フォルダーから View を送信したくありません。他のフォルダからビューを送信するにはどうすればよいですか?

public virtual MvcMailMessage Welcome()
    {
        return Populate(x =>
        {
            x.Subject = "Welcome";
            x.ViewName = "Graph\List"; // Controller: Graph, View: List
            x.To.Add("example@example.co.uk");
        });
    }
4

1 に答える 1

2

望ましいビューの場所の名前を返すことで、基本クラスの仮想プロパティ「MailerName」をオーバーライドできます。

MvcMailer には、基本クラスで仮想的な MailerName プロパティがあります。MvcMailerクラスは、このプロパティで利用可能な場所でビューを見つけるためにこのプロパティを使用します。あなたの場合、このプロパティは値「UserMail」を持ち、MvcMailerはUserMailフォラーでビューを見つけようとします。

したがって、このプロパティを望ましい場所でオーバーライドすると、mvc フレームワークが指定された場所でビューを見つけるようになります。

于 2015-06-15T09:07:55.867 に答える