* 新增可选 Flyshot.CSharp.Planning 项目 * 将 icsp 映射到 Rust 后端并拒绝旧 icsp_rust * 补充后端注册、文档、调试页和回归测试 BREAKING CHANGE: method=icsp 现在默认调用 Rust 后端;C# ICSP 改为 method=icsp-csharp,旧 method=icsp_rust 不再作为正式入口。
25 lines
858 B
C#
25 lines
858 B
C#
using Flyshot.Core.Planning;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
|
|
namespace Flyshot.CSharp.Planning;
|
|
|
|
/// <summary>
|
|
/// 提供可选 C# 规划算法后端的依赖注入注册入口。
|
|
/// </summary>
|
|
public static class CSharpPlanningServiceCollectionExtensions
|
|
{
|
|
/// <summary>
|
|
/// 显式注册 C# ICSP 与 self-adapt-icsp 后端。
|
|
/// </summary>
|
|
/// <param name="services">当前宿主服务集合。</param>
|
|
/// <returns>同一服务集合,便于链式调用。</returns>
|
|
public static IServiceCollection AddCSharpPlanningBackends(this IServiceCollection services)
|
|
{
|
|
ArgumentNullException.ThrowIfNull(services);
|
|
|
|
services.AddSingleton<IPlanningBackend, CSharpIcspPlanningBackend>();
|
|
services.AddSingleton<IPlanningBackend, SelfAdaptIcspPlanningBackend>();
|
|
return services;
|
|
}
|
|
}
|