var userId = "MyAccount@XXXXX.partner.onmschina.cn";
var tenantId = "XXXXX-ca13-4bcb-840d-d3c1638f63b1";
var tenantDomain = "XXXX.partner.onmschina.cn";
var subscriptionId = "XXXXXX-1fb0-4df7-8737-11b8d6bf88ed";
var subscriptionName = "ZS0_Sub_OTR"; WindowsAzure.Commands.Common.AzureRmProfileProvider.Instance.Profile = new AzureRMProfile("D:\\XXXX.json");
var azureAccount = new AzureAccount() { Id = userId, Type = AzureAccount.AccountType.User };
var env = AzureEnvironment.PublicEnvironments["AzureChinaCloud"];
var subscript = new AzureSubscription() { Id = Guid.Parse(subscriptionId), Name = subscriptionName };
var azureContext = new AzureContext(subscript, azureAccount, env, new AzureTenant { Domain = tenantDomain, Id = Guid.Parse(tenantId) });
WindowsAzure.Commands.Common.AzureRmProfileProvider.Instance.Profile.Context = azureContext;
WindowsAzure.Commands.Common.AzureRmProfileProvider.Instance.Profile.Save(); System.Management.Automation.PowerShell ps = System.Management.Automation.PowerShell.Create(System.Management.Automation.RunspaceMode.NewRunspace);
ps.Commands.Clear();
ps.AddCommand("Login-AzureRmAccount");
ps.Commands.Commands[ps.Commands.Commands.Count - ].Parameters.Add("-EnvironmentName", "AzureChinaCloud");
var objs = ps.Invoke();
foreach (var item in objs)
{
Console.WriteLine(item);
}
ps.Commands.Clear();
ps.Commands.AddCommand("Set-AzureRmContext");
ps.Commands.Commands[ps.Commands.Commands.Count - ].Parameters.Add("-SubscriptionName", "ZS0_Sub_OTR");
var sub = ps.Invoke(); //ps.Commands.Clear();
//ps.Commands.AddCommand("Save-AzureRmProfile");
//ps.Commands.Commands[ps.Commands.Commands.Count - 1].Parameters.Add("-Path", "D:\\XXXX.json");
//sub = ps.Invoke(); ps.Commands.Clear();
ps.Commands.AddCommand("Get-AzureRmKeyVault");
ps.Commands.Commands[ps.Commands.Commands.Count - ].Parameters.Add("-VaultName", "SxzKeyVault"); var result = ps.Invoke(); ps.Commands.Clear();
ps.Commands.AddCommand("New-AzureRmKeyVault");
ps.Commands.Commands[ps.Commands.Commands.Count - ].Parameters.Add("-VaultName", "SxzKeyVault3");
ps.Commands.Commands[ps.Commands.Commands.Count - ].Parameters.Add("-ResourceGroupName", "YungoalTest");
ps.Commands.Commands[ps.Commands.Commands.Count - ].Parameters.Add("-Location", "ChinaNorth"); result = ps.Invoke();

