开发随记-mac使用vscode开发c#项目
hello呀,大家好,我是yangyang。小编我隔了好久又再次需要写C#项目,时间隔得太久了,在vscode里面操作起来就很慢,花了好些时间才熟悉起来,于是今天还是来记录一笔。
mac开发c#有哪些工具可以选择
在mac开发c#,首选工具就是 Visual Studio for Mac,不过微软官方早已正式发文:“根据 Microsoft 的新式生命周期策略,Visual Studio for Mac 已于 2024 年 8 月 31 日停用。 不再支持 Visual Studio for Mac。 Apple 将不再提供进一步的服务更新来解决安全问题或更新平台。 为了获得最安全、最新的体验,我们建议使用 Visual Studio (Windows) 或迁移到 Mac 上的 Visual Studio Code。”,那我们现在的选择肯定就是vscode了。
vscode必要插件安装
C# Dev Kit
C# Dev Kit 可帮助您使用解决方案资源管理器管理代码,并使用集成的单元测试发现和执行来测试代码,从而提升您在任何开发环境中(Windows、macOS、Linux 甚至 Codespace)的 C# 开发体验。
此扩展基于 C# 扩展提供的出色 C# 语言功能,并通过添加一组与 VS Code 本地集成的强大工具和实用程序来增强您的 C# 环境,以帮助 C# 开发人员更快地编写、调试和维护他们的代码,并减少错误。其中一些新工具包括但不限于:
通过集成的解决方案资源管理器管理 C# 项目和解决方案
使用测试资源管理器运行和调试测试的本地测试环境
由 Roslyn 提供支持的语言服务,提供一流的 C# 语言功能,例如代码导航、重构、语义感知等.
.NET Install Tool
此扩展为其他扩展(如 C# 和 C# Dev Kit 扩展)提供了一种统一的方式来安装 .NET 运行时的本地版本和 .NET SDK 的机器范围版本。这些扩展会告诉 .NET 安装工具它们何时希望在机器上安装 .NET SDK,如果尚未安装与它们正常运行所需的 SDK 相匹配的 SDK,我们会为它们安装一个。用户也可以通过阅读以下内容自行安装 .NET SDK。
NuGet Package Manager
让您使用 Code 的命令面板轻松地向项目的 .csproj 或 .fsproj 文件添加或删除 .NET Core 1.1+ 包引用。
功能
- 使用(部分或完整)包名称或其他搜索词在 NuGet 包存储库中搜索包。
- 从 Visual Studio Code 的命令面板将 PackageReference 依赖项添加到 .NET Core 1.1+ .csproj 或 .fsproj 文件。
- 通过 Visual Studio Code 的命令面板从项目的 .csproj 或 .fsproj 文件中删除已安装的包。
- 处理具有多个 .csproj 或 .fsproj 文件的工作区以及具有单个 .csproj/.fsproj 文件的工作区。
NuGet Package Manager GUI
Visual Studio Code 的扩展,可让您轻松地从 NuGet 公共/私有服务器更新/删除/安装 .NET Core/.Net 5+ 项目的包
NuGet Gallery(和上面的2选1)
使用 NuGet Gallery 扩展增强您的 Visual Studio Code 体验。简化管理 NuGet 包的过程,使安装、更新和卸载高效且用户友好。
C# Namespace Autocompletion
C# 命名空间自动完成
打开项目解决方案
输入:`command+shift+p` ,找到.NET:Open Solution。这一步很重要,后面的调试就需要他。
运行调试
- 第一步:点击运行调试按钮,显示运行界面,然后点击“运行和调试”
- 第二步:选择c#,在选择启动的应用
让视图文件更新不编译也能立即生效
如果是win项目过来的,mac如果不安装一个包,这时候视图文件更新后,如果不编译时不会立即生效的。
- 安装 Nuget 包 Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation
使用之前的vscode插件,选择你需要安装的应用安装包。
- 修改`Startup.cs`文件
加入:`services.AddRazorPages().AddRazorRuntimeCompilation()`后,重新运行就可以。
public void ConfigureServices(IServiceCollection services)
{
// ...
services.AddRazorPages().AddRazorRuntimeCompilation();
}
总结
今天就到这,基本上经过上面的教程,mac开发c# 还是可以了。