Sitecore FieldRenderer返回相对路径

时间:2016-04-07 05:05:13

标签: asp.net sitecore sitecore7

我使用以下代码行来渲染图像:

string html = Sitecore.Web.UI.WebControls.FieldRenderer.Render(
                                            Item,
                                            this.Field,
                                            renderParameters + "&disable-web-editing=" + this.DisableWebEditing.ToString()); 

以下字符串在html中分配:

<img src="http://localhost/~/assets/images/widgets/contact.png?bc=White&amp;h=130&amp;la=en&amp;w=130" width="130" height="130" />

有没有办法让src图像成为相对路径?

1 个答案:

答案 0 :(得分:1)

假设您的应用程序没有任何自定义设置,FieldRenderer使用MediaUrlOptions知道如何生成网址。

MediaUrlOptions使用Settings.Media.AlwaysIncludeServerUrl来确定是否应包含完整的服务器网址。

检查配置中的设置并将其设置为正确的值:

<!--  MEDIA ALWAYS INCLUDE SERVER URL
        If true, Sitecore will generate absolute URLs when it uses the MediaProvider API and/or the link provider to render media URLs.
        If blank, Sitecore will use the same value as the alwaysIncludeServerUrl attribute from the link provider.
        Default value: "" (use the value from the link provider)
  -->
<setting name="Media.AlwaysIncludeServerUrl" value="" />