Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Ukázka JsonFeeds ukazuje, jak serializovat instanci SyndicationFeed třídy ve formátu JSON (JavaScript Object Notation) pomocí vlastního SyndicationFeedFormatter objektu a objektu DataContractJsonSerializer.
Architektura ukázky
Ukázka implementuje třídu s názvem JsonFeedFormatter , která dědí z SyndicationFeedFormatter. Třída JsonFeedFormatter spoléhá na DataContractJsonSerializer čtení a zápis dat ve formátu JSON. Interně formátovací modul používá vlastní sadu datových kontraktů pojmenovaných JsonSyndicationFeed a JsonSyndicationItem řídí formát dat JSON vytvořených serializátorem. Tyto podrobnosti implementace jsou pro koncového uživatele skryté, což umožňuje provádět volání proti standardním SyndicationFeed a SyndicationItem třídám.
Tvorba zdrojů JSON
Psaní JSON kanálu lze provést pomocí JsonFeedFormatter (implementovaného v této ukázce) s DataContractJsonSerializer, jak je znázorněno v následujícím ukázkovém kódu.
//Basic feed with sample data
SyndicationFeed feed = new SyndicationFeed("Custom JSON feed", "A Syndication extensibility sample", null);
feed.LastUpdatedTime = DateTime.Now;
feed.Items = from s in new string[] { "hello", "world" }
select new SyndicationItem()
{
Summary = SyndicationContent.CreatePlaintextContent(s)
};
//Write the feed out to a MemoryStream in JSON format
DataContractJsonSerializer writeSerializer = new DataContractJsonSerializer(typeof(JsonFeedFormatter));
writeSerializer.WriteObject(stream, new JsonFeedFormatter(feed));
Čtení informačního kanálu JSON
Získání SyndicationFeed z datového proudu ve formátu JSON lze provést JsonFeedFormatter, jak je znázorněno v následujícím kódu.
//Read in the feed using the DataContractJsonSerializer
DataContractJsonSerializer readSerializer = new DataContractJsonSerializer(typeof(JsonFeedFormatter));
JsonFeedFormatter formatter = readSerializer.ReadObject(stream) as JsonFeedFormatter;
SyndicationFeed feedRead = formatter.Feed;
Jak nastavit, sestavit a spustit ukázku
Ujistěte se, že jste provedli instalační proceduru One-Time pro ukázky Windows Communication Foundation.
Pokud chcete sestavit verzi C# nebo Visual Basic .NET řešení, postupujte podle pokynů v Sestavení ukázek Windows Communication Foundation.
Pokud chcete spustit ukázku v konfiguraci pro jeden počítač nebo pro více počítačů, postupujte podle pokynů v Spuštění ukázek Windows Communication Foundation.