编辑
2025-09-27
C#
00

Roslyn 是 .NET 编译器平台的开源实现,包含了 C# 和 Visual Basic 编译器,并提供了一个用于构建代码分析工具的 API 表面。本文将介绍 Roslyn 的特点、应用场景,并通过一些完整的例子展示其强大功能。

特点

  1. 开源:Roslyn 是完全开源的,任何人都可以查看、修改和贡献代码。
  2. 丰富的 API:提供了丰富的 API,用于代码分析、代码生成和代码重构。
  3. 实时编译:支持实时编译和语法检查,使得开发者可以即时看到代码的编译结果。
  4. 跨平台:支持在 Windows、Linux 和 macOS 上运行。

应用场景

  1. 代码分析工具:可以用来构建静态代码分析工具,检查代码中的潜在问题。
  2. 代码生成器:可以自动生成代码,提高开发效率。
  3. 集成开发环境 (IDE):可以集成到 IDE 中,提供实时的语法检查和代码提示。
  4. 代码重构:可以用来实现自动化的代码重构,提高代码质量。
编辑
2025-09-27
C#
00

摘要

Ninject是一个开源的依赖注入容器,它通过自动满足对象之间的依赖关系来帮助我们构建松耦合的应用程序。Ninject使用了流畅的接口和Lambda表达式,使得依赖关系的设定既直观又易于管理。

正文

基本使用

在开始之前,你需要在项目中引入Ninject。通过NuGet包管理器搜索并安装Ninject即可。

image.png

编辑
2025-09-27
C#
00

摘要

Castle Windsor 是一个功能强大的依赖注入容器,它是 Castle Project 的一部分。它可以帮助.NET开发者管理对象之间的依赖关系,使得代码更加模块化,易于测试和维护。在本文中,我将介绍Castle Windsor的基本概念,并通过多个场景的例子展示其在实际开发中的应用。

Castle Windsor 是一个开源的Inversion of Control(IoC)容器,它提供了依赖注入的实现。使用Castle Windsor,开发者可以将对象的创建和生命周期管理交由容器处理,从而实现了控制反转的原则。

正文

基本使用

在开始之前,你需要通过NuGet安装Castle Windsor:

Install-Package Castle.Windsor

image.png

编辑
2025-09-27
C#
00

摘要

依赖注入(Dependency Injection,简称DI)是一种设计模式,用于实现控制反转(Inversion of Control,简称IoC),以减少代码之间的耦合。在C#中,Autofac 是一个流行的IoC容器,它提供了一个强大的方式来管理对象的创建和它们的依赖关系。

正文

nuget 安装 Autofac

image.png

编辑
2025-09-27
C#
00

摘要


依赖注入(DI)是一种软件设计模式,旨在实现控制反转(IoC),以降低类之间的耦合度。在.NET生态中,Microsoft.Extensions.DependencyInjection是官方提供的一个轻量级的依赖注入容器。本文将详细介绍如何在C#中使用这个库,并通过多个场景提供具体的示例。

正文


基础概念

在深入例子之前,我们先回顾一下几个关键概念:

  • 服务(Service):通常是一个接口或抽象类,定义了一系列方法,它们可以执行特定的功能。
  • 服务实现者(Service Implementation):实现了服务的具体类。
  • 服务容器(Service Container):存储服务类型和对应实现的容器。
  • 服务注册(Service Registration):将服务及其实现类添加到服务容器的过程。
  • 服务解析(Service Resolution):从服务容器中获取服务实例的过程。