无法在剃刀视图中使用 标签

问题描述 投票:0回答:1

如果我使用以下代码,则视图呈现良好。但是,如果我将URL更改为必要的RSS规范。该视图将不会呈现,并引发错误,指出该标记无效,因此该错误发生在链接标记处。无论我怎么尝试,剃须刀foreach内的链接标签都无法正确编译。

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage<ContentModels.RSsfeed>
@using ContentModels = Umbraco.Web.PublishedContentModels;
@{ 
    Layout = null;
    Response.ContentType = "text/xml";
    var rootNode = Umbraco.TypedContentAtRoot().First();
    var newsNodes = umbraco.uQuery.GetNodesByType("newsDetail");
}<?xml version="1.0"?>
<!-- News Aritcles -->
<rss version="2.0" xmlns:newsArticles="https://xxx.xxxxxxx.xxx/news">
    <channel>
        <title>News Aritcles</title>
        <link>https://xxx.xxxxxxx.xxx/news</link>
        <description>News Aritcles</description>
        <language>en-us</language>
        <ttl>1440</ttl>
    @foreach(var newsNode in newsNodes){
        var newsContent = UmbracoContext.Current.ContentCache.GetById(newsNode.Id);
        string nnDescription = newsContent.GetPropertyValue("description").ToString();
        string nnPublishDate = newsContent.GetPropertyValue("publishDate").ToString();
        <item>
            <title>@newsNode.Name</title>
            <url>https://xxx.xxxxxxx.xxx@{@newsNode.Url}</url>
            <description>@nnDescription</description>
            <pubDate>@nnPublishDate</pubDate>
            <guid>https://xxx.xxxxxxx.xxx@{@newsNode.Url}</guid>
        </item>
    }
    </channel>
</rss>
razor view hyperlink rss umbraco
1个回答
0
投票

<link/>是一个void元素,因此只有一个开始标签而没有结束标签-请参见W3C HTML Language Reference

您可以这样输出标签

@("<link>" + newsNode.Url + "</link>")

希望这会有所帮助

© www.soinside.com 2019 - 2024. All rights reserved.