คุณจะได้รับระบบปฏิบัติการ Virtual Machines ใน c # ได้อย่างไร

ฉันมี VM สีฟ้าที่ฉันพยายามรับคุณสมบัติบางอย่าง ดูเหมือนว่าฉันไม่สามารถรับระบบปฏิบัติการของ VM ได้ เป็นไปได้ไหมเมื่อ VM ไม่ทำงาน


person user3192935    schedule 06.04.2021    source แหล่งที่มา
comment
ไม่มีความแตกต่างในการรับระบบปฏิบัติการเมื่อเป็นกล่องจริง   -  person DavidG    schedule 06.04.2021
comment
Windows หรือ Linux (หรือ ทั้งสอง?)   -  person gunr2171    schedule 06.04.2021
comment
ควร นี้เป็นเพียง RuntimeInformation.OSDescription เหมือนกับที่ ไม่ บน VM... (มีแง่มุมที่เฉพาะเจาะจงอื่นๆ อีกมากมายใน RuntimeInformation หมายเหตุ)   -  person Marc Gravell    schedule 06.04.2021
comment
สำหรับการพิจารณาระบบปฏิบัติการ ภายนอก ของ VM คุณได้ค้นคว้าเกี่ยวกับการใช้ Azure SDK หรือไม่   -  person gunr2171    schedule 06.04.2021
comment
ฉันจะบอกคุณโดยตรงคือ: windows :-) เว้นแต่คุณจะใช้. net core   -  person Juanma Feliu    schedule 06.04.2021


คำตอบ (1)


เพียงลองใช้แอปคอนโซลง่ายๆ ด้านล่าง:

using Microsoft.Azure.Management.Fluent;
using Microsoft.Azure.Management.ResourceManager.Fluent;
using System;


namespace fluentMgmtTest
{
    class Program
    {
        static void Main(string[] args)
        {
            var AppId = "";
            var AppSecret = "";
            var tenant = "";
            var subscriptionID = "";
            var vmGroup = "";
            var vmName = "";

            var credentials = SdkContext.AzureCredentialsFactory.FromServicePrincipal(AppId, AppSecret, tenant, AzureEnvironment.AzureGlobalCloud);
            var azure = Azure.Configure().Authenticate(credentials).WithSubscription(subscriptionID);

            var vmID = "/subscriptions/" + subscriptionID + "/resourceGroups/" + vmGroup + "/providers/Microsoft.Compute/virtualMachines/" + vmName;

            var vm = azure.VirtualMachines.GetById(vmID);

            Console.WriteLine(vm.OSType);

        }
    }
}

ผลลัพธ์: ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่

หมายเหตุ: โปรดตรวจสอบให้แน่ใจว่าแอป Azure AD ของคุณเป็นอย่างน้อย มอบหมายบทบาทที่มีสิทธิ์ในการอ่าน ก่อนที่คุณจะเรียกใช้โค้ดนี้

person Stanley Gong    schedule 07.04.2021
comment
ขอบคุณสำหรับสิ่งนี้. VM ที่ฉันกำลังดำเนินการอยู่คือเซิร์ฟเวอร์ Windows 2016 ฉันแค่ได้รับ Windows คืนเท่านั้น แต่เมื่อ VM เริ่มต้นแล้ว ฉันจะได้รับมูลค่าทั้งหมด การใช้อินสแตนซ์วิว - person user3192935; 09.04.2021
comment
@ user3192935 ดีใจที่ทราบว่าปัญหาของคุณได้รับการแก้ไขแล้ว หากโพสต์ของฉันมีประโยชน์ โปรดคลิกที่เครื่องหมายถูกข้างคำตอบเพื่อสลับจากเป็นสีเทาเป็นกรอกเพื่อยอมรับเป็นคำตอบ เพื่อช่วยเหลือผู้อื่น และปิดคำถามนี้ :) - person Stanley Gong; 12.04.2021