首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >VS 2017 -需要修复`VS‘代码段输出

VS 2017 -需要修复`VS‘代码段输出
EN

Stack Overflow用户
提问于 2018-10-25 12:24:22
回答 2查看 677关注 0票数 1

在VS 2017的某个时候(很可能是在对15.8.7版本进行更新之后),通常生成cwConsole.WriteLine();代码片段已经开始生成System.Console.WriteLine();

令人惊讶的是,这种行为并不是常量的--在与版本相同的旧项目中,它可以正常工作。

我试图删除.vs文件夹,但没有帮助。

下面是来自‘C:\Program (x86)\Microsoft C#\cw.snippet的cw.snippet文件的内容

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <CodeSnippet Format="1.0.0">
        <Header>
            <Title>cw</Title>
            <Shortcut>cw</Shortcut>
            <Description>Code snippet for Console.WriteLine</Description>
            <Author>Microsoft Corporation</Author>
            <SnippetTypes>
                <SnippetType>Expansion</SnippetType>
            </SnippetTypes>
        </Header>
        <Snippet>
            <Declarations>
                <Literal Editable="false">
                    <ID>SystemConsole</ID>
                    <Function>SimpleTypeName(global::System.Console)</Function>
                </Literal>
            </Declarations>
            <Code Language="csharp"><![CDATA[$SystemConsole$.WriteLine($end$);]]>
            </Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

是否有一种方法可以修复cw片段,使其始终生成Console.WriteLine();

EN

回答 2

Stack Overflow用户

发布于 2021-01-20 02:29:00

对我来说,我最终只是编辑了片段本身。我确信每次更新时都需要这样做,而且我也不确定在创建用户定义的代码段之外是否有更好的永久修复。

我的快速和肮脏的解决办法是编辑文件..。

%USERPROFILE%.vscode\extensions\ms-dotnettools.csharp-1.23.8\snippets\csharp.json

然后查找下面的部分(在第53行附近找到我的部分).

代码语言:javascript
运行
复制
"Console.WriteLine": {
    "prefix": "cw",
    "body": [
        "System.Console.WriteLine($0);"
    ],
    "description": "Console.WriteLine"
},

那就换衣服..。

代码语言:javascript
运行
复制
"System.Console.WriteLine($0);"

为了..。

代码语言:javascript
运行
复制
"Console.WriteLine($0);"

保存,然后重新启动VSCode并测试cw片段。

票数 2
EN

Stack Overflow用户

发布于 2018-10-25 15:07:18

如果尚未在页面上添加系统的using语句,则可以告诉代码段。包括下面的(后)、<snippet> (打开)标记和打开<declarations>标记()之前的

代码语言:javascript
运行
复制
<Imports>
    <Import>
        <Namespace>System</Namespace>
    </Import>
</Imports>

如果要添加更多的引用(在本例中不需要,但将来可能需要),则需要生成单独的标记对(如下所示)。

代码语言:javascript
运行
复制
<Import>
    <Namespace></Namespace>
</Import>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52989214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档