0

私はMVCメーラーを使用しています-コントローラーにこれがあります:

    //
    // POST: /ExhibitorInterest/Create

    [HttpPost]
    public ActionResult Create(ExhibitorInterest exhibitorinterest)
    {
        if (ModelState.IsValid)
        {
            db.ExhibitorInterests.Add(exhibitorinterest);
            db.SaveChanges();

            UserMailer.ExhibitorInterest().Send();

            return RedirectToAction("Thankyou");
        }

        return View(exhibitorinterest);
    }

しかし、私はモデルの出展者の関心をメーラービューに渡したいと思います。

UserMailer.csには次のものがあります。

public virtual MvcMailMessage ExhibitorInterest()
    {
        //ViewBag.Data = someObject;
        return Populate(x =>
        {
            x.Subject = "ExhibitorInterest";
            x.ViewName = "ExhibitorInterest";
            x.To.Add("me@myemail.co.uk");
        });
    }

UserMailer.csにexhibitorinterestを取得する方法についてのアイデアはありますか?メールビューに追加できますか?

ありがとうございました、

マーク

4

1 に答える 1

3

私が理解したと思います-IUSemailer.csの署名を次のように変更します。

public interface IUserMailer
{
 MvcMailMessage ExhibitorInterest(ExhibitorInterest exhibitorinterest); 

そしてUserMail.csを:

public virtual MvcMailMessage ExhibitorInterest(ExhibitorInterest exhibitorinterest)
{
 ViewBag.Data = exhibitorinterest.xxxxxxx;

それが他の誰かを助けることを願っています。

ありがとう、マーク

于 2012-10-05T21:39:43.477 に答える