c# - 将 Fody.PropertyChanged 与 MVVMCross 一起使用是否安全,或者它会降低应用程序的性能?

标签 c# xamarin mvvmcross fody fody-propertychanged

今天我在网上看到一个新插件Fody.PropertyChanged,它非常简单易用。

目前我正在使用 MVVMCross,我们必须一次又一次地调用 RaisePropertyChange(()=>Property)。将 Fody.PropertyChanged 与 MVVMCross 一起使用是否安全。任何人都有这方面的经验我也看过这个使用 MVVMCross 和 Foody.RaisePropertyChange 的例子

https://github.com/slodge/BindingTalk/blob/master/BindingTalk.Droid/ViewModels/FodySimpleViewModel.cs

或者在 MVVMCross 中是否有任何解决方案可以让我们摆脱一次又一次地使用 RaisPropertyChange()

谢谢,

最好的问候

最佳答案

Fody.PropertyChanged 不应比手动调用 RaisePropertyChanged 慢。 Fody.PropertyChanged 的​​有效作用是在编译时为您编写该代码。

因此,您不必键入所有那些困惑的 RaisePropertyChanged 调用,也不必查看它们,从而使您的代码更加简洁。但是,如果您查看编译的内容(使用 ILSpy 或类似程序),您会发现它们都是自动添加的。因此,从性能的角度来看,应该没有区别,但它使您的代码更易于编写、更易于阅读和更易于维护。

我是 Fody.PropertyChanged 的​​ super 粉丝。多年来,我一直将它与 MVVM Light(我认为它与 MVVMCross 类似)一起使用,而且我从未发现它是导致速度下降的原因。我绝对建议您试一试。

如果您正在使用版本控制(您应该使用),请提交您的项目,安装 Fody.PropertyChanged,摆脱所有那些 RaisePropertyChanged 调用,然后观看奇迹发生。如果您不喜欢它,您可以随时返回到之前的版本。

关于c# - 将 Fody.PropertyChanged 与 MVVMCross 一起使用是否安全,或者它会降低应用程序的性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34083736/

相关文章:

c# - Response.Redirect 消除了脚本管理器操作

c# - 为什么在存在非泛型时选择泛型方法?

c# - azure webjobs - 编写应用程序与调用 url

C# 错误的 PKCS7 填充

c# - C# 中反序列化 json 对象(可以是数组或单个对象)的最佳方法

c# - 在 Xamarin for iOS 中为 Imagebutton 设置图像

c# - XAML ListView : header binding not working

xamarin.android - 如何使用 Mvvmcross 将图像 src 绑定(bind)到资源可绘制图像?

c# - MvvmCross 和 MonoTouch : remove top bar

c# - MvvmCross 与 Xamarin.Forms : Setup not called