因此,Splat提供了两种检索服务的方法:
var s1 = Locator.Current.GetService<IMyService>();
var s2 = Locator.CurrentMutable.GetService<IMyService>();
Documentation不清楚我们应该使用哪种方式。
那么这两者之间有什么区别?我们应该使用哪一个?我们应该避免哪一个?
答案 0 :(得分:1)
Locator.Current 是只读版本,除非正在注册服务,否则应使用。 Locator.CurrentMutable 是读/写版本,仅应在注册服务时使用。
它们都基于您使用的变量的用例指向相同的定位器。
基本上: