2
我有混合項目的ASP Web Api和角度項目類似於this one,我需要從ApiControllers發送電子郵件。使用MvcMailer從WebApi項目中ViewBag不可用
我喜歡MvcMailer,我寧願使用它。我管理它實際發送電子郵件。但是,我不確定如何將自定義數據傳遞到視圖,因爲我無權訪問ApiController上下文中的ViewBag
或ViewData
。
任何幫助表示讚賞。
我有混合項目的ASP Web Api和角度項目類似於this one,我需要從ApiControllers發送電子郵件。使用MvcMailer從WebApi項目中ViewBag不可用
我喜歡MvcMailer,我寧願使用它。我管理它實際發送電子郵件。但是,我不確定如何將自定義數據傳遞到視圖,因爲我無權訪問ApiController上下文中的ViewBag
或ViewData
。
任何幫助表示讚賞。
我知道您無權訪問ViewBag/ViewData,這可能與您擁有WebAPI上下文(而不是MVC)有關。但爲什麼你不只是實例化郵件並傳遞參數?
[RoutePrefix("api/foo")]
public class FooController : ApiController
{
[HttpPost]
[Route("bar")]
public void Bar(string foo, string bar)
{
MyMailer myMailer = new MyMailer();
myMailer.MyAction(foo, bar).Send();
}
}
然後:
public class MyMailer : MailerBase, IMyMailer
{
public virtual MvcMailMessage MyAction(string foo, string bar)
{
ViewBag.Foo = foo;
ViewBag.Bar = bar;
// Populate ...
}
}
我知道這是不是最佳的,但是這就是我最後做,它工作正常。這會有幫助嗎?
嘿!我有同樣的問題。其實我的電子郵件只是空的。你有沒有找到解決方法? 你可能想看看這個:https://github.com/smsohan/MvcMailer/issues/126 – Pedro
你的問題是不完全相同的(和你引用的問題不幫助我)。我達到了我的電子郵件發送的地步,並且它不是空的。目前我無法用動態數據加強它。如果我找到解決方案,我會在這裏寫評論。 – Dmitry