Existe-t-il un moyen plus simple de générer une table Linq to SQL en XML (éventuellement sur une page Web?) Malheureusement, je n'utilise pas MVC, mais je pourrais y faire référence dans ma page C# aspx.C# Sortie XML de Linq à Response.OutputStream
J'ai ceci:
var myView = (from x in db.myTable
where x.Name.Contains("Bob")
select new person {Name = x.Name, Job = x.Job).Take(100);
et que vous souhaitez afficher quelque chose de similaire à ce (ne doit pas être exacte pour l'instant):
<?xml version="1.0" encoding="utf-8"?>
<myView xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<person><Name>Bob Smith</Name><Job>Machinist</Job></person>
<person><Name>Bob Smithers</Name><Job>Cartoonist</Job></person>
<person><Name>Rebob Wilson</Name><Job>Mason</Job></person>
</myView>
J'ai essayé de le faire:
TextWriter myTW = new StreamWriter(Response.OutputStream, Encoding.UTF8);
XmlTextWriter xmlTW = new XmlTextWriter(myTW);
XmlSerializer myS = new XmlSerializer(typeof(person));
myS.Serialize(xmlTW, myView);
Mais je reçois un "Ne peut pas sérialiser iQueryable". Cependant, j'ai essayé ToArray, ToList, AsEnumerable, etc. et obtenir simplement "Une erreur est survenue" avec myS.Serialize().
Des pensées? Heureusement, il existe un moyen comme le retour XML (myView);
Maintenant, cela a fonctionné comme un charme! Merci. –