Отправить другу функциональность в MVC - PullRequest
0 голосов
/ 22 февраля 2011

В основном на сайте будет иконка. щелкнув по нему, вы увидите всплывающее окно со следующими файлами:

  1. Имя * * 1004
  2. E-mail

тогда вы сможете заполнить страницу, и электронное письмо будет отправлено на адрес электронной почты, указанный в поле «Электронная почта». Проблема в том, как мне узнать, на какой странице я нахожусь, чтобы поместить ее в сообщение? спасибо

Ответы [ 2 ]

1 голос
/ 22 февраля 2011
@ViewContext.RouteData.GetRequiredString("action")
@ViewContext.RouteData.GetRequiredString("controller")

должен содержать текущий контроллер и действие, которое вы можете использовать.Вы также можете извлечь другие параметры маршрута, такие как:

@ViewContext.RouteData.Values["id"]

Таким образом, эта информация может быть отправлена ​​в действие контроллера, которое отправит электронное письмо:

@using (Html.BeginForm(
    "Send", 
    "Email", 
    new { 
        currentAction = ViewContext.RouteData.GetRequiredString("action"), 
        currentController = ViewContext.RouteData.GetRequiredString("controller") 
    }, 
    FormMethod.Post)
)
{
    <div>
        @Html.LabelFor(x => x.Name)
        @Html.EditorFor(x => x.Name)
    </div>
    <div>
        @Html.LabelFor(x => x.Email)
        @Html.EditorFor(x => x.Email)
    </div>
    <input type="submit" value="Send email!" />
}

И действие, которое будетотправьте электронное письмо:

public ActionResult Send(string name, string email, string currentAction, string currentController)
{
    // TODO: based on the value of the current action and controller send
    // the email
    ...
}
1 голос
/ 22 февраля 2011

Функция отправки электронной почты в ASP.net Пример кода Ссылайтесь на этот код и используйте его в своем коде. Это будет полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...