【问题标题】:Trouble running C# code in VS Code: Getting scriptcs error在 VS Code 中运行 C# 代码时遇到问题:获取脚本错误
【发布时间】:2019-12-10 06:49:47
【问题描述】:

这是我第一次使用 Visual Studio Code,我试图在它上面运行一个简单的代码,但它给了我一个错误,上面写着:

'scriptcs' 未被识别为内部或外部命令, 可运行的程序或批处理文件。

我有这个作为代码:

using System;

struct Employee{
   public int Id { get; set; }
   public string FullName { get; set; }
}

public class MyClass{
 public static void Main(){
   Employee obj= new Employee();
   obj.FullName = "Hello World";
   Console.WriteLine(obj.FullName);
  }
}

我已经尝试安装 Scriptcs Runner,但仍然是同样的问题。有人可以提出其他建议吗?

编辑:

根据您的许多建议,我尝试了以下方法:

  • 创建了一个没有空格的全新文件夹,并以相同的方式命名文件。
  • 从 VS Code 扩展管理器重新安装了 scriptcs Runner 扩展。
  • 仔细检查了我的代码。它在在线 c# 编译器上运行,但不在 VS Code 中。

问题还是一样。出现上述错误。

【问题讨论】:

  • 这里有几个不同的问题:1) 你的代码是错误的(但这不是直接的问题),2) 可能脚本安装不正确,和/或 3) 你可能有在路径名中嵌入空格。强烈建议:如果您想用 C# 编写代码,那么 Visual Studio 可能是您进行任何“严肃”工作的最佳选择:visualstudio.microsoft.com/downloads
  • @FoggyDay,更正代码。 2)从 VS Code 扩展重新安装 ScriptCs 仍然相同,并且 3)我的文件路径名中没有空格 - 仍然得到相同的错误。
  • @FoggyDay 是的,我就是这么想的。我最好继续使用我所拥有的 - Visual Studio。谢谢 :)

标签: c# visual-studio-code scriptcs


【解决方案1】:
  1. 打开扩展并安装 C# 扩展:名称:C#, ,Id: ms-vscode.csharp ,描述:C# for Visual Studio Code(由 OmniSharp 提供支持)。 ,发布者:微软 ,VS商城链接:https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp

  2. 通过输入dotnet new console -o TestConsoleApp 将控制台转到您选择的文件夹并创建一个新的控制台项目 这将创建一个项目文件 TestConsoleApp.csproj

  3. 输入Code .启动VS Code

  4. 在 VS Code 中转到终端并执行 dotnet run --project TestConsoleApp 以运行您的应用程序。或者,您可以开始调试 (F5)

这应该为您提供一个良好的开端,然后您可以使用您的代码。

如果您只想使用代码 sn-ps,您应该尝试 Athanasios Kataras 的回答,但我没有经验。

https://channel9.msdn.com/Blogs/dotnet/Get-started-VSCode-Csharp-NET-Core-Windows 上还有一个视频介绍

【讨论】:

  • 我已经安装了 c# 扩展,但让我检查一下你提到的其余步骤。谢谢:)
  • 我按照您的步骤操作,但仍然遇到相同的错误。我重新安装了 scriptcs Runner,我仔细检查了我的代码并检查了我的路径,所以它没有任何空格。
  • 当您创建新的控制台应用程序项目(在命令或 PowerShell 控制台中)并在 VS Code 终端控制台中使用dotnetrun --project YourProjectName 启动它时,您甚至会遇到相同的错误?我刚试了一下,效果很好。我假设您已经安装了 .NET SDK。不知道还会缺少什么。
【解决方案2】:

您需要脚本运行器扩展和安装脚本

安装和信息指南在这里:http://scriptcs.net/

  1. 安装 Chocolatey
  2. 运行cinst scriptcs 安装最新版本。

然后确保按照本指南安装脚本运行器扩展: https://www.strathweb.com/2015/11/running-c-scripts-and-snippets-in-visual-studio-code-with-scriptcs/

可以直接从 VS Code 安装扩展:

  1. 按 F1
  2. 键入 ext install scriptcsRunner
  3. 选择“安装”

【讨论】:

  • 谢谢。我也去看看。
【解决方案3】:

您正在尝试运行 csharp 程序而不将其创建为项目。对于您希望在不创建完整项目的情况下快速运行的简单一次性操作,您需要 c# 脚本运行程序。您可以按照以下说明安装它。下面是扩展的 github 页面的链接供参考。

转到扩展,搜索 scriptcs 并安装 scriptcsRunner。 你提到你已经安装了这个,但它应该是你上面所需要的一个简单的文件程序所需要的。仔细检查它是否是这里的版本:https://github.com/filipw/vscode-scriptcs-runner.git

或者,如果您想创建一个实际项目,则需要在集成终端中运行一些命令。

  • 初始化项目
    • dotnet new console
  • 添加您的代码
  • 通过 VSCode 运行
    • 或在终端输入dotnet run

https://code.visualstudio.com/docs/languages/dotnet

【讨论】:

【解决方案4】:

在VS code终端输入下面一行代码并回车:

dotnet run

【讨论】:

    【解决方案5】:

    这个问题可以通过改变你终端中的代码运行器执行的命令来解决,这在这个视频中很好地展示了here。

    【讨论】:

    • 您应该在这里完整地回答问题,而不是简单地链接到另一个位置的答案,但鼓励参考主要来源材料。
    • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
    【解决方案6】:

    问题不在 VS Code 中。问题是您的代码不正确。 输出到控制台的行应该在另一个区域,例如在构造函数中。

    using System;
    struct Employee
    {
        public int Id { get; set; }
        public string FullName { get; set; }
    }
    
    public class MyClass
    {
        Employee obj = new Employee();
    
        public MyClass()
        {
                Console.WriteLine(obj.FullName);
        }
    }
    

    【讨论】:

    • 你是对的 - 编码错误绝对是一个问题。但这不是 OP 脚本错误的原因。
    • @IgorZhurba 我已经更改了代码,但仍然出现错误。
    【解决方案7】:

    嗨,我是编程领域的新手,所以在 C# 中也是如此,但我遇到了这样的错误,这是我运行代码方式的原因。 我使用tempcoderunnerfile 运行c#,这就是我收到关于scriptcs 的错误的原因。

    My Error

    pictur of tempcoderunnerfile

    Don't use this way

    所以我删除了tempcoderunnerfile 并使用cmd (dotnet run) 运行代码,它已成功运行代码

    像这样: use dotnet run

    【讨论】:

    • 欢迎来到 Stack Overflow!如果可以,请使用code format 将您的代码、错误等放在帖子本身中,而不是上传图片。这有助于使您的帖子更具可读性,并防止图像被删除时出现问题。 From Review
    猜你喜欢
    • 2021-08-26
    • 1970-01-01
    • 1970-01-01
    • 2011-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-22
    • 1970-01-01
    相关资源
    最近更新 更多