带有 @Link.To 的 c# razor 模板呈现不正确的 link
c# razor template with @Link.To renders the incorrect link
我有一个单品详情视图模板。在此模板中,它列出了 "tags" 和 "categories" 以及 link 以查看相同标签或类别的产品。
我以相同的方式为标签和类别定义 link,但呈现方式不同。
这是我的模板:
<link rel="stylesheet" href="@App.Path/assets/portfolio.css" data-enableoptimizations="bottom"/>
<div class="sc-element">
<div class="ks-portfolio-detail">
<div class="row">
<div class="col-sm-12 col-md-6">@Edit.Toolbar(Content)
<img src="@Content.Image" alt="@Content.UrlKey" class="img-responsive" />
</div>
<div class="col-sm-12 col-md-6">
<div class="ks-title"><h1>@Content.Title</h1></div>
...
<div class="ks-lable">Categories:</div>
@{ int count=0; }
@foreach(var item in AsDynamic(Content.Categories)){
count++;
<a href="@Link.To(parameters: "category=" + @item.Title)" title="@item.Title">@item.Title</a>
@(count < Content.Categories.Count?" | ":"")
}
<br/><br/>
<div class="ks-lable">Tags:</div>
@{ int counter=0; }
@foreach(var item in AsDynamic(Content.Tags)){
counter++;
<a href="@Link.To(parameters: "tag=" + @item.Name)" title="@item.Name">@item.Name</a>
@(counter < Content.Tags.Count?" | ":"")
}
</div>
</div>
</div>
</div>
请注意创建类别和标签 link 的行:
<a href="@Link.To(parameters: "category=" + @item.Title)" title="@item.Title">@item.Title</a>
...
<a href="@Link.To(parameters: "tag=" + @item.Name)" title="@item.Name">@item.Name</a>
问题
标签 Link.To 用 "slashes" 渲染 link 像:
http://dnn804/portfolio/tag/Demo2
但类别呈现 link 如下:
http://dnn804/portfolio?category=Flowers
问题
谁能帮我弄清楚为什么这些 link 在使用相同的函数时呈现不同?我希望它们都显示为 "tags" link.
提前致谢。
Link.To 使用 DNN 内部 link 分辨率。我只是猜测 DNN 可能会以不同方式处理某些术语,从而导致特殊的 links。 DNN 有时确实会用 link 做一些奇怪的事情,就像在主页上一样,这就是我们使用它的原因。
但这只是一个猜测。
您可以 运行 一些实验,例如 "cat=" 而不是类别,来验证这一点。
我有一个单品详情视图模板。在此模板中,它列出了 "tags" 和 "categories" 以及 link 以查看相同标签或类别的产品。
我以相同的方式为标签和类别定义 link,但呈现方式不同。
这是我的模板:
<link rel="stylesheet" href="@App.Path/assets/portfolio.css" data-enableoptimizations="bottom"/>
<div class="sc-element">
<div class="ks-portfolio-detail">
<div class="row">
<div class="col-sm-12 col-md-6">@Edit.Toolbar(Content)
<img src="@Content.Image" alt="@Content.UrlKey" class="img-responsive" />
</div>
<div class="col-sm-12 col-md-6">
<div class="ks-title"><h1>@Content.Title</h1></div>
...
<div class="ks-lable">Categories:</div>
@{ int count=0; }
@foreach(var item in AsDynamic(Content.Categories)){
count++;
<a href="@Link.To(parameters: "category=" + @item.Title)" title="@item.Title">@item.Title</a>
@(count < Content.Categories.Count?" | ":"")
}
<br/><br/>
<div class="ks-lable">Tags:</div>
@{ int counter=0; }
@foreach(var item in AsDynamic(Content.Tags)){
counter++;
<a href="@Link.To(parameters: "tag=" + @item.Name)" title="@item.Name">@item.Name</a>
@(counter < Content.Tags.Count?" | ":"")
}
</div>
</div>
</div>
</div>
请注意创建类别和标签 link 的行:
<a href="@Link.To(parameters: "category=" + @item.Title)" title="@item.Title">@item.Title</a>
...
<a href="@Link.To(parameters: "tag=" + @item.Name)" title="@item.Name">@item.Name</a>
问题
标签 Link.To 用 "slashes" 渲染 link 像:
http://dnn804/portfolio/tag/Demo2
但类别呈现 link 如下:
http://dnn804/portfolio?category=Flowers
问题
谁能帮我弄清楚为什么这些 link 在使用相同的函数时呈现不同?我希望它们都显示为 "tags" link.
提前致谢。
Link.To 使用 DNN 内部 link 分辨率。我只是猜测 DNN 可能会以不同方式处理某些术语,从而导致特殊的 links。 DNN 有时确实会用 link 做一些奇怪的事情,就像在主页上一样,这就是我们使用它的原因。 但这只是一个猜测。
您可以 运行 一些实验,例如 "cat=" 而不是类别,来验证这一点。