通过


教程:使用 Visual Studio Code 创建 .NET 类库

在本教程中,你将创建一个简单的实用工具库,其中包含单个字符串处理方法。

类库 定义应用程序调用的类型和方法。 如果库面向 .NET Standard 2.0,则任何支持 .NET Standard 2.0 的 .NET 实现(包括 .NET Framework)都可以调用它。 如果库面向 .NET 10,则任何面向 .NET 10 的应用程序都可以调用它。 本教程演示如何以 .NET 10 为目标。

创建类库时,可以将其分发为第三方组件,也可以将其分发为包含一个或多个应用程序的捆绑组件。

先决条件

安装说明

在 Windows 上,使用此 WinGet 配置文件 来安装所有必备组件。 如果已安装某些内容,WinGet 将跳过此步骤。

  1. 下载该文件,然后双击以运行它。
  2. 阅读许可协议,键入 y,并在系统提示接受时按下 Enter
  3. 如果在任务栏中收到闪烁的用户帐户控制(UAC)提示,请允许安装继续。

在其他平台上,需要单独安装其中每个组件。

  1. .NET SDK 下载页下载 建议的安装程序,然后双击以运行它。 下载页可检测平台,并推荐平台的最新安装程序。
  2. Visual Studio Code 主页下载最新的安装程序,然后双击以运行它。 该页还会检测平台,并且链接应该适合你的系统。
  3. 单击 C# DevKit 扩展页上的“安装”按钮。 这将打开 Visual Studio 代码,并询问是否要安装或启用扩展。 选择“安装”。

创建类库项目

首先创建名为“StringLibrary”的 .NET 类库项目和关联的解决方案。 解决方案充当一个或多个项目的容器。 你将向同一解决方案添加其他相关项目。

  1. 启动 Visual Studio Code。

  2. 转到资源管理器视图并选择 创建 .NET 项目。 或者,可以使用 Ctrl+Shift+P(MacOS 上的 Command+Shift+P)打开命令面板,然后键入“.NET”并查找并选择 .NET:新建项目命令。

  3. 选择项目模板 类库

  4. 然后选择要创建新项目的位置:创建名为 ClassLibraryProjects 的文件夹,然后选择它。

  5. 将项目命名 StringLibrary

  6. 选择 .sln 作为解决方案文件格式。

  7. 选择“ 显示所有模板”选项

  8. 接下来,选择 .NET 10。 然后选择“ 创建项目”。

  9. 在“ 是否信任此文件夹中的文件作者?” 对话框中,选择“ 是”,我相信作者。 你可以信任作者,因为此文件夹只有 .NET 生成的文件,并由你添加或修改。

  10. 项目创建完成后,Class1.cs 将打开。

  11. Class1.cs 的内容替换为以下代码:

    namespace UtilityLibraries;
    
    public static class StringLibrary
    {
        public static bool StartsWithUpper(this string? str)
        {
            if (string.IsNullOrWhiteSpace(str))
                return false;
    
            return char.IsUpper(str[0]);
        }
    }
    

    类库 UtilityLibraries.StringLibrary包含名为 StartsWithUpper的方法。 此方法返回一个 Boolean 值,该值指示当前字符串实例是否以大写字符开头。 Unicode 标准将大写字符与小写字符区分开来。 如果字符为大写,Char.IsUpper(Char) 方法将返回 true

    StartsWithUpper扩展方法的形式进行实现,这样就可以将其作为 String 类成员进行调用。

  12. 保存文件。

  13. 资源管理器 视图底部展开解决方案资源管理器

  14. 右键单击 解决方案资源管理器中的解决方案 并选择 生成,或打开命令面板并选择 .NET:生成 以生成解决方案,并验证项目是否编译时没有错误。

    终端输出如以下示例所示:

      Determining projects to restore...
      All projects are up-to-date for restore.
      StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net10.0\StringLibrary.dll
    Build succeeded.
        0 Warning(s)
        0 Error(s)
    Time Elapsed 00:00:02.78
    

将控制台应用添加到解决方案

添加使用类库的控制台应用程序。 应用将提示用户输入字符串并报告字符串是否以大写字符开头。

  1. 右键单击解决方案资源管理器 中的解决方案,然后选择 新建项目,或在命令面板中选择 .NET:新建项目

  2. 选择 控制台应用

  3. 为它命名 ShowCase,选择默认目录,然后选择“ 创建项目”。

  4. 打开 ShowCase/Program.cs,并将所有代码替换为以下代码。

    using System;
    using UtilityLibraries;
    
    class Program
    {
        static void Main(string[] args)
        {
            int row = 0;
    
            do
            {
                if (row == 0 || row >= 25)
                    ResetConsole();
    
                string? input = Console.ReadLine();
                if (string.IsNullOrEmpty(input)) break;
                Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " +
                                  $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}");
                row += 3;
            } while (true);
            return;
    
            // Declare a ResetConsole local method
            void ResetConsole()
            {
                if (row > 0)
                {
                    Console.WriteLine("Press any key to continue...");
                    Console.ReadKey();
                }
                Console.Clear();
                Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}");
                row = 3;
            }
        }
    }
    

    该代码使用 row 变量来维护写入控制台窗口的数据行数的计数。 每当它大于或等于 25 时,代码将清除控制台窗口并向用户显示消息。

    程序提示用户输入字符串。 它指示字符串是否以大写字符开头。 如果用户在没有输入字符串的情况下按 Enter 键,应用程序将结束,控制台窗口将关闭。

  5. 保存更改。

添加项目引用

最初,新的控制台应用项目无权访问类库。 若要允许它在类库中调用方法,请创建对类库项目的项目引用。

  1. 解决方案资源管理器中,右键单击 ShowCase 项目,然后选择添加项目引用

  2. 选择 StringLibrary。

小窍门

或者,将以下内容添加到 ShowCase.csproj

<ItemGroup>
  <ProjectReference Include="..\StringLibrary\StringLibrary.csproj" />
</ItemGroup>

运行应用

  1. 使用顶部菜单栏选择运行>调试前运行

  2. 选择C#

  3. 选择 C#:ShowCase

    如果收到错误,指出未加载 C# 程序,请关闭已打开的文件夹,然后打开 ShowCase 文件夹。 然后再次尝试运行应用。

  4. 输入字符串并按 Enter 以试用程序,然后按 Enter 退出

    终端输出如以下示例所示:

    Press <Enter> only to exit; otherwise, enter a string and press <Enter>:
    
    A string that starts with an uppercase letter
    Input: A string that starts with an uppercase letter
    Begins with uppercase? : Yes
    
    a string that starts with a lowercase letter
    Input: a string that starts with a lowercase letter
    Begins with uppercase? : No
    

其他资源

后续步骤

在本教程中,你创建了一个库项目,并添加了使用该库的控制台应用项目。 在下一教程中,将单元测试项目添加到解决方案。