Skip to Content
Nextra 4.0 is released 🎉
运行平台/运行环境.NET

.NET 运行时环境

.NET 是微软开发的一个免费、开源的跨平台开发平台,用于构建各种类型的应用程序。

什么是 .NET

.NET 是一个统一的开发平台,包含:

  • 运行时环境:执行 .NET 应用程序
  • 类库:提供丰富的 API
  • 开发工具:编译器、调试器等
  • 语言支持:C#、F#、Visual Basic .NET

主要特性

跨平台支持

  • Windows、macOS、Linux
  • 移动平台(通过 .NET MAUI)
  • 云平台和容器

高性能

  • 即时编译(JIT)
  • 提前编译(AOT)
  • 垃圾回收优化

丰富的生态系统

  • NuGet 包管理器
  • 大量第三方库
  • 活跃的社区

.NET 版本

.NET Framework(传统版本)

  • 仅支持 Windows
  • 与 Windows 系统紧密集成
  • 主要用于企业级应用

.NET Core/.NET 5+(现代版本)

  • 跨平台支持
  • 开源
  • 高性能
  • 模块化设计

支持的编程语言

C#

using System; class Program { static void Main() { Console.WriteLine("Hello, .NET!"); } }

F#

open System [<EntryPoint>] let main argv = printfn "Hello, .NET!" 0

Visual Basic .NET

Imports System Module Program Sub Main() Console.WriteLine("Hello, .NET!") End Sub End Module

应用类型

Web 应用

  • ASP.NET Core
  • Blazor
  • Web API

桌面应用

  • Windows Forms
  • WPF
  • .NET MAUI

移动应用

  • .NET MAUI
  • Xamarin

云原生应用

  • 微服务
  • 容器化应用
  • 无服务器函数

开发工具

Visual Studio

  • 完整的 IDE
  • 强大的调试功能
  • 丰富的扩展

Visual Studio Code

  • 轻量级编辑器
  • 跨平台
  • 丰富的插件生态

JetBrains Rider

  • 专业的 .NET IDE
  • 跨平台支持
  • 强大的重构工具

包管理

NuGet

# 安装包 dotnet add package Newtonsoft.Json # 恢复包 dotnet restore # 发布包 dotnet pack

部署选项

自包含部署

dotnet publish -c Release -r win-x64 --self-contained true

框架依赖部署

dotnet publish -c Release

容器化

FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base WORKDIR /app EXPOSE 80 EXPOSE 443 FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build WORKDIR /src COPY ["MyApp.csproj", "./"] RUN dotnet restore "./MyApp.csproj" COPY . . WORKDIR "/src/." RUN dotnet build "MyApp.csproj" -c Release -o /app/build FROM build AS publish RUN dotnet publish "MyApp.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "MyApp.dll"]

性能优化

内存管理

  • 垃圾回收器调优
  • 对象池模式
  • 内存泄漏检测

异步编程

public async Task<string> GetDataAsync() { using var client = new HttpClient(); return await client.GetStringAsync("https://api.example.com/data"); }

最佳实践

代码组织

  • 使用依赖注入
  • 遵循 SOLID 原则
  • 编写单元测试

配置管理

// appsettings.json { "ConnectionStrings": { "DefaultConnection": "Server=localhost;Database=MyDb;" }, "Logging": { "LogLevel": { "Default": "Information" } } }

日志记录

using Microsoft.Extensions.Logging; public class MyService { private readonly ILogger<MyService> _logger; public MyService(ILogger<MyService> logger) { _logger = logger; } public void DoWork() { _logger.LogInformation("开始执行工作"); // 业务逻辑 _logger.LogInformation("工作完成"); } }

学习资源

官方文档

社区资源

在线学习

  • Microsoft Learn
  • Pluralsight
  • Udemy

总结

.NET 是一个强大而灵活的运行时环境,适用于各种类型的应用程序开发。通过其跨平台特性、丰富的生态系统和强大的工具链,.NET 为开发者提供了构建高质量应用程序的完整解决方案。

最近更新:12/9/2025, 2:17:53 AM