結果に応じて電子メールを送信するWeb Apiコントローラアクションを書きたいと思います。私は、電子メールの本文をレンダリングするために、データのモデルでMVCビューまたは部分ビューを使用したいと思います。Web Apiコントローラはビューを文字列としてレンダリングできますか?
これを行う方法はありますか? RenderBodyがたviewNameを検索する場所
public class NotificationApiController : ApiController
{
private IMkpContext db;
public string ViewNotifications()
{
var dataModel = GetDataModel();
if (dataModel != null)
{
SendEmail(dataModel.ToAddress, dataModel.FromAddress, dataModel.Subject, RenderBody("viewName", dataModel);
}
return string.Empty;
}
}
は、データモデルからのデータを移入し、文字列として表示をレンダリング:
私はこのような何かをしたいと思います。
を私は一般的に自分の意見を表現し、私のためにそれを使用するRazorEngineライブラリを使用電子メール。あなたのビューを強く型付けされたものとして宣言できるという利点があります。 http://antaris.github.io/RazorEngine/ –
私はPostalを同じ目的で使用しています。 https://www.nuget.org/packages/Postal.Mvc5/ –