C# 将文本区域设置为必填字段

C# 将文本区域设置为必填字段,c#,asp.net,asp.net-mvc,fluentvalidation,C#,Asp.net,Asp.net Mvc,Fluentvalidation,我有一个textarea,我想将其设置为required。我试图使用fluentvalidation中的rulefor,但仍然没有发生任何事情 我也尝试过使用[required]等。有人能帮我一下吗 这是我的代码: 型号: public class MainValidator : AbstractValidator<Main> { public MainValidator() { RuleFor(x => x.Message).NotEmpty(

我有一个textarea,我想将其设置为required。我试图使用fluentvalidation中的rulefor,但仍然没有发生任何事情

我也尝试过使用[required]等。有人能帮我一下吗

这是我的代码:

型号:

public class MainValidator : AbstractValidator<Main>
{
    public MainValidator()
    {
        RuleFor(x => x.Message).NotEmpty().WithMessage("Required field");
    }
}
公共类MainValidator:AbstractValidator
{
公共主验证器()
{
RuleFor(x=>x.Message).NotEmpty().WithMessage(“必填字段”);
}
}
视图:


尝试以下操作。服务器端:

RuleFor(x => x.Message).NotNull().WithMessage("Required field");
我找不到easyli,因为我认为
RuleFor
方法的来源,所以您可以尝试以下方法:

RuleFor(x => x.Message).NotEmpty().NotNull().WithMessage("Required field");
此外,客户端:


我正在使用FluentValidation.AspNetCore 8.1.3

我也有同样的问题,我这样解决:

验证器

public ContactValidator(){ 
    RuleFor(x => x.Message).NotEmpty().WithMessage("Message Required").Length(10, 400).WithMessage("Message must be between 10 and 400 characters");
}
模型

公共类ContactViewModel
{
[数据类型(DataType.multilitext)]//
public ContactValidator(){ 
    RuleFor(x => x.Message).NotEmpty().WithMessage("Message Required").Length(10, 400).WithMessage("Message must be between 10 and 400 characters");
}
public class ContactViewModel
{
    [DataType(DataType.MultilineText)]//<-- Add this line to work
    public string Message { get; set; }
}
<div class="col-md-12 col-sm-12">
<textarea asp-for="Message" name="Message" class="form-control" placeholder="Message"></textarea>
<span asp-validation-for="Message" class="text-danger"></span>
</div>