Skip to content

CatLib Core 1.3.0 Aplha.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@ymh199478 ymh199478 released this 03 Dec 07:17
6c75a79

中文文档catlib.io
技术支持QQ群150371044

通过Nuget安装CatLib Core

Install-Package CatLib.Core -Version 1.3.0-alpha.1

框架

  • 升级为 c# 7.0 语法(#64 )
  • 增加LogicException逻辑错误异常(#80 )
  • 增加CodeStandardException代码规范异常(#62 )
  • ServiceProvider.Register不再是abstract
  • 增加了ICoroutineInit 协同初始化接口(默认的迭代器为同步迭代器和Init没有本质区别,在其他环境下可能受到环境影响)
  • ApplicationEvents.OnIniting被标记为已过时,使用:ApplicationEvents.OnProviderInit替换
  • 新增了ApplicationEvents.OnProviderInit 服务提供者初始化之前
  • 新增了ApplicationEvents.OnProviderInited 服务提供者初始化完成
  • Application Version现在是静态化的了(#90 )

代码规范性检查

  • 如果尝试为同一个单例化的实例注册不同的服务名,则会异常发一个异常(#62)
  • 如果尝试在注册流程中Make服务,那么会引发一个异常。 (#59)
  • 通过容器Watch一个对象时,只有当对象时可以被构建时才允许被watch。因为我们认为观察的只能是一个已经被确定的服务,而不是一个未知服务。 (#59)
  • 如果尝试在注册流程中Invoke函数,那么会引发一个异常。(#62)

容器服务

  • 服务容器增加了解决事件和释放事件的条件筛选(#84 )
  • 服务容器增加OnAfterResolving的支持。(#83 )
  • 使用this[] set对象时会进行隐式的对象绑定(bind)(#82 )
  • 增加Extend函数,用于处理服务的覆盖及拓展关系,OnResolving不再允许覆盖对象。(#79)
  • 服务容器Watch接口从容器实现转移至扩展函数(#81)
  • 增加服务特殊字符@,$:识别,如果包含则不允许注册。(#61)
  • 增加变量标签$@一样,具备相同的变量映射作用。(#61)
  • 容器在flush对象时将会按照构建顺序的相反顺序释放服务(之前是需要通过辅助组件来完成)(#55)
  • 服务容器增加App.Alias<TService, TAlias>()的拓展方法支持(#57)

支持库

  • 增加 SegmentStream 分片流(#74)
  • 增加 WrapperStream 包装流(#69)
  • 增加 CombineStream 组合流(#70)
  • Arr.Filter 支持迭代器(#67)
  • Arr.Map 支持迭代器(#66)
  • 增加了SortSet.ReverseIterator(bool forward)指定反转方向的接口(#56)
  • StreamExtension.ToText() 加入对不能读取流的判断(#75)
  • 管理器模版支持OnAfterResolving(#92 )