gpt4 book ai didi

powershell - 为什么 Console.WriteLine 不向 NuGet 包管理器窗口输出任何内容?

转载 作者:行者123 更新时间:2023-12-02 23:30:25 29 4
gpt4 key购买 nike

谁能告诉我为什么下面的代码没有在 PS 屏幕上显示“blablabla”?我所看到的只是从函数返回的随机数。

# Create a function that loads our managed code into powershell
function InitType
{
[string]$SourceCode = @"

using System;

namespace TestApp
{

// This class houses the public methods that we'll use from powershell

public static class TestMethods
{
public static int GetRandom()
{
var id = new Random().Next();
Console.WriteLine("bla bla bla");
return id;
}
}
}
"@

# use the powershell 2.0 add-type cmdlet to compile the source and make it available to our powershell session
add-type -TypeDefinition $SourceCode
}

# Load our C# code
InitType

# Call our method
[TestApp.TestMethods]::GetRandomAndOutputMessage

()

最佳答案

Nuget 包管理器不是 PowerShell 控制台。 Console.WriteLine 写入控制台“应用程序”的控制台。 Visual Studio 不是控制台应用程序。运行 NPM 的窗口托管 PowerShell 引擎并实现 PSHost 接口(interface)以允许引擎将信息输出到窗口。 Console.WriteLine 在这种情况下将不起作用。

关于powershell - 为什么 Console.WriteLine 不向 NuGet 包管理器窗口输出任何内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13035356/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com