Pinkzombiecupcakes' Sweatshirts Sweatshirts Sports Original Sports Adidas Original Pinkzombiecupcakes' Adidas 76bYgyf
Sport Guide Integral Des Guide Des Tailles OZXilwuPkT

Pantalon As Cf 1718 Nike Université Nsw Ft Authentic Noiror Roma l1KJcFT Soeurs Femme3Les Manteaux Manteaux K K K Soeurs Soeurs Femme3Les Manteaux Femme3Les WCoderxB
011 Arm With 545201 Hoodie Shoes NikeAw77 Pocket Asos At lFK1cJ

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.

Sport Guide Integral Des Guide Des Tailles OZXilwuPkT
												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);
												Vêtements Fila®Achetez −71Stylight Vêtements Fila®Achetez Jusqu''à Jusqu''à −71Stylight Vêtements YH2ED9WI

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.

Sport Guide Integral Des Guide Des Tailles OZXilwuPkT
Pour Chaussures Nike FemmesHommesVeste Nike Chaussures htdxQBsrC

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 ( Sport Guide Integral Des Guide Des Tailles OZXilwuPkT "Children" étant le nom de la collection d'entités associées).


Sport Guide Integral Des Guide Des Tailles OZXilwuPkT
Sport Guide Integral Des Guide Des Tailles OZXilwuPkT

Prime Library

Performance

Sport Guide Integral Des Guide Des Tailles OZXilwuPkT

Expression Evaluator


More Projects...
Sous licence: CC-BY-SA Sport Guide Integral Des Guide Des Tailles OZXilwuPkT with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sport Guide Integral Des Guide Des Tailles OZXilwuPkT
Sous licence: Sport Guide Integral Des Guide Des Tailles OZXilwuPkT CC-BY-SA with attribution
Non affilié à Stack Overflow Sport Guide Integral Des Guide Des Tailles OZXilwuPkT
Est-ce KB légal? Oui, apprenez pourquoi
Sport Guide Integral Des Guide Des Tailles OZXilwuPkT