我在 Composite C1 中配置多个主机名时遇到问题。
背景:
我在 C1 中有两个网站:site1 和 site2。C1 安装主要用于 site1,并与主机 www.site1.com(和别名 site1.com)一起使用。
现在,我已将另一个站点 site2 添加到 C1。浏览到 site1.com/site2 时,我最终进入了 site2 网站。一切都好。
然后我尝试将另一个主机名 www.site2.com 添加到 URL 配置 -> 主机名。添加 www.site2.com 并浏览到 www.site2.com 后,我得到以下异常:“项目已添加。在字典中键入:''正在添加的键:''”
堆栈跟踪如下所示:
[ArgumentException:项目已被添加。字典中的键:'' 正在添加的键:''] System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add) +9353115 System.Collections.Hashtable.Add(Object key, Object value) +11 Composite。 Core.Collections.Generic.Hashtable`2.Add(TKey key, TValue value) +105 Composite.Plugins.Routing.Pages.PageUrlBuilder.BuildUrlSet(IPage page, Guid parentPageId) +1935 Composite.Core.WebClient.Renderings.Page。 PageStructureInfo.BuildFolderPaths(SitemapBuildingData pagesData, IEnumerable`1 元素, IDictionary`2 urlToIdLookup, IPageUrlBuilder builder) +253 Composite.Core.WebClient.Renderings.Page.PageStructureInfo.BuildMap(UrlSpace urlSpace) +2200 Composite.Core.WebClient.Renderings.Page .PageStructureInfo.GetMap(PublicationScope 发布范围,
有人对此有解决方案吗?
提前致谢...
更新:
更改 Dmitry Dzygin 建议的 dll 后,我得到以下堆栈跟踪:
[ArgumentException:项目已被添加。字典中的键:'' 正在添加的键:''] System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add) +9353115 System.Collections.Hashtable.Add(Object key, Object value) +11 Composite。 Core.Collections.Generic.Hashtable`2.Add(TKey key, TValue value) in c:\Builds\1\Freja\CodeplexBuild\Sources\Public\Composite\Core\Collections\Generic\Hashtable.cs:28 Composite.Plugins .Routing.Pages.PageUrlBuilder.BuildUrlSet(IPage page, Guid parentPageId) 在 c:\Builds\1\Freja\CodeplexBuild\Sources\Public\Composite\Plugins\Routing\Pages\PageUrlBuilder.cs:190 Composite.Core.WebClient。 C 中的 Renderings.Page.PageStructureInfo.BuildFolderPaths(SitemapBuildingData pagesData, IEnumerable`1 元素, IDictionary`2 urlToIdLookup, IPageUrlBuilder builder):