我經常需要將現有的C#代碼片段/ .CS文件轉換爲PowerShell腳本。我怎麼能自動化這個過程?如何將C#代碼轉換爲PowerShell腳本?
雖然我知道有方法可以convert a .cs file to a cmdlet,我只有在將C#代碼轉換爲腳本或模塊感興趣。
我經常需要將現有的C#代碼片段/ .CS文件轉換爲PowerShell腳本。我怎麼能自動化這個過程?如何將C#代碼轉換爲PowerShell腳本?
雖然我知道有方法可以convert a .cs file to a cmdlet,我只有在將C#代碼轉換爲腳本或模塊感興趣。
我知道你正在尋找某種方式將C#直接轉換爲PowerShell,但我認爲這足夠接近它的建議。
在PS V1,你可以使用編譯.NET的DLL
PS> $client = new-object System.Net.Sockets.TcpClient
PS> $client.Connect($address, $port)
在PS V2您可以添加的C#代碼直接進入PowerShell和使用它,而「轉換」使用添加型(從msdn直抄)
C:\PS>$source = @"
public class BasicTest
{
public static int Add(int a, int b)
{
return (a + b);
}
public int Multiply(int a, int b)
{
return (a * b);
}
}
"@
C:\PS> Add-Type -TypeDefinition $source
C:\PS> [BasicTest]::Add(4, 3)
C:\PS> $basicTestObject = New-Object BasicTest
C:\PS> $basicTestObject.Multiply(5, 2)
有一個Reflectoradd-in for PowerShell,這將讓你看到對應的PowerShell腳本的靜態方法在類
有一個很好的職位與例如:http://blogs.msmvps.com/paulomorgado/2009/09/17/powershell-for-the-net-developer/。
亞當Discroll具有created基於羅斯林轉換器,他甚至提供了一個online code converter - 這似乎爲簡單的腳本工作,但與即靜止成員或類的問題。
嗨阿科斯,這看起來是一個非常有趣的項目。感謝分享! – MagicAndi 2017-07-19 11:03:38
這個代碼轉換器似乎沒有處理上面的代碼,它的問題跟蹤器充滿了類似的投訴,一些與教科書級別的代碼。 – YetAnotherRandomUser 2017-10-20 20:10:22
我可以使用我的自定義庫C#與助手和utils類嗎? – Kiquenet 2013-03-05 15:38:23
@JamesProgran性能如何是這種類型的代碼? – 2014-01-10 11:59:35