C# 在C中运行Powershell脚本时的转义字符问题#
我在C#中转义字符以运行Powershell脚本时遇到问题。为了使问题简短。我做了下面的测试 我可以在Powershell ISE中成功运行以下命令C# 在C中运行Powershell脚本时的转义字符问题#,c#,powershell,escapestring,C#,Powershell,Escapestring,我在C#中转义字符以运行Powershell脚本时遇到问题。为了使问题简短。我做了下面的测试 我可以在Powershell ISE中成功运行以下命令 New-Issue -Summary "Test Summary" -Description "test `"test`" " 基本上,脚本将记录插入数据库表中。该表有两列:摘要和说明。摘要的值为“测试摘要”,说明的值为“测试”测试“” 我试图通过执行以下操作在C#中运行相同的Powershell命令 try{ command = "Ne
New-Issue -Summary "Test Summary" -Description "test `"test`" "
基本上,脚本将记录插入数据库表中。该表有两列:摘要和说明。摘要的值为“测试摘要”,说明的值为“测试”测试“”
我试图通过执行以下操作在C#中运行相同的Powershell命令
try{
command = "New-Issue -Summary \"Test Summary \" -Description \"test `\"test`\" \"";
powerShellInstance = PowerShell.Create();
powerShellInstance.AddScript(command);
Collection<PSObject> PSOutput = powerShellInstance.Invoke();
...
}
catch(Exception e)
{
return e.Message;
}
脚本在C#中运行良好。
我相信我在这里正确地避开了双引号。有人知道这里出了什么问题吗
请注意,此示例仅用于演示目的。我知道我可以以一种简单的方式将数据插入C#中的表中。我只是想弄清楚如何正确地在C#中运行Powershell脚本
多谢各位
注:我忘了提到我更喜欢使用`来转义双引号,而不是在描述字段中使用单引号。因为描述的值是从文本框中获取的。通过这样做,我只能处理文本框中的双引号,并保持一切原样
command = "New-Issue -Summary \"Test Summary \" -Description \"test \"";