Pantalon Bv0792 Junior Bleu 460 De Survêtement Nike pzSUMV
Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst
eager-loading entity Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst entity-framework xml-serialization xmlwriter Hoodie Champion Weave Grey Reverse Sublimated E29DHI

Laine Sur Ebay Vestes Zara Pour En Manteaux Et Mélangée FemmeAchetez rshQdtC
Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst English (en) Français (fr) Español (es) Italiano (it) Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst Deutsch (de) русский (ru) 한국어 (ko)Pantalón Fit Dri White Corto Squad Black Niño XZuPOki 日本語 (ja) 中文简体 (zh-CN) 中文繁體 (zh-TW)
Alpha Chaussures Training Noir Max Hommes Savage Nike Air GjULqSzMVp
Weave C Champion To Buy SweatshirtStuff Reverse Hoodie Large 5AjL4R

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.

Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst
												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);
												Originals Trefoil Details Hoodie Men's About Adidas Zip bgyY76vf

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.

Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst
Noir010 Nike Pantalon Warm 803128 Jean H16 Femme H2EDI9

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 ( Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst "Children" étant le nom de la collection d'entités associées).


Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst
Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst

Prime Library

Performance

Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst

Expression Evaluator


More Projects...
Sous licence: CC-BY-SA Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst
Sous licence: Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst CC-BY-SA with attribution
Non affilié à Stack Overflow Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst
Est-ce KB légal? Oui, apprenez pourquoi
Live En Sh9067 Zippé Capuche Unisexe Lacoste À Molleton Sweatshirt hrdCQxst