列出AWS.NETSDK中的实例

列出AWS.NETSDK中的实例,.net,amazon-ec2,.net,Amazon Ec2,我正在编写代码,使用.NETSDK for AWS列出实例ID和实例类型。我知道我需要使用DescribeInstanceRequest类。我还认为我需要使用ArrayList来存储字符串输出,使用foreach循环来获取所有实例。我只是在组装上有点困难!像在控制台中列出实例ID这样简单的东西对我会有很大帮助 有人做过类似的事情吗 更新10/13/2012 我正朝着我需要的地方迈出非常微小的一步。我是.net AWS SDK的新手,所以这是一个非常缓慢的过程。下面的代码统计我拥有的实例数并返回它

我正在编写代码,使用.NETSDK for AWS列出实例ID和实例类型。我知道我需要使用DescribeInstanceRequest类。我还认为我需要使用ArrayList来存储字符串输出,使用foreach循环来获取所有实例。我只是在组装上有点困难!像在控制台中列出实例ID这样简单的东西对我会有很大帮助

有人做过类似的事情吗

更新10/13/2012 我正朝着我需要的地方迈出非常微小的一步。我是.net AWS SDK的新手,所以这是一个非常缓慢的过程。下面的代码统计我拥有的实例数并返回它。现在我只需要弄清楚如何让它列出实际的实例ID

有什么想法吗

AmazonEC2 ec2 = new AmazonEC2Client();

DescribeInstancesRequest request = new DescribeInstancesRequest();
DescribeInstancesResponse res = ec2.DescribeInstances(request);

Console.WriteLine(res.DescribeInstancesResult.Reservation.Count);
Console.Read();

不是为了打败一匹死马,而是为了我的任务,我必须在HTML表中打印实例ID和实例类型。如果你想把它放在一个网站上,这可能很有用。您只需更改
StreamWriter
的路径即可。这是我的草率成品

  AmazonEC2 ec2 = new AmazonEC2Client();
        DescribeInstancesRequest req = new DescribeInstancesRequest();
        List<Amazon.EC2.Model.Reservation> result = ec2.DescribeInstances(req).DescribeInstancesResult.Reservation;
        using (StreamWriter writer = new StreamWriter(@"C:\Users\Ethan\Desktop\InstanceOutput.html"))                  //change this output to a local address if testing the code
        {
            writer.Write("<table border=1><tbody><tr><th>Instance ID</th><th>Instance Type</th></tr>");
            foreach (Amazon.EC2.Model.Reservation reservation in result)
            {
                foreach (Amazon.EC2.Model.RunningInstance runningInstance in reservation.RunningInstance)
                {
                    writer.WriteLine("<tr><td>" + runningInstance.InstanceId + "</td><td>" + runningInstance.InstanceType + "</td></tr>");
                }
            }
            writer.Write("</tbody></table>");
        }
AmazonEC2 ec2=新的AmazonEC2客户端();
DescribeInstancesRequest req=新的DescribeInstancesRequest();
列表结果=ec2.DescribeInstances(req).DescribeInstancesResult.Reservation;
使用(StreamWriter=newstreamwriter(@“C:\Users\Ethan\Desktop\InstanceOutput.html”)//如果测试代码,请将此输出更改为本地地址
{
Write(“实例类型”);
foreach(结果中的Amazon.EC2.Model.Reservation)
{
foreach(Amazon.EC2.Model.RunningInstance RunningInstance保留中的RunningInstance.RunningInstance)
{
writer.WriteLine(“+runningInstance.InstanceId+”+runningInstance.InstanceType+”);
}
}
作者:写(“”);
}
所以请记住,我是个新手,有人可能会想出一个更干净、更高效、更好的答案。这就是我如何获得要在控制台中打印的实例ID和实例类型

AmazonEC2 ec2 = new AmazonEC2Client();
DescribeInstancesRequest req = new DescribeInstancesRequest();
List<Amazon.EC2.Model.Reservation> result = ec2.DescribeInstances(req).DescribeInstancesResult.Reservation;

        foreach (Amazon.EC2.Model.Reservation reservation in result)
        {
            foreach (Amazon.EC2.Model.RunningInstance runningInstance in reservation.RunningInstance)
            {
                Console.WriteLine(runningInstance.InstanceId);
                Console.WriteLine(runningInstance.InstanceType);
            }
        }
AmazonEC2 ec2=新的AmazonEC2客户端();
DescribeInstancesRequest req=新的DescribeInstancesRequest();
列表结果=ec2.DescribeInstances(req).DescribeInstancesResult.Reservation;
foreach(结果中的Amazon.EC2.Model.Reservation)
{
foreach(Amazon.EC2.Model.RunningInstance RunningInstance保留中的RunningInstance.RunningInstance)
{
WriteLine(runningInstance.InstanceId);
Console.WriteLine(runningInstance.InstanceType);
}
}
有些东西已经过时了

List<Reservation> listReservations = ec2Client.DescribeInstances(requestInstances).Reservations;

foreach (Reservation reservation_item in listReservations)
{
    foreach (Instance instance_item in reservation_item.Instances)
    {
        WriteLine(instance_item.InstanceId);
        WriteLine(instance_item.InstanceType);
    }
}
List listReservations=ec2Client.descripbeInstances(requestInstances).Reservations;
foreach(列表预订中的预订项目)
{
foreach(保留项中的实例项。实例)
{
WriteLine(实例\项.InstanceId);
WriteLine(实例\项.InstanceType);
}
}

请给出一个很好的解释,您的评论没有提供足够的解决方案信息