Aloha!Mais uma coisa legal de fazer com LINQ: consumir XML! Abaixo um exemplo basico de um arquivo RSS:<?xml version="1.0" encoding="utf-8" ?> <rss version="2.0"> <channel> <title>Teste Nerd RSS</title> <link>http://www.qx3.com.br</link> <description>Teste RSS</description> <ttl>5</ttl> <item> <title>NERD S/A</title> <link>http://nerd-rj.blogspot.com</link> </item> <item> <title>Gusmao</title> <link>http://www.microsoft.com</link> </item> <item status="disabled"> <title>Francke</title> <link>http://xmasters.com</link> </item> </channel></rss>Para comecar a brincadeira, vamos criar um repeater no aspx da seguinte forma:<asp:Repeater ID="rptRSS" runat="server"><HeaderTemplate> RSS Ativos:<br /><br /></HeaderTemplate> <ItemTemplate> <asp:Label Text='<%# Eval("Nome") %>' runat="server" /> - <asp:HyperLink Text='<%# Eval("Url") %>' NavigateUrl='<%# Eval("Url") %>' runat="server" /> <hr style="width:75%;text-align:left" /></ItemTemplate></asp:Repeater>Agora, apenas para efeitos de teste, vamos colocar nosso codigo no Page_Load do cs mesmo:public partial class ReadFeedRSS : System.Web.UI.Page{ protected void Page_Load(object sender, EventArgs e) { XDocument feedXML = XDocument.Load(@"C:\FeedRSS.xml"); var feeds = from feed in feedXML.Descendants("item") where feed.Attribute("status") == null || feed.Attribute("status").Value != "disabled" select new { Nome = feed.Element("title").Value, Url = feed.Element("link").Value }; rptRSS.DataSource = feeds; rptRSS.DataBind(); }}Se tudo correr bem, vc vera algo simples... Mas com imaginacao e criatividade, pode-se tirar uma aplicacao muito legal com esse recurso.flws! Continuando a serie linq, a pedido do Francke, segue abaixo um exemplo de como gerar um arquivo xml atraves de linq e base de dados.Supondo que voce ja saiba criar classes LINQ, e claro.DataClassesDataContext db = new DataClassesDataContext();XElement xmlDb = new XElement("Artistas", from art in db.Artists orderby art.ArtistName select new XElement("Artista", new XAttribute("ArtistaID", art.ArtistId), new XElement("Nome", art.ArtistName) ) );xmlDb.Save(@"C:\artistas.xml");Flws?! Gracas a Deus o programa da receita tem uma versao for linux!!! =)http://imasters.uol.com.br/artigo/8234/linux/sua_declaracao_de_imposto_de_renda_com_linux/No link acima o colunista ensina a instalar. E necessario realizar algumas tarefinhas com o JVM mas aparentemente nada dificil.Vou tentar instalar hoje no meu ubuntu, depois comento mais.[]'s Aloha!Gostaria de compartilhar com voces uma forma simples de gerar um xml no c#. Estarei utilizando o XmlTextWriter, que nos da uma certa liberdade na criacao do documento xml sem seguir modelos de forma rapida e facil.Vamos fazer um exemplo simples: Criar um tipo, "alimentar" uma lista e depois gerar o xml atraves desta lista. Coisa idiota, voce deve estar pensando. Mas e um exemplo que pode abrir a sua mente para aplicacoes especificas. Voce um dia pode precisar, nao desdenhe. rsPrimeiro vamos criar o tipo Funcionarios:public class Funcionarios{ public string nome; public string cargo; public string email;}Agora o nosso metodo para gerar a lista:public static Lista CriaLista(){ List func = new List { new teste{nome="Joao",cargo="Analista",email="joao@oi.com.br",status="on"}, new teste{nome="Pablo",cargo="Redator",email="pablo@ig.com.br",status="off"} }; return func;}Ate agora tudo tranquilo, ne? Uma classe simples e uma lista basica. Agora no Page_Load, vamos incluir o codigo abaixo, onde estaremos gerando nosso xml:/// Carregando nossa listaList func = CriaLista();/// Definindo o tipo do documento como xmlResponse.ContentType = "text/xml";/// Instanciando nosso XmlTextWriterXmlTextWriter xtw = new XmlTextWriter(Response.Output);/// Iniciando o documentoxtw.WriteStartDocument();try{ /// Escrevendo nosso "root" xtw.WriteStartElement("Qx3Funcionarios"); foreach (Funcionarios x in func) { /// Iniciando o elemento funcionario xtw.WriteStartElement("funcionario"); xtw.WriteAttributeString("status", x.status); xtw.WriteElementString("nome", x.nome); xtw.WriteElementString("cargo", x.cargo); xtw.WriteElementString("email", x.email); /// Finalizando o elemento funcionario xtw.WriteEndElement(); } /// Finalizando o root xtw.WriteEndElement();}catch (Exception ex){ xtw.WriteElementString("Error", ex.Message);}/// Finalizando o documento e liberando a instancia do XmlTextWriterxtw.WriteEndDocument();xtw.Close();Response.End();Bom, espero que seja util como foi para mim. Tem muito exemplo na net explicando como gerar o xml dinamicamente. Mas dessa forma foi a mais simples que