【发布时间】:2023-03-20 12:57:01
【问题描述】:
C# 中有许多代码使用关键字using 和new。它们看起来很简单!
如何在 PowerShell 中优雅地实现这一点!
例如我想把下面的C#代码改成PowerShell
using (var image = new MagickImage(new MagickColor("#ff00ff"), 512, 128))
{
new Drawables()
// Draw text on the image
.FontPointSize(72)
.Font("Comic Sans")
.StrokeColor(new MagickColor("yellow"))
.FillColor(MagickColors.Orange)
.TextAlignment(TextAlignment.Center)
.Text(256, 64, "Magick.NET")
// Add an ellipse
.StrokeColor(new MagickColor(0, Quantum.Max, 0))
.FillColor(MagickColors.SaddleBrown)
.Ellipse(256, 96, 192, 8, 0, 360)
.Draw(image);
}
new 表达式很难写,因为它包含另一个!有什么优雅的解决方案?
【问题讨论】:
-
@Claies C# 和 PowerShell 有很多相似之处。 PS可以使用C#类库,但是有些地方不容易转换,比如上面的
-
@Claies 都在 .NET 框架上运行。 Powershell 可以完成其他 .NET 语言(如 F#、C#、VB.NET...)的所有操作,反之亦然
-
使用以下工具,可以在C#和PowerShell之间进行转换,但是复杂代码的效果不是很好,ironmansoftware.com/powershell-pro-tools-powershell-module
标签: c# powershell code-conversion