linux 运行c# 环境搭建

  • Post author:
  • Post category:linux




linux (ubuntu)使用vscode搭建c#的环境



第一步:根据linux发行版版本 安装 .net SDK

具体详情可参考


对于21.10版本

使用 APT 进行安装可通过几个命令来完成。 安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。

wget https://packages.microsoft.com/config/ubuntu/21.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

sudo dpkg -i packages-microsoft-prod.deb

rm packages-microsoft-prod.deb

安装 SDK

  sudo apt-get update

  sudo apt-get install -y apt-transport-https 
  
  sudo apt-get update 
  
  sudo apt-get install -y dotnet-sdk-6.0

安装运行时

sudo apt-get update
  sudo apt-get install -y apt-transport-https
  sudo apt-get update 
  sudo apt-get install -y aspnetcore-runtime-6.0

作为 ASP.NET Core 运行时的一种替代方法,你可以安装不包含 ASP.NET Core 支持的 .NET 运行时:将上一命令中的 aspnetcore-runtime-6.0 替换为 dotnet-runtime-6.0:

sudo apt-get install -y dotnet-runtime-6.0



第二步,记得下载c#的拓展



第三步: 创建c# 的正确步骤

使用 dotnet new console -o 《file name》 创建一个控台制窗口

如:

ding-jin-xing@dingjinxing-HP-Pavilion-Gaming-Laptop-15-ec1xxx:~$    dotnet new console -o MyNet



已成功创建模板“控制台应用”。

正在处理创建后操作...
在 /home/ding-jin-xing/MyNet/MyNet.csproj 上运行 “dotnet restore”...
  正在确定要还原的项目…
  已还原 /home/ding-jin-xing/MyNet/MyNet.csproj (用时 125 ms)。
已成功还原。

//解释
dotnet new console命令为您创建一个新的控制台应用程序。

-o参数创建一个名为MyApp的目录,在其中存储应用程序,并用所需文件填充它。

cd MyApp命令会将当前目录更改为刚刚为新应用创建的目录。



此时我们可以找到我们创建的文件,可以在vscode 中直接打开这些文件夹

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iNYqpQun-1645625252619)(/home/ding-jin-xing/.config/Typora/typora-user-images/image-20220223215317472.png)]


但此时若右键运行以下的测试代码,会出错。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FJOuKXzk-1645625252620)(/home/ding-jin-xing/.config/Typora/typora-user-images/image-20220223215514720.png)]

报错:

[Running] scriptcs "/home/ding-jin-xing/文档/文档/c#Document/Program.cs"
/bin/sh: 1: scriptcs: not found

[Done] exited with code=127 in 0.014 seconds


我们只能通过在终端 使用 dotnet run 命令来运行程序

测试代码


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace _1002_for循环输出九九乘法表
{
    class Program
    {
        static void Main(string[] args)
        {
            int i, j, z;
            for (i = 1, j = 1; i <= 1; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 2; i <= 2; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 3; i <= 3; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 4; i <= 4; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 5; i <= 5; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 6; i <= 6; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 7; i <= 7; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 8; i <= 8; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            for (i = 1, j = 9; i <= 9; i++)
            {
                Console.Write("{0}*{1}={2}" + "\t", i, j, z = i * j);
            }
            Console.WriteLine("\n");
            Console.ReadLine();
        }
    }
}



运行结果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MdXZdRDn-1645625252621)(/home/ding-jin-xing/.config/Typora/typora-user-images/image-20220223220132949.png)]

当然我们可以在终端使用 vim 《file name》、

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nrnNMZo7-1645625252621)(/home/ding-jin-xing/.config/Typora/typora-user-images/image-20220223220426243.png)]

对 .cs文件进行编写

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eq31r9pM-1645625252622)(/home/ding-jin-xing/.config/Typora/typora-user-images/image-20220223220321269.png)]



版权声明:本文为qq_55125921原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。