我在c#中编写了一个powershell模块,它允许我调用一些web服务。 在我可以使用它们之前,我必须指定服务的位置。例如:
Set-ServiceUrl 'http://myService.cloudapp.net/'
Create-Something ...
Get-Something ...
测试函数Create-Something和Get-Something访问在Set-ServiceUrl函数中设置的静态变量“serviceurl”。
这类似于Azure模块,您必须先调用Set-AzureSubscription才能查询服务。
我和Azure模块之间的不同之处在于,每次启动powershell时我都必须为我的模块指定服务URL,而我必须只设置一次AzureSubscription。
PowerShell中是否存在“永久”存储此类信息的机制?或者我是否必须使用基于文件的/注册表或环境变量解决方案?你会建议什么?
答案 0 :(得分:2)
PowerShell没有用于跨会话保存数据的内置方法;你必须想出一种存储方式。自己找回来。
答案 1 :(得分:0)
一种方法是将其存储在全局变量中,并从其他函数中检查它,甚至将变量的值赋给所需的参数。
没有“永久”机制,即使Azure团队也将其信息保存到磁盘。