原因
- 设为活动配置文件前检查
- 链式代理,节点分流,如果配置文件别名填错或不支持,应该显式通知用户
- 选择配置文件界面
- 用户友好,选择切换更方便
- 为
复杂 ProfileItem 做铺垫
- 复杂 ProfileItem
- 多配置文件,最终配置随当前的路由等设置改变,而不是现在的生成为自定义配置
- 可支持无限长链式代理
- 可在节点分流中支持多节点
实现细节
前两个大概构思了下代码实现,应该是可以的
设为活动配置文件前检查
在调用 SetDefaultServer 前检查,新增一个 Helper 或者 ProfileItem 里新增一个函数,若检查不通过,则弹出提示并 return
选择配置文件界面
抽取出来 ProfilesListView UserControls,只负责显示配置文件列表和选择的配置文件,并提供若干“内容插槽”
新建一个 SelectProfilesDialog,包含 ProfilesListView,最后选择结果写到一个属性中,用法和 OpenFileDialog 类似
ProfilesView 包含 ProfilesListView,将右键菜单和“新增/编辑订阅”按钮放进插槽里
大概长这样
复杂 ProfileItem
ProfileItem 加入 List<string>? IndexId, EMultipleLoad? multipleLoad,代码上 CoreConfigService 应该需要部分重写,将现有的 List<ProfileItem> 传参替换为 ProfileItem,其他代码将其视为 custom ConfigType