簡體   English   中英

在 c# 中為 MS Deploy 代碼的變量名稱添加雙引號

[英]Add double quotes to variable name for MS Deploy code in c#

它的 ac# 代碼寫在一個 SSIS 腳本任務組件中。

PS_script + @"""$compname = " "\\" + Row.computername"\\" + "$appname =" + Row.applicationname + " $appvalue = " + Row.appvalue + "";

我正在綁定 MS 部署並設置來自表驅動的參數。 上述語句引發錯誤,因為我無法在計算機名參數中傳遞雙引號。

https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/verbatim

在 C# 中,帶有前綴@的文字字符串, ""將被替換為"

例子 :

var str = @"$compname = """ + Row.computername + @"""";

如果變量Row.computername的值為SERV01 ,則結果將是:

$compname = "SERV01"

您還可以使用\\對字符進行轉義。 然后\\"將被替換為"

例子 :

var str = "$compname = \"" + Row.computername + "\"";

如果變量Row.computername的值為SERV01 ,則結果將是:

$compname = "SERV01"

在你的情況下,你也可以使用string.Format來增加 lisibility :

string.Format(
    @" $compname = ""{0}"" $appname = ""{1}"" $appvalue = ""{2}""",
    Row.computername, Row.applicationname, Row.appvalue
);

警告,對於 SSIS 腳本任務,您不能使用字符串插值(文字字符串前綴$ )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM