728x90
반응형
attributes
- asp-for
- asp-format
asp-for
asp-for는 model property와 binding하여 input tag를 생성한다.
public string Name { get; set; }
<input asp-for="Name" /><br />
<input type="text" id="Name" name="Name" value="" /><br />
model property의 data annotation attribute를 사용해서 매핑되는 input type을 자동 생성한다.
[EmailAddress]
public string Email { get; set; }
<input asp-for="Email" /><br />
<input type="email" data-val="true" data-val-email="The Email field is not a valid e-mail address." id="Email" name="Email" value="" /><br />
Attribute | Input Type |
[EmailAddress] | type=”email” |
[Url] | type=”url” |
[HiddenInput] | type=”hidden” |
[Phone] | type=”tel” |
[DataType(DataType.Password)] | type=”password” |
[DataType(DataType.Date)] | type=”date” |
[DataType(DataType.Time)] | type=”time” |
만약에, Data Annotation attribute가 없는 경우, property data type을 사용한다.
NET type | Input Type |
Bool | type=”checkbox” |
String | type=”text” |
DateTime | type=”datetime-local” |
Byte, int, Single, Double | type=”number” |
decimal, double, float | type=”text” |
또한 data-val-* 로 시작하는 data validation related attribute를 자동 생성한다.
[Required]
public string Name { get; set; }
<input asp-for="@Model.Name" />
<input type="text" data-val="true" data-val-required="The Name field is required." id="Name" name="Name" value="" />
[Required(ErrorMessage ="Please enter the name")]
public string Name { get; set; }
<input asp-for="Name" />
<input type="text" data-val="true" data-val-required="Please enter the name" id="Name" name="Name" value="" />
DateTime property는 [Required] attribute가 없어도 자동으로 data-val-required attribute가 생성된다.
DateTime? property로 nullable처리하면 data-val-required가 생성되지 않는다.
asp-format
string format이다.
public decimal Balance { get; set; }
<input asp-for="Balance" asp-format="{0:N2}" />
<input type="text" data-val="true" data-val-number="The field Balance must be a number." data-val-required="The Balance field is required." id="Balance" name="Balance" value="0.00" />
728x90
반응형
'ASP.NET Core' 카테고리의 다른 글
ASP.NET Core] Model Binding 모델 바인딩 (0) | 2022.02.03 |
---|---|
ASP.NET Core] Form Tag Helper, Environment Tag Helper (0) | 2022.01.25 |
ASP.NET Core] Tag Helper (0) | 2022.01.25 |
ASP.NET Core 6] Route Constraints 경로 제약 조건 (0) | 2022.01.25 |
ASP.NET Core 6] ASPNETCORE_ENVIRONMENT (0) | 2022.01.20 |
댓글