Prism使用MVVM樣式約定命名將視圖綁定到Xamarin應用程序上的ViewModel。在Xamarin上使用Prism時,如果View和ViewModel上的名稱不匹配,我該如何警告?
我最近更改了一些演示代碼,並在花費太多時間調試之後意識到pagename與視圖不匹配。
如何啓用日誌記錄或預編譯器警告存在這種差異?
Prism使用MVVM樣式約定命名將視圖綁定到Xamarin應用程序上的ViewModel。在Xamarin上使用Prism時,如果View和ViewModel上的名稱不匹配,我該如何警告?
我最近更改了一些演示代碼,並在花費太多時間調試之後意識到pagename與視圖不匹配。
如何啓用日誌記錄或預編譯器警告存在這種差異?
要添加到丹的迴應,您可以繞過命名約定,並通過使用Container.RegisterTypeForNavigation<View, ViewModel>()
方法直接註冊ViewModel與視圖。由於反射不會用於定位虛擬機,因此速度也會更快。
查看視圖的ViewModel由ViewModelLocationProvider在Prism Core中處理。你可以看到here它是如何實現的。如果您要重寫默認行爲並注入自己的日誌記錄,則可以將其用作模板,並在App.OnInitialized
中調用ViewModelLocationProvider. SetDefaultViewTypeToViewModelTypeResolver(YourCustomerLocatorFunctionHere)
。
至於任何任何預編譯警告,你會自己在那裏寫一個工具。
我會更新我的項目!我在哪裏發送關於棱鏡的反饋?我很喜歡它。另外,我的原始問題(OP)讓我希望獲得這個漂亮工具的移動版本:http://nileshviradiya.blogspot.in/2014/11/debugging-routes-aspnet-mvc.html您是否認爲Prism會支持自定義/動態構建的調試頁面呢? – LamonteCristo
棱鏡託管在https://github.com/prismlibrary/prism。不,棱鏡不會得到:) –