我为什么得到一个"价值不在预期的范围内"尝试设置IIS应用程序池的凭据时出错?

时间:2017-06-02 23:00:14

标签: powershell iis

我有一个名为" test"的应用程序池。以前创建的。我按照本文中的说明在帐户下运行池:

https://docs.microsoft.com/en-us/iis/manage/powershell/powershell-snap-in-making-simple-configuration-changes-to-web-sites-and-application-pools

这是我的代码:

$pool = Get-Item IIS:\AppPools\test
$pool.ProcessModel.UserName = [string]'domain\testname'
$pool.ProcessModel.Password = [string]'testpassword'
$pool.processModel.identityType = 3
$pool | Set-Item

然而,这给了我一个错误:

Set-Item : Value does not fall within the expected range.
At line:5 char:9
+ $pool | Set-Item
+         ~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Set-Item], ArgumentException
    + FullyQualifiedErrorId : path,Microsoft.PowerShell.Commands.SetItemCommand

我做错了吗?我错过了什么价值?

1 个答案:

答案 0 :(得分:0)

我发现了问题。看来,在清理项目中未使用的Nuget软件包时,我不小心删除了Ninject,这对于工作依赖注入至关重要。我重新安装了几个与ASP.NET相关的Ninject组件,并且能够再次运行它。

遇到此问题时,遍历该项目并检查是否已实现依赖项注入或什至部分实现了依赖项可能很有用。