1 / Вы должны объявить класс объекта, который вы хотите передать в ваше представление.
public class MyModel{
public int EmailId{get;set;}
public string userName{get;set;}
public string title{get;set;}
public string Email{get;set;}
public string description{get;set;}
}
2 / Необходимо вызвать этот класс в Start Controller
public ActionResult Delete (int EmailId)
{
MyModel thisModelPassToView = new MyModel {EmailId = 9999, userName = "jb", title = "Doctor", Email = "abc@gmail.com", description = "My Description"};
return View(thisModelPassToView);
}
3 / Ваш вид будет выглядеть следующим образом
@model MyModel <!-- You missing it, may be you need to include your namespace -->
<head>
</head>
<body>
<h3>Delete</h3>
<hr />
<div>
<br /> <br />
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<dl class="dl-horizontal">
<dt>
@Html.DisplayNameFor(model => model.EmailId)
</dt>
<dd>
@Html.DisplayFor(model => model.EmailId)
@Html.HiddenFor(model => model.EmailId)
</dd>
<dt>
@Html.DisplayNameFor(model => model.userName)
</dt>
<dd>
@Html.DisplayFor(model => model.userName)
@Html.HiddenFor(model => model.userName)
</dd>
<dt>
@Html.DisplayNameFor(model => model.Email)
</dt>
<dd>
@Html.DisplayFor(model => model.Email)
@Html.HiddenFor(model => model.Email)
</dd>
<dt>
@Html.DisplayNameFor(model => model.Title)
</dt>
<dd>
@Html.DisplayFor(model => model.Title)
@Html.HiddenFor(model => model.title)
</dd>
<dt>
@Html.DisplayNameFor(model => model.description)
</dt>
<dd>
@Html.DisplayFor(model => model.description)
@Html.HiddenFor(model => model.description)
</dd>
<dt>
</dl>
<div class="form-actions no-color">
<input onclick="DeleteConfirmation(event)" type="submit" value="Delete" name="delete" class="btn btn-default" />
<script language="JavaScript">
function DeleteConfirmation(DeleteEmailId) {
if (!confirm('Are you sure that you want to delete this?')) {
DeleteEmailId.preventDefault();
}
}
</script>
<br /><br />
@Html.ActionLink("Back to Email Data", "EmailData", "EmailTemplate")
</div>
}
</div>
</body>
4 / В вашем методе публикации вы должны заявить следующее.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Delete(MyModel modelPass)
{
Deletevalue(modelPass.EmailId);
UpdateDataBase(modelPass.EmailId, modelPass.userName, modelPass.title, modelPass.Email, modelPass.description);
if (ModelState.IsValid)
{
return RedirectToAction("EmailData");
};
return View();
}