C#通过代码调用PowerShell的更多相关文章

  1. C#中调用PowerShell代码

    在C#中调用PowerShell代码,很多时候Add是不好使的!要用AddScript!记录一下! using (Runspace runspace = RunspaceFactory.CreateR ...

  2. 快速找出System.Management.Automation.dll,c#调用powershell

    public static void InvokeSystemPS(string cmd) { List<string> ps = new List<string>(); ps ...

  3. C# 调用PowerShell方法

    PowerShell应为编写和运行都很方便,所以为了重复利用,经常写了一些小方法或者PS代码片段.使用的时候可能会很难找到自己想要的那个方法,如果要是有一个界面把这些代码管理起来并且调用,那就很爽了 ...

  4. 在Bat批处理中调用Powershell脚本

    ##如何在BAT中调用powershell,把下面代码另存为bat格式pushd %~dp0powershell.exe -command ^  "& {set-executionp ...

  5. ngui中 代码调用按钮事件(后来改成了按钮绑定键盘..)

    ngui中 代码调用按钮事件 好烦人啊这个问题, 我弄完发上来 这个问题解决了一半 发现可以用 按钮绑定来解决这个问题,并且更安全方便快速 直接在按钮上添加一个 key binding 指定按键 搞定 ...

  6. 一行代码调用实现带字段选取+条件判断+排序+分页功能的增强ORM框架

    问题:3行代码 PDF.NET是一个开源的数据开发框架,它的特点是简单.轻量.快速,易上手,而且是一个注释完善的国产开发框架,受到不少朋友的欢迎,也在我们公司的项目中多次使用.但是,PDF.NET比起 ...

  7. 我也谈谈 代码调用存储过程超时,SQL Server Management Studio里运行很快的问题

    最近遇到了一个问题就是 一个执行速度很快的存储过程,在代码中调用的时候却超时了. 后来看到了两篇文章: 其中一篇是这样介绍的 今天同事用代码调用存储过程时超时,在SQL Server Manageme ...

  8. 存储过程系列之存储过程sql数据库调用和程序代码调用

    1.存储过程,无参数的存储过程 创建无参数存储存储过程 Create Procedure DCEMREMR_TEMPLATEAs SELECT TOP 10 [FILENAME],[FILETITLE ...

  9. C#调用PowerShell脚本

    今天通过一个小例子,学习了C#如何调用PowerShell脚本文件的Function以及传参. private bool CallPowershell(string outputFile) { str ...

随机推荐

  1. java高分局之jstat命令使用(转)

    转自:http://blog.csdn.net/h_025/article/details/52813817 java高分局之jstat命令使用 jstat命令可以查看堆内存各部分的使用量,以及加载类 ...

  2. JAVA中对List<map<String,Object>>根据map某个key值进行排序

    方法compareTo()比较此对象与指定对象的顺序.如果该对象小于.等于或大于指定对象,则分别返回负整数.零或正整数.返回整数,1,-1,0:返回1表示大于,返回-1表示小于,返回0表示相等. 普通 ...

  3. [Android Security] DEX文件格式分析

    copy from : https://segmentfault.com/a/1190000007652937 0x00 前言 分析 dex 文件格式最好的方式是找个介绍文档,自己再写一个简单的 de ...

  4. HTML5 <Audio>标签API整理(三)

    一.浏览器支持 Internet Explorer 9+, Firefox, Opera, Chrome, 和 Safari 都支持 <audio> 元素. 注意: Internet Ex ...

  5. MVC详解(转)

    原文链接:MVC详解 MVC与模板概念的理解 MVC(Model View Controller)模型-视图-控制器   MVC本来是存在于Deskt op程序中的,M是指数据模型,V是指用户界面,C ...

  6. C++二维数组 取地址 复制给 二维指针

    本来应该是个简单的问题,但是我就不明白了,为什么会段错误了... #include<stdio.h> #define UINT32 unsigned int UINT32 NType1_X ...

  7. 使用C++/libCurl/Jsoncpp读取arcgis wmts 服务(restful模式)

    前言: 最近工作需要将arcgis的wmts服务接入我们的3DGis系统平台,要求用户只输入一个rest模式的wmts服务地址,系统即可自动获取并解析其元数据信息,生成wmts图层,并渲染显示.经过多 ...

  8. 构建-14 Gradle使用技巧

    官方文档 Gradle 提示与诀窍 [Gradle tips and recipes] Gradle 和 Android Plugin for Gradle 提供了一种灵活的方式[a flexible ...

  9. Redis:解决分布式高并发修改同一个Key的问题

    本篇文章是通过watch(监控)+mutil(事务)实现应用于在分布式高并发处理等相关场景.下边先通过redis-cli.exe来测试多个线程修改时,遇到问题及解决问题. 高并发下修改同一个key遇到 ...

  10. Hadoop:安装ftp over hdfs

    https://blog.csdn.net/sptoor/article/details/11484855 https://blog.csdn.net/tengxing007/article/deta ...