code annotation attributes in C#


dalam EF Core , kita boleh set certain requirement dalam satu2 variable bagi setiap data type dalam code page. contoh
namespace ShoppingCart.Models
{
public class Supervisor
{
public string ID { get; set; }
public string Name { get; set; }
}
}
sebelum kita boleh guna annotation ni, kena letak
using System.ComponentModel.DataAnnotations;
so kata kan lah untuk ID tu kita nak nak set Required dan minimum length 2. display as Code (This will change the display name for headers and <label>
tags). dan cuma terima uppercase kita boleh set macam ni.
using System.ComponentModel.DataAnnotations;
namespace ShoppingCart.Models
{
public class Supervisor
{
[Required, StringLength(2, MinimumLength = 2), Display(Name = "Code")]
[RegularExpression(@"[A-Z]+", ErrorMessage = "Only upper case characters are allowed.")]
public string ID { get; set; }
[Required]
public string Name { get; set; }
}
}
aku tak guna jetbrains tapi aku rasa sini ada tulis banyak info tentang annotation attributes.
so bila kita dah define annotation kat modelpage . kita kena guna tag helper untuk validate benda ni iaitu asp-validation-for . kemudian kat bawah viewPage tu kena insert script
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
<form method="post">
<div class="form-group d-flex">
<label asp-for="Supervisor.ID" class="p-2 text-right" style="flex:0 0 15%"></label>
<div style="flex:1 0 auto;width:auto">
<input asp-for="Supervisor.ID"" class="form-control" />
<span asp-validation-for="Supervisor.ID" class="text-danger"></span>
</div>
</div>
<div class="form-group d-flex">
<label asp-for="Supervisor.Name" class="p-2 text-right" style="flex:0 0 15%"></label>
<div style="flex:1 0 auto;width:auto">
<input asp-for="Supervisor.Name" class="form-control" />
<span asp-validation-for="Supervisor.Name" class="text-danger"></span>
</div>
</div>
<div class="form-group d-flex flex-row-reverse">
<input type="submit" value="Save" class="btn btn-primary btn-sm" />
</div>
</form>
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
Subscribe to my newsletter
Read articles from consoleGuy directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
