私はASP.netコア・レザー・エンジンを使用しています。私は登録をしており、登録が成功したときに成功メッセージをユーザに表示したい。ここ
は私のコードは私の.csファイルは、私はまた、TempDataを[ "メッセージ"] == "偽" に変更ので、私かどうかを確認ユーザに成功メッセージを表示
namespace login.Controllers
{
public class HomeController : Controller
{
private readonly UserFactory userFactory;
public HomeController(UserFactory user) {
userFactory = user;
}
// GET: /Home/
[HttpGet]
[Route("")]
public IActionResult Index()
{
ViewData["message"] = false;
return View();
}
[HttpPost]
[Route("")]
public IActionResult Register(Home model)
{
if(!ModelState.IsValid)
{
return View("Index", model);
}
PasswordHasher<Home> Hasher = new PasswordHasher<Home>();
model.Password = Hasher.HashPassword(model, model.Password);
userFactory.Add(model);
ViewData["message"] = true;
return RedirectToAction("Index");
}
}
}
私のhtmlファイル
@model login.Models.Home
@using(Html.BeginForm("Register","Home"))
{
<h1>Please Register</h1>
<p>
<label>Your First Name</label>
@Html.TextBoxFor(s=>s.FirstName)
@Html.ValidationMessageFor(s => s.FirstName)
</p>
<p>
<label>Your Last Name</label>
@Html.TextBoxFor(s=>s.LastName)
@Html.ValidationMessageFor(s => s.LastName)
</p>
<p>
<label>Your Email</label>
@Html.TextBoxFor(s=>s.Email)
@Html.ValidationMessageFor(s => s.Email)
</p>
<p>
<label>Your Password</label>
@Html.TextBoxFor(s=>s.Password)
@Html.ValidationMessageFor(s => s.Password)
</p>
<p>
<label>Confrim Password</label>
@Html.TextBoxFor(s=>s.PasswordConfirmation)
@Html.ValidationMessageFor(s => s.PasswordConfirmation)
</p>
<input type="submit" name="submit" value="Register!"/>
}
@if(ViewData["message"] == "true")
{
<p>Success</p>
}
ファイル
です私のHTMLにはどんなメッセージがもらえます。しかし、メッセージは自分のhtmlにレンダリングされません
'IF(ViewDataを[ "メッセージ"])' ''それはまた、ブール、文字列ではありません –