2012-03-30 17 views
0

私は初心者です、誰かが "パーツ"タイプを手伝ってもらえますか?正しいタイプを見つけることができず、オブジェクト "パーツ"を返すことができません。あなたがnew dictSurasを選択しているので感謝C#with Linq XML

private ???? load_parts() 
{ 
    var element = XElement.Load("xml/suras.xml"); 
    **var** Parts= from var in element.Descendants("part") 
       orderby var.Attribute("index").Value 
       select new dictSuras 
       { 
        PartIndex = Convert.ToInt32(var.Attribute("index").Value), 
        PartPosition = Convert.ToInt32(var.Attribute("position").Value), 
        PartName = var.Attribute("name").Value 
       }; 

    return Parts; 
} 
+0

明示的なキャスト演算子 'XAttribute'の使用を検討することもできます。たとえばPartIndex =(int)var.Attribute( "index")は、コードが少なくなるだけでなく、コードが騒々しい儀式型コードだったのです。左はIMOです。 – devgeezer

答えて

5

は、戻り値はIEnumerable<dictSuras>です。

+0

ありがとう非常にありがとうございます(IEnumerable )! – wafers

+0

@saafh、アドバイス:ReSharperをチェックアウトすることを強くお勧めします。このようなことには素晴らしいことです。一回のキーストロークで、 'var'宣言を「本当の」型に変換することができます(この場合、' IEnumerable ')。私はそれが大きな利点であることを知り、それは非常に人気です。 –

3

OPが探している情報を提供する回答ではなく、それを見つける方法を示す回答をします。私が思うのは、私たち全員にとってより簡単です。

Visual Studioでは、変数にマウスオーバーすると、変数の種類を含むツールチップが表示されます。あなたが私のようで、varを嫌っているのなら、これは非常に便利です。実際のタイプを一目で見ることができます。

+0

+1あなたのようなものではなく、 'var'も好きです! –

+0

本当に役に立つヒント!私は昨日からC#+ wp7プログラミングをプログラミングしています:) – wafers