逃げるか、一言一句言うか、それが私の質問です。
具体的には、C# で (Zebra QLn220) プリンターにいくつかのコマンドをプログラムで送信する必要があります。
! U1 setvar "power.dtr_power_off" "off"
-と:
! U1 setvar "media.sense_mode" "gap"
これらのコマンドには大量の引用符が含まれているため、逐語的な文字列を使用するのが賢明だと思いました。しかし、これに基づいて、引用符を2倍にする必要があるため、おそらく/理論的には次のようにする必要があります。
string dontShutErOff = @"! U1 setvar """power.dtr_power_off""" """off"""";
...これは、コーディング ホラーの猫であるドン キングとグルーチョ マルクスを組み合わせたマッシュアップのように見えます。
この方法で引用符をエスケープする方が良いでしょうか:
string dontShutErOff = "! U1 setvar \"power.dtr_power_off\" \"off\"";
?
Verbatimtraz から逃れる必要がありますか?
アップデート
Eric Lippert の最初の提案に基づいて、これはどうですか:
const string quote = "\"";
string whatever = string.Format("! U1 setvar {0}power.dtr_power_off{0} {0}off{0}", quote);