1

我要疯了,希望有人能帮我找到我忽略的东西。我有一个实现 IActionable 的用户控件,无论我尝试什么,我都无法让菜单项上的本地化文本返回 null 以外的任何内容!我使用了公共资源“AddAction.Action”等,但没有运气。我已经尝试明确说明要使用哪个资源,但这也不起作用。这是整个模块需要本地化的最后两个项目,我就是无法让它配合。他们正确导航,只是不会显示文本。

在用户控制证明.ascx.cs 上:

     //add the Manage Testimonials action button
            var Actions = new ModuleActionCollection();
            Actions.Add(GetNextActionID(),
               Localization.GetString(ModuleActionType.EditContent, this.LocalResourceFile),
                ModuleActionType.EditContent,
                "",
                "",
                EditUrl(),
                false,
                DotNetNuke.Security.SecurityAccessLevel.Edit,
                true,
                false);

            Actions.Add(GetNextActionID(),
                Localization.GetString("AddContent.Action", LocalResourceFile,
               ModuleActionType.AddContent,
               "",
               "",
                EditUrl("AddTestimonial"),
               false,
               DotNetNuke.Security.SecurityAccessLevel.Edit,
               true,
               false);

            return Actions;

在 App_LocalResources\ Testimonial .ascx.resx 上:

  <data name="AddContent.Action" xml:space="preserve">
    <value>Add New Testimonial Localized</value>
  </data>
 <data name="AddContent.Text" xml:space="preserve">
   <value>Add Content Text</value>
 </data>
 <data name="EditContent.Action" xml:space="preserve">
   <value>Manage Testimonials Localized</value>
 </data>

我已经尝试了我能想到的每一种组合,但它不应该只是对 Localization.GetString 方法的调用。我以前从来没有遇到过这样的问题,我正要把头从窗户里扔出去。真诚感谢任何帮助或指示!

谢谢!

4

1 回答 1

1

我也遇到了同样的问题。找到此文档并阅读第 15 页http://www.dotnetnuke.nl/Portals/16/downloads/documenten/DotNetNuke%20Module%20Localization%20Guide.pdf

基本上,当 DNN 将“.Text”附加到资源键的末尾时,就会发生一些疯狂的魔法。

所以...

作为资源字符串,您需要做的是

AddContent.Action.Text作为资源键。当你尝试打电话时Localization.GetString(AddContent.Action, LocalResourceFile)

于 2016-05-16T21:34:27.273 回答