私は以下の私のコードを参照パラメータを追加する方法についてに質問があります。ASP.NETコアMVCとEFコア1.1
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Edit(Employee emp)
{
try
{
Employee updateEmp = _Context.Employee.FirstOrDefault(c => c.Idemployee == emp.Idemployee);
updateEmp.Address = emp.Address;
updateEmp.Age = emp.Age;
updateEmp.ContactNumber = emp.ContactNumber;
updateEmp.FullName = emp.FullName;
updateEmp.Gender = emp.Gender;
updateEmp.IsActive = emp.IsActive;
_Context.Employee.Update(updateEmp);
_Context.SaveChanges();
return RedirectToAction("Index");
}
catch (Exception)
{
throw;
}
}
私がここでやろうとしています何が私がemp.Idemployeeを抽出しようとしていますですクエリ文字列からはできませんが、エラーnull例外に私をリダイレクトすることができませんでした。
私はモデルを使用して、cshtmlから詳細を抽出しています。
public IActionResult Edit(int id)
{
var editEmployee = _Context.Employee.FirstOrDefault(c => c.Idemployee == id);
return View(editEmployee);
}
私は何が間違っているのかわかりませんが、Idemployee以外の情報はすべて抽出されています。
@model Demo101.DAL.Entities.Models.Employee
@{
ViewBag.Title = "Edit Employee";
}
<h2>@ViewData["Title"]</h2>
<form asp-controller="Employee" asp-action="Edit" method="post" class="form-horizontal" role="form">
<div class="form-horizontal">
<div asp-validation-summary="All" class="text-danger"></div>
<!--FullName-->
<label asp-for="Idemployee" class="col-md-2 control-label"></label>
<div class="col-md-10">
@Html.LabelFor(model => model.Idemployee, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.Idemployee)
</div>
<!--FullName-->
<label asp-for="FullName" class="col-md-2 control-label"></label>
<div class="col-md-10">
@Html.TextBoxFor(model => model.FullName, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.FullName)
</div>
<!--Age-->
<label asp-for="Age" class="col-md-2 control-label"></label>
<div class="col-md-10">
@Html.TextBoxFor(model => model.Age, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.Age)
</div>
<!--ContactNumber-->
<label asp-for="ContactNumber" class="col-md-2 control-label"></label>
<div class="col-md-10">
@Html.TextBoxFor(model => model.ContactNumber, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.ContactNumber)
</div>
<!--Address-->
<label asp-for="Address" class="col-md-2 control-label"></label>
<div class="col-md-10">
@Html.TextBoxFor(model => model.Address, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.Address)
</div>
<!--Gender-->
<label asp-for="Gender" class="col-md-2 control-label"></label>
<div class="col-md-10">
@Html.TextBoxFor(model => model.Gender, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.Gender)
</div>
<!--IsActive-->
<label asp-for="IsActive" class="col-md-2 control-label"></label>
<div class="col-md-10">
@Html.CheckBoxFor(model => model.IsActive, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.IsActive)
</div>
<!--Create Button-->
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Edit Employee" class="btn btn-default" />
</div>
</div>
</form>
ありがとう!
あなたはCSHTMLページに従業員のモデルを使用している、これを与えますか?あなたがcshtmlコードを投稿した場合にも役立ちます。 –
こんにちは、@JasonH、はい私は自分のCSHTML上で使用しています、私はすぐに私の記事を更新します... –