2013-07-16 7 views
8

यह उदाहरण है:क्या मैं LINQ में सीधे अपनी खुद की कक्षा की एक सूची तैयार कर सकता हूं?

public class FotoLiveLove 
{ 
    public string Tipologia { get; set; } 
    public string URL { get; set; } 
} 

IList<FotoLiveLove> fotoLiveLove = xDoc["statuses"].Select(x => new 
{ 
    Tipologia = "twitter", 
    URL = (string)x["URLJSON"] 
}).ToList();  

लेकिन यह acnnot FotoLiveLove में बदलने कहते # 1 बेनामी प्रकार।

उत्तर

15

आप new कीवर्ड के बाद अपने वर्ग के नाम जोड़ने की जरूरत:

IList<FotoLiveLove> fotoLiveLove = xDoc["statuses"].Select(x => new FotoLiveLove() 
{ 
    Tipologia = "twitter", 
    URL = (string)x["URLJSON"] 
}).ToList(); 
+5

+1। एक तरफ ध्यान दें, यदि आप ऑब्जेक्ट प्रारंभकर्ता वाक्यविन्यास का उपयोग करते हैं, तो आपको '()' की आवश्यकता नहीं है। –

2

आप .Select पर प्रकार निर्दिष्ट करने के लिए है। मैं इन मामलों में क्वेरी प्रपत्र का उपयोग कर पसंद करते हैं (लेकिन यह सिर्फ एक वरीयता)

IList<FotoLiveLove> fotoLiveLove = xDoc["statuses"].Select(x => new FotoLiveLove() 
{ 
    Tipologia = "twitter", 
    URL = (string)x["URLJSON"] 
}).ToList(); 
1

: की तरह कुछ प्रयास करें

IList<FotoLiveLove> fotoLiveLove = (from f in x.Doc["statuses"] 
           select new FotoLiveLove(){ 
            Tipologia = "twitter", 
            URL = (string)x["URLJSON"] 
           }).ToList(); 
संबंधित मुद्दे