小编xen*_*rse的帖子

New-Object:找不到"PSCredential"的重载和参数计数:"2"

我正在Windows 8.1机器上编写PowerShell脚本.尝试使用New-Object cmdlet创建PSCredential对象时,出现此错误:

New-Object:找不到"PSCredential"的重载和参数count:"2".

在另一台Windows 8.1机器上运行完全相同的脚本对我来说很好.我还验证了两台机器都运行相同版本的PowerShell 4.0

两台计算机都安装了相同的.NET Framework 4.0.

知道为什么会这样,以及如何解决这个问题?

$userPassword = ConvertTo-SecureString -String "MyPassword" -AsPlainText -Force
$userCredential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "myUserName", $userPassword
Run Code Online (Sandbox Code Playgroud)

经过一些测试后,我发现了问题所在.对于我的功能,我打算从用户那里获取用户名和密码,但如果用户决定跳过这些输入参数,也会提供默认值.

为此我通过在参数部分添加以下行来实现它

[string][ValidateNotNullOrEmpty()] $userPassword = "myPassword",
Run Code Online (Sandbox Code Playgroud)

似乎问题是我在参数中将它定义为[String]但后来试图成为SecureString,这导致了问题.

删除参数中的[String]属性解决了问题.

.net powershell

30
推荐指数
2
解决办法
4万
查看次数

Microsoft 计算机视觉 OCR 读取 API 按 S3 交易而非 S2 收费

我正在使用 Microsoft 计算机视觉 API 进行 OCR 处理,我注意到它们在我的账单中作为 S3 交易而不是 S2 进行收费。 在此输入图像描述

我正在使用 .NET SDK,我使用的 API 就是这个。 https://learn.microsoft.com/en-us/dotnet/api/microsoft.azure.cognitiveservices.vision.computervision.computervisionclientextensions.readasync?view=azure-dotnet

我还确认 SDK 调用的实际 REST API 是以下 POST /vision/v3.2/read/analyze https://centraluseuap.dev.cognitive.microsoft.com/docs/services/computer-vision-v3- 2/操作/5d986960601faab4bf452005

根据文档,这应该是 OCR Read API,对吗? https://learn.microsoft.com/en-us/azure/cognitive-services/computer-vision/vision-api-how-to-topics/call-read-api

我很困惑为什么我的通话按 S3 而不是 S2 收费。这对我来说很重要,因为 S3 比 S2 贵 50%。使用定价计算器,1000 个 S2 交易为 1 美元,而 1000 个 S3 交易为 1.5 美元。 https://azure.microsoft.com/en-us/pricing/calculator/?service=cognitive-services

OCR 和“描述和识别文本”有什么区别?OCR(光学字符识别)根据定义必须识别文本。我调用 Read API 时没有任何可选参数,因此我没有要求“描述”,因此我认为调用应该是 S2 功能而不是 S3 功能。 在此输入图像描述

我已经在 Microsoft 问答中发布了这个问题,但我认为这样可能会获得更多流量,从而帮助我更快地获得答案。 https://learn.microsoft.com/en-us/answers/questions/689767/computer-vision-api-charged-as-s3-transaction-inst.html

azure-cognitive-services

2
推荐指数
1
解决办法
1079
查看次数