2016-05-11 1 views
0

私は、dllツールキットを使用してPCゲームで取引オークション(ebayなど)を分析するプログラムを開発中です。リストアイテム内のデータを含むオブジェクトへのアクセス

AuctionResponse.AuctionInfo 

そして私は、リストデータを変換:私は次のメソッドを呼び出すリストにアクセスするためには

public List<AuctionInfo> AuctionInfo { get; set; } 

ツールキットには、次のフィールドを持つクラス「AuctionResponse」を持っていますデータテーブルに追加します。

ただし、リスト内の項目の1つはオブジェクトそのものであり、直接アクセスする方法を理解できません。

たとえば、詳細分析のためにAuctionInfo ItemData情報にアクセスするにはどうすればよいですか?ツールキットが参照として追加されたため、ソースコードを編集できません。

public class AuctionInfo 

{ 
    public ItemData ItemData { get; set; } 

    public string BidState { get; set; } 

    public uint BuyNowPrice { get; set; } 

    public uint CurrentBid { get; set; } 

    public int Expires { get; set; } 

} 


public class ItemData 

{ 
    public long AssetId { get; set; } 

    public ushort Assists { get; set; } 

    public List<Attribute> AttributeList { get; set; } 

    public ushort CardSubTypeId { get; set; } 

} 

/////////////////////////////////////////////////////////////////////

エラーCS1061「リスト」の定義が含まれていません:私は.ItemDataを追加すると//////////////////

private async void button1_Click(object sender, EventArgs e) 
    { 

     var tradePileResponse = await _client.GetTradePileAsync(); 
     rb1.Text = string.Format("Found {0} tradepile items", 
        tradePileResponse.AuctionInfo.Count); 

     datagrid1.DataSource = tradePileResponse.AuctionInfo.ItemData; 

私はエラーを取得します'ItemData'および 'ListData'というタイプの最初の引数を受け入れる拡張メソッド 'ItemData'が見つかりませんでした(使用するディレクティブまたはアセンブリ参照がありません)

+2

どのようにアクセスしようとしていますか?どのUI技術を使用していますか? ASP.NET/WPF/WinForms?プロパティにアクセスするのは簡単なので、たとえば、AuctionResponse.AuctionInfo.ItemData.AssetIdです。 –

+0

私はWinFormsを使用しています、ありがとう、私は今あなたの提案を試みます。 –

+1

'tradePileResponse.AuctionInfo'は、実際には' AuctionInfo'の 'List'です。どちらからItemDataにアクセスするかを決める必要があります。 –

答えて

0

私はh foreachループでリストを反復することで、私の問題を解決してください。何らかの理由で、ループ内でアクセス可能な要素がありました。 @Sam Pearsonと@Mike McCaughanありがとうございました。

 var tResponse = await _client.GetAsync(); 
     foreach (var response in tResponse.ListInfo) 

     dataGridtest.Rows.Add( response.ItemData.ResourceId, 
            response.Item, 
            response.Date, 
            response.Expiration, 
            response.Status 

            ); 
関連する問題