我有幾個ViewModels從一個簡單的字符串參數運行一個進程。我希望他們都使用相同的方法來做到這一點,以便不重複代碼。MVVM:大多數ViewModel使用哪些方法?
我在考慮將此方法放在ViewModelBase中,但是不會複製代碼嗎?
我有幾個ViewModels從一個簡單的字符串參數運行一個進程。我希望他們都使用相同的方法來做到這一點,以便不重複代碼。MVVM:大多數ViewModel使用哪些方法?
我在考慮將此方法放在ViewModelBase中,但是不會複製代碼嗎?
我在考慮將此方法放在ViewModelBase中,但是不會重複代碼嗎?
不是。如何定義一個方法在一個單一的基類導致代碼重複?
如果您有一種方法可以被所有(或幾乎所有)視圖模型使用,並且您還有一個公共基類,所有視圖模型都會繼承,那麼在基類中定義常用方法聽起來像是好主意。這是首先使用通用基類的主要目的。
你爲什麼會認爲會複製代碼? –
繼承的目的是刪除代碼重複,並使派生類使用相同的方法。所以'ViewModelBase'似乎正確的解決方案在你的情況 – Fabio
最簡單的方法是將該方法添加到ViewModelBase,然後所有的視圖繼承它。這不會重複代碼。 –