如何在继承 Custom.Hybrid.Razor14 的 2sxc v.16.5.0 cshtml 文件中获取门户名称?

问题描述 投票:0回答:1

我有一个继承了

Custom.Hybrid.Razor14
的cshtml文件。我无法更改此继承,因为我需要访问
Kit
属性来更新页面的元标记。我需要访问门户名称。 Dnn 对象仅在继承某些 Dnn 命名空间类的文件/类中可用。 我尝试在
.cs
文件中创建一个单独的文件助手。但我不知道如何从那里访问门户对象以获取其名称。 2sxc 的文档包含大量信息,但对我的案例来说似乎毫无用处,因为我没有成功地在那里找到缺失的信息。 那么我如何从那里访问门户名称?

这是我让它发挥作用的最新尝试。这是一个带有助手的

.cs
文件,我将在继承
.cshtml
Custom.Hybrid.Razor14
文件中使用它。

using System;
using System.Globalization;
using ToSic.Razor.Blade;
using ToSic.Sxc.Data;

public class DnnHelper : Custom.Hybrid.CodeTyped//Custom.Dnn.Razor12
{
    public string PortalName { get; set; }

    public DnnHelper()
    {
        PortalName = PortalSettings.PortalName; // throws exception as it can't find PortalSettings from here
    }
}
dotnetnuke 2sxc
1个回答
0
投票

我建议您先查看

CmsContext.Site
(或
MyContext
中的
RazorTyped
)看看是否有您需要的内容。

否则您可以直接获得服务

IDnnContext
,这应该可以让您继续前进。 https://docs.2sxc.org/api/dot-net/ToSic.Sxc.Dnn.Run.IDnnContext.html`

© www.soinside.com 2019 - 2024. All rights reserved.