文章预览
前言 本章讲一下在 Semantic Kernel 中使用 DependencyInject (依赖注入),在之前的章节我们都是通过手动创建 Kernel 对象来完成框架的初始化工作,今天我们用依赖注入的方式来实现。 实战 定义 Native Plugins 我们用官网的 LightPlugins 插件来演示依赖注入在 SK 中的使用 public class LightPlugin { public bool IsOn { get ; set ; } = false ; # pragma warning disable CA1024 // Use properties where appropriate [ KernelFunction ] [ Description( "Gets the state of the light." ) ] public string GetState ( ) => IsOn ? "on" : "off" ; # pragma warning restore CA1024 // Use properties where appropriate [ KernelFunction ] [ Description( "Changes the state of the light.'" ) ] public string ChangeState ( bool newState ) { this .IsOn = newState; var state
………………………………