Je suis tout à fait nouveau pour ASP .Net, et pourrait utiliser un peu d'aide ... J'ai une application Web ASP .Net Core 1.1. Dans celui-ci, j'ai une vue "Edit" pour éditer un objet simple, qu'un contrôleur correspondant appelle lorsqu'il est routé vers lui. Voici la vue:vue Edition pas peuplé d'objets de données
@model InspectionsTestClient.Models.Property
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
@Html.ValidationSummary();
<form asp-action="Edit">
<div class="form-horizontal">
<h4>Property</h4>
<hr />
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="Id" />
<div class="form-group">
<label asp-for="UnitNumber" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="UnitNumber" class="form-control" />
<span asp-validation-for="UnitNumber" class="text-danger"></span>
</div>
</div>
<div class="form-group">
<label asp-for="BuildingName" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="BuildingName" class="form-control" />
<span asp-validation-for="BuildingName" class="text-danger"></span>
</div>
</div>
<div class="form-group">
<label asp-for="Street" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="Street" class="form-control" />
<span asp-validation-for="Street" class="text-danger"></span>
</div>
</div>
</div>
</form>
<div>
<a asp-action="Index">Back to List</a>
</div>
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
C'est le contrôleur qui appelle ce point de vue:
// GET: Property/Edit/5
public ActionResult Edit(int id)
{
return View();
}
Et voici le modèle:
namespace InspectionsTestClient.Models
{
//[Table("property")]
public class Property
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int? Id { get; set; }
[MaxLength(10, ErrorMessage = "Unit number too long")]
[Display(Name = "Unit #")]
public string UnitNumber { get; set; }
[MaxLength(45, ErrorMessage = "BuildingName name too long")]
public string BuildingName { get; set; }
[MaxLength(45, ErrorMessage = "Street too long")]
public string Street { get; set; }
}
}
Alors, quand je navigue sur cette page, la le contrôleur se déclenche et renvoie la vue Modifier. J'ai confirmé que le paramètre "id" est rempli. Lorsque la vue Modifier est chargée dans le navigateur, toutes les zones de saisie sont vides. Je m'attendrais à ce qu'ils soient pré-remplis avec les valeurs de l'objet en question. Qu'est-ce que je rate?
Bien sûr! Mec, comment pourrais-je être si stupide ..... Merci BviLLe_Kid – user1900799