如何在片段中转义字符串插值
How to escape string interpolation in snippet
字符串插值很棒,片段也很棒,但它们不能很好地结合在一起。我有一个(部分)看起来像这样的片段:
job.Location = $"{e["$locationfield$"]}";
return true;
locationfield
部分应该是替代品,但当然会看到 '"{e["
是替代品。因此,当您尝试使用该代码段时,该部分被搞砸了:
job.Location = locationfield
下面的其余代码都不见了(因为它无法匹配另一个 $
大概)。
有解决办法吗?或者您可以不在代码段中使用字符串插值吗?
好的,事实证明,这非常简单。我一时兴起做了这个并且成功了:
job.Location = $$"{e["$locationfield$"]}";
return true;
另一个我没有尝试过的解决方案是,您实际上可以指定代码段应该使用什么作为分隔符:
<Code Language="csharp" Delimiter="$">
只需将 $
更改为您 不会 在此特定代码块中使用的其他内容。
字符串插值很棒,片段也很棒,但它们不能很好地结合在一起。我有一个(部分)看起来像这样的片段:
job.Location = $"{e["$locationfield$"]}";
return true;
locationfield
部分应该是替代品,但当然会看到 '"{e["
是替代品。因此,当您尝试使用该代码段时,该部分被搞砸了:
job.Location = locationfield
下面的其余代码都不见了(因为它无法匹配另一个 $
大概)。
有解决办法吗?或者您可以不在代码段中使用字符串插值吗?
好的,事实证明,这非常简单。我一时兴起做了这个并且成功了:
job.Location = $$"{e["$locationfield$"]}";
return true;
另一个我没有尝试过的解决方案是,您实际上可以指定代码段应该使用什么作为分隔符:
<Code Language="csharp" Delimiter="$">
只需将 $
更改为您 不会 在此特定代码块中使用的其他内容。