VMware의 .NET 버전 vCloud SDK를 사용하고 있습니다. 두 개의 저장소가있는 VM이 있는데 하나는 "x"유형이고 다른 하나는 "y"유형입니다. 그러나여러 개의 StorageProfiles가있는 VM
, vm.Resource.StorageProfile.name를 호출 할 때 나는 첫 번째 디스크의 이름을 얻을 수 (x)를
vCloudClient client = new vCloudClient(url, com.vmware.vcloud.sdk.constants.Version.V1_5);
client.Login(userName,pass);
Organization organisation = Organization.GetOrganizationByReference(client, client.GetOrgRefsByName()[orgName]);
Vdc vdc = Vdc.GetVdcByReference(client,organisation.GetVdcRefByName(vdcName));
ReferenceType vappref = vdc.GetVappRefByName("myVappName");
Vapp vapp = Vapp.GetVappByReference(client,vappref);
List<VM> vms = vapp.GetChildrenVms();
foreach(VM vm in vms)
{
//VM I'm having trouble with
string storageprofile = vm.Resource.StorageProfile.name //returns value: x
}
"x"와 "y"를 모두 얻을 수있는 다른 방법이 있나요 창고?
안녕하세요, 귀하의 회신에 감사드립니다. 나는 당신의 제안을 모두 시험해 보았습니다. 첫 번째 질문은 "이 작업은 거부되었습니다."라고 나에게 알려줍니다. 두 번째는 "ACCESS_TO_RESOURCE_IS_FORBIDDEN - DISALLOWED_OPERATIONS"입니다. 나는 이것이 허가와 관련이 있다고 가정하지만, 내가 사용하고있는 로그인 정보는 정확해야한다. – Maerth
"https : // vcloud-example/api/query? type = orgVdcStorageProfile"쿼리를 사용하여 storageprofiles를 찾을 수있었습니다. 고마워요! 나는 이것에 대한 당신의 답을 편집 할 것이고 그것이 괜찮다면 대답으로 표시 할 것입니다. – Maerth
LOL 확실한 것 같습니다. 당신은 admin priveleges huh를 갖고 있지 않습니다. 어쨌든 스토리지 프로파일이 30 이상이면 모든 것을 나열하지 않을 것입니다. 쿼리에서 페이지 크기를 변경해야 할 수도 있습니다. – AdilZ