原创 開源數據版本管理組件 -- VersionRepository

        在開發中經常會遇到管理數據變化的需求。例如:績效系統需要根據季度開始時某人的上級領導來確定由誰來打績效分,遊戲系統根據活動結束時間的積分發放獎勵…… 如果數據庫中只存了最新的狀態,就無法實現這樣的功能了。        

原创 gRPC-Web 踩坑記

     從張隊長的公衆號得知 gRPC-Web 發佈了,出於對 gRPC 的喜愛,決定週末踩踩坑。      從 https://github.com/grpc/grpc-dotnet 克隆了代碼下來,examples/Browser

原创 .NetCore 3.0 中使用 Aspectcore + Autofac

        .NetCore 3.0 正式版已經發布了,最近嘗試的幾個測試項目都用的 .NetCore 3.0 。但是在使用時發現,以前使用 Aspectcore 和 Autofac 的方法不好用了。         之前的方法都是

原创 使用 ExpressionMove 對錶達式參數進行替換

一,爲什麼表達式的參數需要替換?     在使用領域模型編程時,我們的領域模型經常和數據模型是不一樣的。領域模型最爲貼近業務,數據模型反應的是數據庫表。這二者的不一致經常給我們帶來代碼的複雜化。在模型的轉換上,我們有 AutoMapper

原创 SonarQube 踩坑記

        Sonarqube 是個自動化 review 工具,研發人員的好幫手。我在部署和應用 Sonarqube 對.Net 項目進行分析時遇到了不少問題,現在記錄並分享一下,希望能幫到各位讀者。         如果自己安裝So

原创 Visual Studio 2019 正式版初試

昨天(4月3日)VS正式版發佈了,今天趕快來嚐個鮮。 因爲公司還有其他人要用,爲了節省時間,當然要做一個離線包。操作如下: 1,下載VS安裝程序,我下載的是社區版 vs_community__一堆數字.exe 2,在空閒空間較大的盤,比如

原创 .NetCore 在 Docker 中跑起二維碼

        因爲要做一個APP掃碼登錄PC站點的功能,找了幾個 .NetCore 中生成二維碼的方案。         幾年前在 .NetFramework 下做過生成二維碼的功能,用的 ThoughtWorks.QRCode ,不過

原创 作爲一個 dotnetcore 程序員,我常用的 docker 操作

        相對於Windows部署,Docker 部署簡單、快速。我負責的項目,最頻繁時一天要部署十幾次。而且,用戶基本感受不到站點更新的,因爲不到 1 秒就更新完畢了。         那我來分享一下平時常用的 Docker 操作

原创 使用 FluentValidation 實現數據校驗、驗重

最近項目裏用到了 FluentValidation 對網站用戶輸入的數據進行了驗證,使用起來比較舒服,下面整理一下項目中集成的過程。 需要集成的項目是一個 asp.net core 2.1 版本的項目。第一步,安裝 FluentValid

原创 使用 ExpressionMove 對表達式參數進行替換

一,爲什麼表達式的參數需要替換?     在使用領域模型編程時,我們的領域模型經常和數據模型是不一樣的。領域模型最爲貼近業務,數據模型反應的是數據庫表。這二者的不一致經常給我們帶來代碼的複雜化。在模型的轉換上,我們有 AutoMapper

原创 基於 Nextcloud 的二次開發

Nextcloud 是個不錯的網盤系統,開源免費,支持 Windows Ad 域,而且開放了很多接口可以用於二次開發。 最近基於 Nextcloud 做了幾個二次開發的功能,下面介紹一下過程。 第一個需求是和公司業務系統對接起來,實現建立

原创 Windows服務器使用Jenkins自動部署

由於公司正在開發的工作流的幾個項目經常需要測試,所以我用 Jenkins 實現了一個持續集成部署的方案。 持續集成部署的意義也在這裏:在經常性的重複性部署工作中解放自己。 由於.net framework 的項目佔多數,公司的測試機都是W

原创 抓住領域驅動設計中模型的本質

最近公司安排了實現一個需求。 要給不同層級的部門,分配個“審批人”的角色。有的部門分配,有的部門不分配。在實現審批功能時,讓單據所在部門設置的審批人來審批。 如果這個部門沒有審批人,就往上追這個部門的父部門,父部門有審批人,就調用這個審批

原创 推薦開源數據庫訪問組件 - DapperEx

DapperEx 是一款數據庫訪問組件,支持 Sqlserver 和 PostgreSql。她提供了 Lambda 表達式方式的操作。她以 Dapper 作爲底層,提供更方便快捷的數據庫訪問方式。 適用平臺: .Net Framework

原创 我的WCF數據服務(二)獨立

由於當時正在學WCF,就使用了WCF作爲數據提供,由於需要常駐內存,所以使用了WINDOWS服務作爲載體。 當時覺得難點有1個,就是傳遞查詢和排序條件,委託是不能在進程間傳遞的,幸虧有了 Expression 這個類,改一下參數的類型就