.Net native aot簡單體驗(二)——WebView2

現在前端的一個比較熱門的方向是Hybrid App,使用瀏覽器實現ui渲染,靠本地的webserver實現api擴展。在上篇文章簡單體驗aot後,我便試了一下和WebView2集成下是否能進行AOT。如果能集成的話,後面可以用C#發佈原生的Hybrid App了。

然而,比較遺憾的是,WebView2缺少ComWrappers支持,導致不支持aot,雖然官網有isses在跟蹤,但感覺優先級很低,兩年過去了都沒啥進展。找了一下,有社區項目WinFormsComInterop在着手解決這一問題,使用起來還是比較簡單的

  1. 添加nuget包WinFormsComInterop的應用
  2. 在Main函數中註冊ComWrapper
ComWrappers.RegisterForMarshalling(WinFormsComInterop.WebView2.WebView2ComWrapper.Instance);

對於WebView2,其建議使用1.0.1462.37的版本,其它版本可能有功能覆蓋不全的情況。

有一點需要注意的是:這個庫目前不支持.net 8,所以目前還不能和asp.net集成在一起aot,只能外掛aot的asp.net服務程序。等後面.net 8正式發佈後再看看是否有更新吧。

相關資料:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章