Senparc.Weixin SDK v5.0 升級公告


  經過五年半的持續維護,Senparc.Weixin SDK 逐步豐滿和完善,在升級的過程中,我們為基礎庫(Senparc.Weixin.dll)加入了許多通用的功能,例如加密/解密算法、通用緩存方法等等,許多這些方法其實和微信沒有一對一的服務關系,而是具備了非常好的全局通用性。經過一系列的調研,也已經有許多開發者開始使用 Senparc.Weixin.dll 中的通用方法為全系統服務,而不只是用於開發微信。為此,盛派團隊決定將 Senparc.Weixin.dll 中具備全系統通用性的功能分離出來,幫助大家提供一個更加完善高效的基礎通用模塊,並融入更多盛派尚未開源的模塊和技術。與此同時, Senparc.Weixin.dll 中的方法也將更加集中地為微信各模塊服務。希望大家繼續關注和支持此次計划,關注並一起建設好 CO2NET!盛派一直在你身邊!

  本次升級版本號為 v5.0,對 Senparc.Weixin.dll 進行了大范圍的重構,將其與微信沒有直接關系的基礎方法(例如通用的加密/解密算法、通用緩存方法等),分離到 Senparc.CO2NET 項目,Senparc.Weixin SDK 將引用 Senparc.CO2NET 。

  CO2NET 項目也使用 Senparc.Weixin SDK 相同的 Apache License Version 2.0 協議開源,支持商用。全部代碼開放,並將逐步提供更加完善的配套工具以及全套單元測試。

  關於移植的內容可以直接查看 CO2NET 的源碼,在 Senparc.Weixin 中,移除代碼的處理有兩種方式:

  1.   繼承 CO2NET 方法,並標注方法過期,例如:
        /// <summary>
        /// 微信日期處理幫助類
        /// </summary>
        [Obsolete("請使用 Senparc.CO2NET.Helpers.DateTimeHelper 類")]
        public class DateTimeHelper : CO2NET.Helpers.DateTimeHelper
        {
            
        }
    

     

  2.   刪除方法,請大家升級的時候直接使用 Senparc.CO2NET.xx 取代 Senparc.Weixin.xx 相關代碼,大家只要通過編譯查看到命名空間、類或方法不存在的情況下,修改命名空間即可。

  決定保留(標記過期)或刪除的原則是:如果過程簡單,且一般不涉及深度的調試,或封裝已經非常完善,則進行刪除(徹底轉移),否則使用向下兼容的方式暫時保留,今后會逐步刪除。

 

  本次升級還對部分 Senparc.Weixin.dll 中的類做了調整,具體如下:

  1.  緩存方面:
    1. 刪除 LocalObjectCacheStragety.cs (在 CO2NET 中已經提供)
    2. 刪除 ILocalContainerCacheStrategy 接口
    3. 對應 Senparc.Weixin.Cache.Redis 和 Senparc.Weixin.Cache.Memcached 模塊也對應做上述調整
    4. CacheStrategyFactory 重命名為 ContainerCacheStrategyFactory
    5. Senparc.Weixin.dll 中的緩存更專注地服務於各類 Container(數據容器),CacheStrategyFactory.RegisterObjectCacheStrategy() 重命名為 ContainerCacheStrategyFactory.RegisterContainerCacheStrategy()
    6. CacheStrategyFactory.GetObjectCacheStrategyInstance() 重命名為 ContainerCacheStrategyFactory.GetObjectCacheStrategyInstance()
    7. 將 Senparc.Weixin.Cache.Redis.RedLock 項目 完整遷移到 Senparc.CO2NET.Cache.Redis.RedLock 項目
    8. Senparc.Weixin.Cache.Memcached MemcachedServiceCollectionExtensions.AddSenparcMemcached() 更名為 AddWeixinMemcached()
    9. Senparc.Weixin.Register.ChangeDefaultCacheNamespace() 遷移到 Senparc.CO2NET 對應位置 
    10. 緩存實體修改不再使用屬性通知,回到常規的手動 Get/Set 模式
    11. 如果現有系統使用分布式緩存,升級到 v5.0,請先刪除原有 AccessToken 等緩存,緩存格式已經發生變化
  2.  其他:
    1. .net framework 和 .net core 下的注冊過程有所改變,請參考Demo。
    2. Senparc.Weixin.EntityUtility 命名空間改為 Senparc.CO2NET.Utilities;
    3. Senparc.Weixin.XmlUtility 命名空間改為 Senparc.CO2NET.Utilities;
    4. using Senparc.Weixin.MP.Entities.GoogleMap 命名空間改為 using Senparc.CO2NET.Helpers.GoogleMap (BaiduMap同理)

  PS:本文發布時,CO2NET 尚未正式發布,Senprc.Weixin v5.0.0 也正在 Developer-CO2NET 中不斷更新,正式發布后將會合並到 master 分支。歡迎關注!本文將會根據項目進展持續更新。最后更新時間:2018-8-11。

 


免責聲明!

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



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