저는 Atom 피드를 생성하기 위해 SyndicationFeed
을 사용하고 있습니다.SyndicationFeed가 rel = "self"속성을 추가하지 않았습니다.
W3C Feed Validation Service을 사용하여 피드를 검증 할 때를 제외하고 모든 기능이 작동하는 것 같습니다. 다음과 같은 경고 메시지가 표시됩니다.
이 피드는 유효하지만 다음 권장 사항을 구현하면 가장 광범위한 피드 리더와의 상호 운용성을 향상시킬 수 있습니다. 2 행, 열 0 : 누락 된 원자 : REL = "자기"그것은 내가 만든 태그에 속성을 추가 할 수있을만큼 쉽게
와 링크,하지만 난 SyndicationFeed
을 얻을 수있는 방법을 추가? 나는 이것에 대한 설정을 보지 않고있다.
다음은 내 피드의 첫 번째 부분입니다.
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-us">
<title type="text">Insider Articles</title>
<subtitle type="text">Insider Articles data feed.</subtitle>
<id>http://www.insiderarticles.com/Syndication/Atom</id>
<rights type="text">Copyright (c) 2016 Insider Articles. All Rights Reserved.</rights>
<updated>2016-10-02T12:47:21-07:00</updated>
<logo>http://www.insiderarticles.com/Content/Images/rss.jpg</logo>
<link rel="alternate" href="http://www.insiderarticles.com/" />
<entry>
<!-- Etc... -->
다음은 내가 피드 (피드 항목 제외)를 구성하는 방법입니다. 내 코드는 위의 대체 링크 (rel="alternate"
)을 추가했지만
// Construct feed
SyndicationFeed feed = new SyndicationFeed(
Properties.Settings.Default.ApplicationName,
Properties.Settings.Default.FeedSummary,
new Uri(Properties.Settings.Default.ApplicationDomainRoot),
string.Format("{0}/Syndication/Atom", Properties.Settings.Default.ApplicationDomainRoot),
DateTime.Now);
feed.Language = "en-us";
feed.Copyright = new TextSyndicationContent(Properties.Settings.Default.ApplicationCopyright);
feed.ImageUrl = new Uri(string.Format("{0}/Content/Images/rss.jpg", uriRoot));
feed.Items = items;