我正在尝试从资源中本地化我的模型错误,在。net 6 mvc应用程序。
我这样设置本地化:
`builder.Services.AddLocalization(options => options.ResourcesPath = "Resources");
builder.Services.AddMvc()
.AddViewLocalization(Microsoft.AspNetCore.Mvc.Razor.LanguageViewLocationExpanderFormat.Suffix)
.AddDataAnnotationsLocalization();`
那么,我的资源文件的文件夹结构是这样的资源→视图→{ControlerName}, {ViewName} . resx
在视图中,我的本地化工作完美与IViewLocalizer。
我试图使用这些resx文件的DataAnnotations错误,像这样
[Required (ErrorMessageResourceType = (typeof({ProjectName}.Resources.Views.Home.Index)),
ErrorMessageResourceName = "RequiredField")]
我得到错误"类型或名称空间名称'资源'在名称空间'{ProjectName}'中不存在(您是否缺少程序集引用?)">
typeof"应该怎么写?
如果有人坚持这个,我的问题是资源文件的位置。
是这样的。资源→视图→{ControlerName}→{ViewName} . resx一个到视图的路径,我将在其中使用那个模型。而不是这个。我们也需要模型的资源文件,它们不能在视图中使用资源文件。但是我们需要这样的东西:资源→模型→dto→{ModelName} . resx