2009-09-28 6 views
0

LINQ를 사용하여 데이터베이스에서 결과를 검색 한 경우 자동으로 XML을 생성 할 수있는 방법이 있습니까?LINQ 결과에서 XML 만들기

예를 들어

이는 정말 기본적인 질문 인 경우, 도움 우리는 당신의 주식 개체의 정확한 내용을 모르는, 그리고 우리가 모르는

답변

7

감사

DataClasses1DataContext db = new DataClasses1DataContext(C_CONN_STRING); 
var q = from stock in db.GetTable<Stock>() 
     where stock.Group == 1 
     select stock; 

foreach(Stock s in q) 
{ 
    //automatically create XML document here? 
} 

죄송합니다 이 코드에서 XML 리터럴을 지원하는 당신이 생성 할 XML의 형태로, 그래서 이것은 단지 추측입니다 ...

DataClasses1DataContext db = new DataClasses1DataContext(C_CONN_STRING); 
    var q = from stock in db.GetTable<Stock>() 
      where stock.Group == 1 
      select stock; 

    XDocument doc = new XDocument(); 
    foreach(Stock s in q) 
    { 
     doc.Add(
      new XElement("Stock" 
       new XAttribute("Group", stock.Group), 
       new XAttribute("Product", stock.Product), 
       new XAttribute("Quantity", stock.Quantity))); 
    } 
+0

아, 당신이 빨리했다가 .. :) – Philippe

1

당신은, 그렇게 VB를 사용할 수 있습니다. 이 같은 생산합니다

var users = new XElement("users", 
    from user in SampleData.AllUsers 
    select new XElement("user", 
     new XAttribute("name", user.Name), 
     new XAttribute("type", user.UserType)) 
); 

: 당신은 C#을 위해 이동해야하는 경우

, 당신은 XElement를 (C# in Depth에서 가져온 예)를 사용할 수 있습니다

<users> 
    <user name="Tim Trotter" type="Tester" /> 
    <user name="Tara Tutu" type="Tester" /> 
    <user name="Deborah Denton" type="Developer" /> 
    <user name="Darren Dahlia" type="Developer" /> 
    <user name="Mary Malcop" type="Manager" /> 
    <user name="Colin Carton" type="Customer" /> 
</users>