本地化/验证-MVC#模型只接受我的默认资源文件,而不是我选择的其他语言
我目前正在尝试使用资源文件从后端模型到razor视图进行验证。我有两种语言设置,(en,fr),但即使选择了法语,错误消息始终是英语 我尝试过多个在线教程/查看其他有类似问题的人,但没有一个修复对我有效 我的viewmodel示例:本地化/验证-MVC#模型只接受我的默认资源文件,而不是我选择的其他语言,c#,razor,asp.net-mvc-5,resource-files,C#,Razor,Asp.net Mvc 5,Resource Files,我目前正在尝试使用资源文件从后端模型到razor视图进行验证。我有两种语言设置,(en,fr),但即使选择了法语,错误消息始终是英语 我尝试过多个在线教程/查看其他有类似问题的人,但没有一个修复对我有效 我的viewmodel示例: [必需(ErrorMessageResourceName=“RequiredField”,ErrorMessageResourceType=typeof(GlobalRes))] [显示(Name=“Username”,ResourceType=typeof(Glo
[必需(ErrorMessageResourceName=“RequiredField”,ErrorMessageResourceType=typeof(GlobalRes))]
[显示(Name=“Username”,ResourceType=typeof(GlobalRes))]
公共字符串用户名{get;set;}
[必需(ErrorMessageResourceName=“RequiredField”,ErrorMessageResourceType=typeof(GlobalRes))]
[数据类型(数据类型.密码)]
[显示(Name=“Password”,ResourceType=typeof(GlobalRes))]
公共字符串密码{get;set;}
Razor视图:
<div class="form-group">
@Html.LabelFor(m => m.Username, new { @class = "col-md-12" })
<div class="col-md-12">
@Html.TextBoxFor(m => m.Username, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.Username, "", new { @class = "text-danger"})
</div>
</div>
<div class="form-group">
@Html.LabelFor(m => m.Password, new { @class = "col-md-12" })
<div class="col-md-12">
@Html.PasswordFor(m => m.Password, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m.Password, "", new { @class = "text-danger" })
</div>
</div>
@LabelFor(m=>m.Username,新的{@class=“col-md-12”})
@TextBoxFor(m=>m.Username,新的{@class=“form control”})
@Html.ValidationMessageFor(m=>m.Username,“,new{@class=“text danger”})
@LabelFor(m=>m.Password,新的{@class=“col-md-12”})
@Html.PasswordFor(m=>m.Password,新的{@class=“form control”})
@Html.ValidationMessageFor(m=>m.Password,“,new{@class=“text danger”})
更改语言并提交表单后,在浏览器中检查html
此字段必填。
此字段必填。
预期结果应该是,根据所选语言,错误消息应该是法语。如果检查输入框,可以看到正确的值以法语添加。提交表单时,您实际上只获得英文值,而不是预期值
提前谢谢你 我也遇到了这个问题,但我找到了一个简单的方法,我添加了这个代码
if (ModelState.IsValid)
{
}
else
{
ModelState.Clear();
TryValidateModel(Model);
}
我也有这个问题,但我找到了一个简单的方法,我添加了这个代码
if (ModelState.IsValid)
{
}
else
{
ModelState.Clear();
TryValidateModel(Model);
}
我也有同样的问题。对于我来说,将资源文件放入App_GlobalResources文件夹解决了我的问题 如果该文件夹不存在,您可以创建它
我正在Asp.Net MVC应用程序上使用本地化。我遇到了完全相同的问题。对于我来说,将资源文件放入App_GlobalResources文件夹解决了我的问题 如果该文件夹不存在,您可以创建它 我正在Asp.NETMVC应用程序上使用本地化