Splat:定位器.当前与定位器.当前可变



因此,Splat 提供了两种检索服务的方法:

var s1 = Locator.Current.GetService<IMyService>();
var s2 = Locator.CurrentMutable.GetService<IMyService>();

文档不清楚我们应该使用哪种方式。

那么这两者之间有什么区别呢?我们应该使用哪一个?我们应该避免哪一个?

Locator.Current 是只读版本,除非您正在注册服务,否则应使用。Locator.CurrentMutable是读/写版本,只应在注册服务时使用。

它们都指向相同的定位器,只是基于您使用的变量的用例。

基本上:

  • 使用 CurrentMutable 注册服务,
  • 每当需要检索它们时,请使用当前。

相关内容

  • 没有找到相关文章

最新更新