【问题标题】:Adding an internal ASPX page with relative URL to CRM 4.0 sitemap将具有相对 URL 的内部 ASPX 页面添加到 CRM 4.0 站点地图
【发布时间】:2011-02-08 18:35:34
【问题描述】:

我在 CRM 4.0 中的站点地图中添加了一个子区域,对于绝对 URL,它可以按预期工作。但是,对于相对 URL,它不会。有问题的页面是内部页面,可通过以下方式访问:

http://localhost/ISV/<orgName>/Account.aspx/ExternalDocumentList

但是,我更喜欢在站点地图中写这个:

/ISV/<orgName>/Account.aspx/ExternalDocumentList

展开后,CRM/IIS 将其重写为:

http://localhost/<orgName>/ISV/<orgName>/Account.aspx/ExternalDocumentList

作为参考,这里是添加的站点地图(不起作用):

<SubArea Id="custom_documentHistory" Url="/ISV/<orgName>/Account.aspx/ExternalDocumentList">
    <Titles>
        <Title LCID="1033" Title="Document History"/>
    </Titles>
</SubArea>

如何相对链接到这个页面?

【问题讨论】:

  • 您遗漏了一些东西,请尝试使用此 Url = "//ISV//Account.aspx/ExternalDocumentList"
  • 我得到一个提示,使用 '../' 表示法很好,而且确实 '../../ISV' 可以解决问题。这是一个好的解决方案吗?
  • @WaqasRaja 不,该 URL 是 CRM 将其重写为的,并返回 404。唯一有效的 URL 是上面列出的第一个 URL。

标签: asp.net sitemap dynamics-crm crm


【解决方案1】:

../ 符号对于表示操作是完全有效的。使用该表示法并没有真正的问题,尽管这取决于您的使用情况。

您的 URL 中的第一个 实例是 CRM 允许多租户的默认行为 - 您需要第二个实例吗?您能否将 Account.aspx 页面直接放在 ISV 文件夹下,并使用服务器端代码来确定组织名称?

基本上你在 URL 属性中输入的路径被用作来自http://localhost/<orgName>/ 的相对路径

如果您想了解更多关于 ASP.NET 路径以及如何使用它们的信息,Rick Strahl 在这里有一篇很好的文章: http://www.west-wind.com/Weblog/posts/132081.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-11
    • 2012-04-16
    • 2013-02-21
    • 1970-01-01
    • 1970-01-01
    • 2010-10-08
    • 1970-01-01
    相关资源
    最近更新 更多