Description
This project seems to be overly dependent reflecting the low reusability of the BotSharp.Core library. The key point is that it relies on the EntityFrameworkCore.BootKit package. BotSharp.Core seems to have assumed that the library can only run on the asp.net host and EntityFrameworkCore cannot be executed. persistent migration
some suggested changes
BotSharp.Abstraction => BotSharp Implement the abstract logic and interface of the user agent session
BotSharp.Core split into => BotSharp.Storage BotSharp.Web. Among them, BotSharp.Storage implements EntityFrameworkCore storage logic, generates data migration, and BotSharp.Web provides user agent session and other related interfaces. There is no dependency between these two projects. The user data provider interface is defined in the BotSharp project and then used in the web and then defined by Storage
WebStarter => BotSharp.Example Dependency injection should be used in this project to instantiate the data provider interface of user agent session, where plug-in loading and so on can use IServiceCollection loading parameters to set whether the configuration is enabled or not.
Reflection seems to be overused in this project