Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SharePoint虚拟目录网站地图_C#_Asp.net_Sharepoint_Sitemap - Fatal编程技术网

C# SharePoint虚拟目录网站地图

C# SharePoint虚拟目录网站地图,c#,asp.net,sharepoint,sitemap,C#,Asp.net,Sharepoint,Sitemap,我已经创建了一个asp.net网站,利用web.sitemap文件帮助导航。该站点需要部署在SharePoint intranet站点内的虚拟目录中。我遇到的问题是,当我请求SiteMap.CurrentNode属性时,它正在从SharePoint的SiteMap返回信息。具体来说,当我试图获取网站地图的标题或描述时,我是从SharePoint获取信息的。我已尝试重新命名我的站点地图,并在web.config中声明一个新的站点地图提供程序。创建新的站点地图提供程序并请求sitemap.curre

我已经创建了一个asp.net网站,利用web.sitemap文件帮助导航。该站点需要部署在SharePoint intranet站点内的虚拟目录中。我遇到的问题是,当我请求SiteMap.CurrentNode属性时,它正在从SharePoint的SiteMap返回信息。具体来说,当我试图获取网站地图的标题或描述时,我是从SharePoint获取信息的。我已尝试重新命名我的站点地图,并在web.config中声明一个新的站点地图提供程序。创建新的站点地图提供程序并请求sitemap.currentNode后,我收到一条错误消息,说它找不到web.sitemap文件


非常感谢您提供的任何帮助。

听起来您需要将虚拟目录设置为IIS中的应用程序-这样做将:

将应用程序的基本目录重置为虚拟目录的根目录,以便web.config中的相对路径指向正确的位置,然后 使网站忽略在父文件夹中定义的任何Sharepoint web.config文件中定义的任何设置,以及 还应将站点地图文件设为默认文件,因为它不会查看父目录中的任何web.config或站点地图。
有,但这两个似乎是您所概述的问题的原因。

我能够找出问题所在…结果是,当我在web.config中声明新的站点地图提供程序时,我没有设置defaultProvider值。将默认提供程序设置为新提供程序的名称后,一切都按预期进行

<siteMap enabled="true" defaultProvider="CPSiteMap">
  <providers>
    <add name="CPSiteMap" type="System.Web.XmlSiteMapProvider" siteMapFile="AccountMaintenance.sitemap" />
  </providers>
</siteMap>
我希望这对其他人有帮助