關於使用ABP框架搭建的項目升級時需要注意的問題匯總


ABP理論學習總目錄

一步一步使用ABP框架搭建正式項目系列教程

ABP之Module-Zero學習目錄


本篇目錄

說明####

這一篇文章會匯集所有使用ABP框架(包含Module-zero模塊)搭建的項目進行升級時遇到的各種問題。以后只要是遇到問題,經過幾番努力,最終找到解決辦法,都可以將問題和答案發到群里,通知管理員,我會抽空將你的問題和答案更新到這里(也會包含問題的原因所在),方便后來更多的初學者,讓更多人知其然,更知其所以然,也為每個使用ABP做項目的開發者填上不必要的坑。以后這篇博客會經常更新,每次更新都會在問題的后面標明更新時間,這樣,更方便閱讀和整理。也希望大家將升級的過程中遇到的問題提出來。

升級方法

我們可以將升級分為兩部分:

  1. ABP和module-zero(主要是各種dll程序集)。它們可以輕松地更新,因為它們都已發布在了nuget。這里是nuget包的所以列表:
    **http://www.cnblogs.com/farb/p/ABPNugetPackage.html
    http://www.cnblogs.com/farb/p/ModuleZeroNugetPackageManagement.html **
    新的發布一般都是向后兼容的。如果有重大變化的話,官方會有特別說明的,並且有文檔說明如何遷移的。因此,這一部分的更新很容易,只要更新nuget包就可以了。
  2. 前端資源(各種js,css文件)。如果你用的是ABP自帶的靜態資源,那么你也可以更新這些包。如果你有自己的UI,那么只需要考慮第一點。

問題_01:Log4Net導致編譯不成功

有園友在使用ABP的時候,打開Nuget包管理器時發現有很多包可以更新了,由於數量很多,直接選擇了全部更新,待這些包安裝完成后,結果編譯的時候,報下面的錯誤:

原因:Castle Windsor只支持log4net v1.2.10,因為該版本使用了一個不同的key進行簽名的,而升級到此版本以上會是一個重大變化,所以官方至今還沒更新

解決辦法:
更新程序集的時候不要更新log4net,就保持它是v1.2.10,直到官方給出更新再更新。

問題_02:升級V0.7.5.0 Abp等程序集后需要改的幾個類###

之前使用ABP官網創建的解決方案,內置了v0.7.1版本的以Abp為前綴的程序集(如Abp.dll,Abp.Zero等),今天升級了這些dll程序集之后,在生成解決方案時,遇到了如截圖所示的問題:

原因:新版本中的Abp.Zero.dll中的基類AbpUser,AbpRole等類的構造函數參數發生了變化。

解決辦法:
在錯誤列表中雙擊提示的錯誤,定位到相應的代碼區,手動修改新版本中的幾個構造函數發生變化的類。將光標放到base方法上,或者直接查看定義,就可以看到需要傳入哪幾個參數了。按照要求的參數類型傳入參數即可。

問題_03:升級V0.8.0.0~V0.8.2.0 Abp等程序集時需要注意的問題###

將程序集升級到V0.8.0.0~V0.8.2.0時,打開解決方案時可能會出現下面的問題:

圖片

原因:ABP框架在V0.8.0.0版本將目標框架升級到了.net framework 4.6.1,出現這個彈窗說明你的計算機上沒有安裝該框架。

解決辦法:
打開.Net目標平台頁面,選擇相應的目標平台下載即可。
圖片
比如,我用的是VS 2013,那我只需要按上面進行下載即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM