初始化Sitecore SiteInfo对象

时间:2015-12-22 08:14:12

标签: unit-testing sitecore sitecore8

使用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指南使用here创建假SiteContext,以便在我的单元测试中使用。我需要设置RootPath来测试我的代码。

1 个答案:

答案 0 :(得分:4)

创建SiteInfo期间使用的属性区分大小写。

在您的代码中,rootpath全部为小写。您需要将其更改为rootPath

您可以在文章site Attribute Properties中找到网站定义的所有Sitecore内置属性。