初始化 Sitecore SiteInfo 对象
Initialize Sitecore SiteInfo object
我在使用 Sitecore SiteInfo
对象时遇到了一些问题。此对象包含有关站点的详细信息,例如数据库名称、站点名称和主机名,可用于创建 SiteContext
对象。我的问题是设置 RootPath
。我能找到的唯一 documentation 是旧的 API 版本,不包含任何详细信息。据我所知,这是创建 SiteInfo
及其 SiteContext
:
的方法
SiteInfo mySiteInfo = SiteInfo.Create(new StringDictionary { {"rootpath", "/sitecore/content"}, {"name", "mySite"}, {"foo", "bar"} });
SiteContext mySiteContext = new SiteContext(mySiteInfo);
运行 这一行没有错误,但是 mySiteInfo.RootPath
仍然是空的,即使 mySiteInfo.Name
的值为 mySite
。 {"foo", "bar"}
似乎完全被忽略了,但这没问题。我在尝试 Sitecore 不支持的东西吗?
更多背景信息:我正在尝试使用 Sitecore.FakeDB, per the guide listed here 创建一个假的 SiteContext
,用于我的单元测试。我需要设置 RootPath
,以测试我的代码。
SiteInfo
创建期间使用的属性区分大小写。
在您的代码中 rootpath
全部小写。您需要将其更改为 rootPath
。
您可以在文章 site Attribute Properties 中找到站点定义的所有 Sitecore 内置属性。
我在使用 Sitecore SiteInfo
对象时遇到了一些问题。此对象包含有关站点的详细信息,例如数据库名称、站点名称和主机名,可用于创建 SiteContext
对象。我的问题是设置 RootPath
。我能找到的唯一 documentation 是旧的 API 版本,不包含任何详细信息。据我所知,这是创建 SiteInfo
及其 SiteContext
:
SiteInfo mySiteInfo = SiteInfo.Create(new StringDictionary { {"rootpath", "/sitecore/content"}, {"name", "mySite"}, {"foo", "bar"} });
SiteContext mySiteContext = new SiteContext(mySiteInfo);
运行 这一行没有错误,但是 mySiteInfo.RootPath
仍然是空的,即使 mySiteInfo.Name
的值为 mySite
。 {"foo", "bar"}
似乎完全被忽略了,但这没问题。我在尝试 Sitecore 不支持的东西吗?
更多背景信息:我正在尝试使用 Sitecore.FakeDB, per the guide listed here 创建一个假的 SiteContext
,用于我的单元测试。我需要设置 RootPath
,以测试我的代码。
SiteInfo
创建期间使用的属性区分大小写。
在您的代码中 rootpath
全部小写。您需要将其更改为 rootPath
。
您可以在文章 site Attribute Properties 中找到站点定义的所有 Sitecore 内置属性。