今日在Code Review 同事的 Code 時候發現了一個有趣的寫法 他想做的是 Return 一個Distinct 左既 List Of Object 好直接既想法是使用 Distinct List.Distinct(); 之後發現 Distinct 是不能 Distinct Object 的 同事的寫法是用了 List 加 GroupBy 和Select First() List.GrounBy(x =>; x.key).Select(x => x.First()); 之後發現.. 原來我們可以使用 GroupBy 加 First 來做到 Distinct Object 的效果 以下是我的 Code Sample
今日嘗試使用 EF Core with MySQL 時出現了以下的錯誤信息: MySql.Data.MySqlClient.MySqlException HResult=0x80004005 Message=Specified key was too long; max key length is 3072 bytes Source=MySql.Data StackTrace: at MySql.Data.MySqlClient.MySqlStream.ReadPacket() at MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int64& insertedId) at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force) at MySql.Data.MySqlClient.MySqlDataReader.NextResult() at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior) at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery() at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.Execute(IRelationalConnection connection, DbCommandMethod executeMethod, IReadOnlyDictionary<strong>2 parameterValues) at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.ExecuteNonQuery(IRelationalConnection connection, IReadOnlyDictionary</strong>2 parameterValues) at Microsoft.EntityFrameworkCore.Migrations.MigrationCommand.ExecuteNonQuery(IRelationalConnection connection, IReadOnlyDictionary<strong>2 parameterValues) at Microsoft.EntityFrameworkCore.Migrations.Internal.MigrationCommandExecutor.ExecuteNonQuery(IEnumerable</strong>1 migrationCommands, IRelationalConnection connection) at Microsoft.EntityFrameworkCore.Storage.RelationalDatabaseCreator.CreateTables() at Microsoft.EntityFrameworkCore.Storage.RelationalDatabaseCreator.EnsureCreated() at Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade.EnsureCreated() at epm.Api.Startup.Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, ApplicationDbContext dbContext) in C:\Users\yauch\Documents\git\docker-easy-property\api\src\server\epm.Api\Startup.cs:line 65 我是使了了 Official 的 NuGet Package “MySql.Data.EntityFrameworkCore " 做了一會 research 之後發現… 是這一個 package 的問題 解決方法十分簡單.. 我們只需要用另一個 nuget package 便可”Pomelo.EntityFrameworkCore.MySql" https://www.nuget.org/packages/Pomelo.EntityFrameworkCore.MySql
今日公司個 Production project 有一個 Bug 但係在 Staging 和 UAT environment 都 replicate 唔到呢個問題.. 之後便用Git Blame 去檢查一下有什麼 code change 再看看是那一個 commit 做了 code change 找到 commit 之後 便要嘗試去看看這個commit merge 了去那些 branch 解決方法
最近我的Visual Studio 的 CodeLens 沒有再顯示 Class/ Method 有多 reference .. 只係顯示了 “-”… 十分不方便 做了一會 research 之後發現解決方法十分簡單 我們只要洗除電腦的 Temporary files
今日嘗試在 git 上加入之前 用 .gitignore Ignore 左既 個 project folder 入面的 .vscode資料夾 剛剛更新了 project 入面的 workspace setting 而在VS Code 的 workspace setting 是儲存在 .vscode/settings.json 上 要把這個檔案加回 source control 我們首先要在 .gitignore 檔案上 移除這個資料夾
今日需要 Share 一個比較大既 File 給國內的朋友 之前國內是可以連接 Microsoft One Drive 的 最近唔知點解又有 connection 問題 嘗試使用 WeChat share 檔案 可以過了 File Size 上限 最後想到用使用自己的 VPS 用 Docker 起一個簡單的 web server 用來 serve 這個檔案
發覺返到香港越來越難集中去做自己既 project 連 blog 都少寫了 今日終於逼自己係 GitHub 度開個 repository 去寫下 code 希望每星期都會 commit 到 D code 同有 blog post share 個 project 叫做 Code-Playground 主要是用來 share 自己想寫既 project 但係因為自己個根基比較弱.. 上網跟住 D Tutorial blog post 有時可能 version / setup 問題 或是我想做的 feature 比較複雜 所以都係做唔到 Expected result
如果不想在電腦上安裝 WPScan 的話可以考慮使用 Docker 使用方法十分簡單 首先要 pull wpscan 既 docker image https://hub.docker.com/r/wpscanteam/wpscan/ docker pull wpscanteam/wpscan 之後便可以使用這個Docker image 來執行 wpscan 的指令 e.g. docker run --rm wpscanteam/wpscan --url https://blog.sharechiwai.com 如果想直接進入這個 wpscan 的 docker image 上執行 wpscan 可以使用以下指令
很多朋友問..如何在 Windows 上進行屏幕錄製, 之前以為一定要用其他軟件.. 例如: Camtasia.. 誰不知..原來可以使用 PowerPoint 錄製 的 詳情可以參考這個 教學 Screen Recording via PowerPoint (Free Feature) - 使用 PowerPoint 進行 屏幕錄製 hope you find it useful
今日公司的同事和大家分享了一系列十分實用/好用既軟體 如果你是學生 或是還有學生 Email account 或學生証 的話都可以免費申請的 有興趣既朋友可以參考以下網頁: https://www.gitkraken.com/github-student-developer-pack https://www.jetbrains.com/student/ https://education.github.com/pack https://bitbucket.org/product/education 很可惜..我已經失去了我大學時的 Email account 不能享用這些福利了