Dnn Razor脚本本地化

Dnn Razor脚本本地化,razor,localization,dotnetnuke,Razor,Localization,Dotnetnuke,我知道如何本地化常规DNN模块,但我不确定从哪里开始使用DNN Razor主机模块中托管的Razor脚本 我将我的本地化resx文件保存在一个单独的程序集中,因此我认为最简单的方法是使用ResourceManager从程序集中获取资源,但这似乎与Dnn的本地化框架不匹配,因为资源在Dnn中不可编辑 如果可能的话,我想把资源文件嵌入其中,但如果不可能,我会理解的 无论如何,我如何在Dnn中的Razor脚本文件中访问这些资源 你可以用这个approach,但我不确定它是否是你想要的 @usi

我知道如何本地化常规DNN模块,但我不确定从哪里开始使用DNN Razor主机模块中托管的Razor脚本

我将我的本地化resx文件保存在一个单独的程序集中,因此我认为最简单的方法是使用ResourceManager从程序集中获取资源,但这似乎与Dnn的本地化框架不匹配,因为资源在Dnn中不可编辑

如果可能的话,我想把资源文件嵌入其中,但如果不可能,我会理解的


无论如何,我如何在Dnn中的Razor脚本文件中访问这些资源

你可以用这个approach,但我不确定它是否是你想要的

    @using DotNetNuke.Services.Localization
    @{
        var localResourceFile = "/DesktopModules/RazorModules/RazorHost/Scripts/App_LocalResources/SharedResources.ascx." + Dnn.Portal.CultureCode + ".resx";
        var text = Localization.GetString("pepamaca.Text", localResourceFile);
    }

    <div>@text</div>
@使用DotNetNuke.Services.Localization
@{
var localResourceFile=“/DesktopModules/RazorModules/RazorHost/Scripts/App_LocalResources/SharedResources.ascx”。+Dnn.Portal.CultureCode+”.resx”;
var text=Localization.GetString(“pepamaca.text”,localResourceFile);
}
@正文

两件事:1)您能提供一个示例,说明如何在HTML中使用资源字符串吗?2) 那么,你是说不可能将这些资源文件嵌入到外部程序集中吗?1-只需要在html元素(如div或p2)中添加“@text”-我不确定你的请求是什么,如果你需要访问DNN中的另一个资源文件,只需更改LocalResourceFile的路径(感谢第1点)。2) 我指的是访问嵌入在外部自定义库中的Resx文件。这样做的目的是限制我必须在开发人员和生产人员之间复制的文件数量。如果可以的话,我甚至想将实际的Razor脚本嵌入到外部库中,但我会遇到同样的问题:如何在Dnn中访问它们