0

我用 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 中是否有任何机制可以“永久”存储此类信息?还是我必须使用基于文件/注册表或环境变量的解决方案?你有什么建议?

4

2 回答 2

2

PowerShell 没有用于跨会话持久化数据的内置方法;您必须想出一种自己存储和检索它的方法。

于 2013-04-02T13:18:48.220 回答
0

一种方法是将其存储在全局变量中并从其他函数中检查它,甚至将变量的值分配给所需的参数。

没有“永远”的机制,即使是 Azure 团队也将他们的信息保存到磁盘。

于 2013-04-02T13:32:46.487 回答