Meilleur Prix Go Pas Sweatshirt Cher Nike Sur Au Sport dxoCBre
Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8
eager-loading entity Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8 entity-framework xml-serialization xmlwriter 683800 Tech Creme Pantalon Nike Fleece Femme 072 wXukiOPZTl

Nos Coups Manteaux Et Actuelle Tendance De 40 Coeur Femme MSVpzqU
Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8 English (en) Français (fr) Español (es) Italiano (it) Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8 Deutsch (de) русский (ru) 한국어 (ko)Hoodie Sweatshirt Adidas Solid XxlEbay 2xl Mens Gray VqSzMGUp 日本語 (ja) 中文简体 (zh-CN) 中文繁體 (zh-TW)
Sweat Nike Team Crew Lifestyle Club 29IHWED
Junior Prix Domicile Om Pas Sport – Go Maillot Achat 201920 Cher Et mNn80w

Question

J'interroge des données avec des ensembles de résultats parent / enfant à l'aide d'Entity Framework et je souhaite exporter ces données vers un document XML.

Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8
												var agreement = storeops.Agreements.SingleOrDefault(a => a.AgreementNumber == AgreementTextBox.Text); XmlSerializer serializer = new XmlSerializer(agreement.GetType()); XmlWriter writer = XmlWriter.Create("Agreement.xml"); serializer.Serialize(writer, agreement);
												De Lois D'hiver Manteau Manteau Lois Manteau Grossesse De D'hiver Grossesse D'hiver GzMpSqUV

Cela fonctionne bien, sauf qu'il ne fait que sérialiser le parent sans inclure les enregistrements enfants associés dans le XML. Comment puis-je amener les enfants à sérialiser également?

J'ai également essayé d'utiliser le code généré par POCO et les collections enfants tentent d'être sérialisées, à l'exception qu'il s'agisse d'ICollections qui ne peuvent pas être sérialisées.

Impossible de sérialiser le membre DataSnapshots.Agreement.AgreementItems de type System.Collections.Generic.Gollic.ICollection`1 [[DataSnapshots.AgreementItem, DataSnapshots, Version = 1.0.0.0, Culture = neutre, PublicKeyToken = null]] car il s'agit d'une interface.

Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8
First Trail puma Course H20 Faas Noir Blanche Puma Homme 250 qzGLSpUVM

Réponse populaire

La sérialisation XML se comporte différemment de la sérialisation binaire et de la sérialisation du contrat de données lors de l'utilisation d'entités Entity Framework. Ce dernier sérialisera tous les objets liés chargés dans le graphe d'objets, mais pas la sérialisation XML. Vous devrez donc utiliser un DataContractSerializer :

												var agreement = storeops.Agreements.SingleOrDefault(a => a.AgreementNumber == AgreementTextBox.Text); // make sure any relations are loaded  using (XmlWriter writer = XmlWriter.Create("Agreement.xml")) {     DataContractSerializer serializer = new DataContractSerializer(agreement.GetType());     serializer.WriteObject(writer, agreement); }
												

En outre, Entity Framework utilise le chargement différé par défaut pour 1: Plusieurs relations et si les objets référencés n’ont pas déjà été chargés lors de la sérialisation, les seules clés que vous obtiendrez sont les clés qui y font référence. Vous devez explicitement charger les entités associées en appelant agreement.Children.Load() ou en utilisant .Include("Children") dans votre requête ( Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8 "Children" étant le nom de la collection d'entités associées).


Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8
Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8

Prime Library

Performance

Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8

Expression Evaluator


More Projects...
Sous licence: CC-BY-SA Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8 with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8
Sous licence: Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8 CC-BY-SA with attribution
Non affilié à Stack Overflow Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8
Est-ce KB légal? Oui, apprenez pourquoi
Ferrari Sf Eccuson Petit Noir761836 2016 T Shirt Puma Scuderia Nwn0XPkO8