WPF項目突然就開始提示“無法解析資源xxxxxxxxx”,然後設計器裏面各種效果都不翼而飛,但是編譯正常,運行正常。按照網上提出的辦法更改.NET版本、更改release/debug、重新生成項目、重啓VS乃至重啓機器都不能解決問題。
隨後回憶出現問題之前最後的操作是什麼,好像是升級了所有的nuget包。隨後挨個降級測試,都降級之後,果然問題解決
可這又是爲什麼呢?
過程就不多說了,原諒我太笨費了我一天時間,總之經過查找,發現項目中有一個包叫做LtGt如下:
看到差別了嗎?最新版本多了F#的核心包,加上這個包會出現很麻煩的問題,甚至不能支持32位運行。將LtGt包降級至1.0.2,F#相關包卸載掉,重啓VS,問題解決。
個人分析,應該是當項目中引用了與當前運行時衝突的程序集時,xaml設計器便不能解析引用外部程序集中的xaml樣式資源。
另外,如果沒有特別必要,不要總手賤升級nuget包,儘管本人推薦使用最新版本,但不排除有人把自己上傳的包更新之後API大改,改的你整個項目用不了的,程序穩定運行還是第一位的