我是MVVM的中等新手,我理解MVVM相對於xaml後面的簡單代碼(例如VM的可測試性)的一些優點。我們使用Caliburn Micro來執行一些綁定,但這是無關緊要的,我可以使用特定綁定{綁定...},我的問題或多或少會保持不變。編譯時間檢查綁定?
我明白虛擬機應該對V無所謂的邏輯,如果一切正常完成的話,但似乎是因爲我們使用V和VM之間的動態運行時綁定,編譯器可以不做任何檢查每個綁定表達的合法性。例如,如果我有一個名爲UserName的UI組件,則Caliburn將嘗試在運行時將其綁定到名爲UserName的VM屬性(類似於執行類似於Value =「{binding UserName}」的操作)。但是,如果我重命名我的虛擬機屬性或拼寫UI組件名稱或綁定表達式,我們沒有得到任何指示,直到運行時間的問題。
在我看來,能夠告訴xaml一個UI組件或頁面將被綁定到一個特定的接口是非常好的,這樣編譯器就可以完成一些其他工作由測試部門完成(並重做)(這是我經常使用的)。
有沒有辦法告訴xaml我們綁定到一個接口或對象類型?是否有一些工具可以插入xaml應用程序來驗證綁定?
-1:OP在編譯時明確要求解決方案。 –
aha ...這是一個替代 –
它不是。 OP已經知道這一點,不想使用它。 –