顯示具有 .NET Framework 標籤的文章。 顯示所有文章
顯示具有 .NET Framework 標籤的文章。 顯示所有文章

2023年12月7日 星期四

.Net Framewok 4.8 遇到System.IO.FileLoadException 無法載入檔案或組件 System.Resources.Extensions 0x80131040

為了sonarque可以跑在.net framework 4.8 WinForm的程式用了nuget 加了 System.Resources.Extensions 這個元件 然後終於可以跑了但是
建置時都正常

但是在runtime的時候出現以下錯誤的exception 
System.IO.FileLoadException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089無法載入檔案或組件 'System.Resources.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' 或其相依性的其中之一。 找到的組件資訊清單定義與組件參考不符。 (發生例外狀況於 HRESULT: 0x80131040)





上網google 都找不到什麼東西


後來發現解法就是需要再project 的加上<GenerateResourceUsePreserializedResources>True</GenerateResourceUsePreserializedResources 然後在app.config 加上 以下程式碼 看你裝的是8.0.0.0就newVersion就是8.0.0.0

然後就可以跑了 記錄一下

<runtime>

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">

<dependentAssembly>

<assemblyIdentity name="System.Resources.Extensions" culture="neutral" publicKeyToken="cc7b13ffcd2ddd51" />

<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="8.0.0.0" />

</dependentAssembly>

</assemblyBinding>

</runtime>




2021年9月8日 星期三

CS0656 遺漏編譯器必要成員'Microsoft.CSharp.RuntimeBinder.Binder.Convert'

 把.net framework 3.5的專案升級到.net framework 4.8時出現了一個錯誤如圖

CS0656 遺漏編譯器必要成員'Microsoft.CSharp.RuntimeBinder.Binder.Convert'

英文是 "Missing compiler required member 'Microsoft.CSharp.RuntimeBinder.Binder.Convert'"



上網找到解決方法就是加入一個參考 在C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\Microsoft.CSharp.dll

如下圖

然後就可以正常編譯過了

2013年12月10日 星期二

更新IE11 ASP.NET網站變的不正常 無法上傳檔案


最近微軟又推出win7版本的IE11
所以更新IE11後 ASP.NET 網站變的不正常 無法上傳檔案
原因是沒有更新KB2836939-v3
當您使用 Internet Explorer 10 或更新版本在 ASP.NET 網頁的更新面板中按一下 ImageButton 控制項時,部分 PostBack 作業失敗。此外,將不會引發伺服器端的 Click 事件。

注意 若在 Web 應用程式中自訂 ASP.NET 瀏覽器定義檔架構,此更新可能會中斷自訂。將使用設定參數回復較舊的行為:

解決方法:

下載 KB2836939-v3
http://www.microsoft.com/zh-tw/download/details.aspx?id=39257

安裝更新後就正常了。

2013年9月10日 星期二

[ASP.NET]更新Internet Explorer 10 之後 asp:LinkButton 的postback無法使用


由於更新IE10 之後 asp:LinkButton的postback 變成一個不支援的語法
Chrome跟Firefox卻很正常使用
用相容性檢視可以用,但是畫面會變很奇怪
原因是因為.Net Framework的browser definition files 裡面沒有IE10
ASP .NET不認得IE10瀏覽器 所以ASP .NET給IE10舊的瀏覽器的語法

後來上網找到原因是伺服器需要上一個.Net Framework 的Patch
讓你的ASP.NET 認得IE10瀏覽器
patch 到下面下載