最近在寫 Asp.Net Core 的 Api 時遇到一個非同步的問題,在解決之後真的覺得出乎意料,所以寫下來跟大家分享一下,以及避免以後再遇到。
D-02-驗證結果 ? ExpectedObjects
如何驗證結果
在學會如何Mock介面後,接下來處理的問題就是複雜的類別要怎麼來驗證,當然可以透過JSON的序列化及反序列化來驗證結果對不對,但是如果關注的點是只有特殊的幾個屬性呢,所以今天介紹ExpectedObjects來使得驗證結果不是一件難事。
D-03-產生模擬資料 ? NSubstitute
如何模擬資料
在上一篇介紹完BDD以及如何在VSCode撰寫BDD的測試案例以及Step之後,相信大家在撰寫測試案例時時常會遇到相依的介面不知道該如何處理,再來算是知道了Mock,Fake之後也不知道該在測試的程式中怎麼做,所以今天跟大家介紹C#的NSubstitute,可以模擬介面的方法接收參數並且返還資料。
D-04-開始測試 ? mstest ? specflow
撰寫測試
相信很多人會想要增加系統的穩定度,但是這該如何做則是個問題,相信很多人看過91 TDD的文章,也相信希望能從單元測試增加系統的穩定度以及正確性,不過在dotnetcore內要如何寫測試案例呢,今天就讓我們來研究一下vscode怎麼用specflow來寫測試案例。
D-05-串接API ? RestSharp
串接API
相信很多時候開發程式不是只有自己開發就可以了,不論是公司外還是公司內部都有打Api的需求,所以在之前那篇Api文件之後今天來談談如何在網頁伺服器中打Api溝通。
D-06-日誌寫入 ? NLog ? ILogger
日誌的寫入
相信很多人會在程式內埋log以便問題的追查,尤其是線上的問題不能像開發時期可以設定中斷點來debug,而且很多問題都是特殊操作方式才會造成的問題,因此日誌的寫入是一件很重要的事情。所以今天跟大家介紹如何寫入日誌。
D-07-Api文件 ? Swashbuckle
Api文件
大家是不是在開發時還要想著要如何提供技術文件,尤其是在忙著開發Api還沒有餘力時還要一邊撰寫文件,不過這些都還好,最麻煩的時當Api更新時文件沒更新更讓人頭痛,所以今天跟大家分享一下如何自動產生Api文件。
D-08-排程設定 ? hangfire
如何處理定期的需求
相信很多人會遇到需要定期做某些事情的狀況,例如每分鐘去計算一次資料,或者一分鐘跟資料庫撈取資料的需求,這時如果寫Windows Service或是Console程式再搭配Windows排程來設定是一個解決方法,但是沒辦法看到排程的相關資訊,而且還要記得去作業系統設定服務或是排程之類的,不過今天可以有另外一個選擇,請大家繼續看下去。
D-09 資料庫存取 ? Dapper
怎麼處理資料庫溝通
相信這點是每個程式開發工程師關注的點,在dotnetcore中可以選擇EntityFramework或是用ADO.NET來處理資料庫問題,不過今天要介紹的是羽量級的套件Dapper,請大家繼續看下去。
D-10 AoP ? autofac ? DynamicProxy
Service怎麼做到像MiddleWare一樣的東西
在網頁程式中可以透過MiddleWare來做到關注點分離,但是那是在請求中可以去攔截跟處理請求,如果今天腳色換成Service之類的程式該如何處理呢,這就是我們今天要介紹的內容AoP。