是否可以使用Visual Studio中的代码片段管理器为Razor页面添加自定义代码片段?
我可以为HTML添加代码段,但在任何地方都找不到CSHTML。
我正在使用Visual Studio Community 2019 16.4.1
答案 0 :(得分:1)
那是因为没有专用的Cshtml代码段。 Razor代码为C#或VB,因此这些代码段在代码块中有效。 要使用这些片段,您只需打开一个代码块:
@
或@(均可打开显式语句foreach
要编辑代码段,请按 Ctrl + K , Ctrl + B
答案 1 :(得分:1)
这在Visual Studio 2019中为我工作了
创建并保存XML .snippet文件。示例模板:
<CodeSnippet Format="1.1.0">
<Header>
<Title>NameOfSnippet</Title>
<Author>YourName</Author>
<Shortcut>ShortCutName</Shortcut>
<Description>Description</Description>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>Id</ID>
<ToolTip>Please add an ID</ToolTip>
<Default>REPLACE_ID</Default>
</Literal>
</Declarations>
<Code Language="html"><![CDATA[<div id="$Id$">Example HTML Snippet</div>$end$]]></Code>
</Snippet>
您应该在cshtml中看到您的代码段,因为语言是html,而不是CSharp,因此无需打开代码块
答案 2 :(得分:0)
当我尝试解决此问题时,我的心理模型中缺少的是.cshtml文件由位于其各自语言环境中的多个部分组成。例如,您可能有:
<style></style>
块,其内容为CSS,而VS可以识别其中的CSS片段,<script></script>
块具有javascript内容,而VS可以识别javascript代码段@
块,其中vs可以识别CSharp或基本代码段在我的情况下,我想添加一个JavaScript代码段,但我认为可用代码段直接与我的文件类型绑定在一起,因此我试图将它们添加为HTML代码段(然后当它们没有显示时感到失望在我的脚本标签中。)
ALSO,需要特别注意的是,至少在VS 2017中,您可能需要重新启动VS才能使编辑器识别任何新的片段。