搜尋此網誌

2024年5月17日 星期五

SQL ROW_NUMBER() 與資料排序設定

緣起:


    前陣子有站台的相關檔案排序出現了問題,我原本想說,這東西會不好解決,但後來同事有教我,可以用 ROW_NUMBER() 來重新設定排序。

    自己回去弄懂了後,覺得這東西真好用,所以想寫一篇文章來記錄。

2024年5月10日 星期五

git rebase 將多筆 commit 合併

緣起:


    之前有在 "為你自己學 git" 上面讀到 rebase 的指令, 大概懂它的意思,不過就沒自己試過。最近有收到同事的抱怨,他在 merge 時發現有 conflict,在追查的時候碰上問題,因為我的 commit 很細碎,同個檔案,改個一行就 commit 一次,太多 commit 讓他追查時很不方便。

    想來練習用 rebase 把多個 commit 壓成一筆。

2024年5月7日 星期二

aspnet_regiis.exe 與 webconfig 加密

緣起:


    今天無聊在隨意亂看我們公司建立站台的程式碼時,發現一個有趣的東西,那部份的程式碼有用 #region Config加密 包起來,然後還有用 C# 的 Process 類別來執行一個叫 aspnet_regiis.exe 的程式碼,所以就好奇去查,發現,原來我們的 webconfig 就是用這個東西來加密的。

    想自己動手操作一次並記錄。參考文章

2024年5月5日 星期日

Ubuntu 新增 ASP.NET Core 專案並在本機測試運行

緣起:


    在 Ubuntu 上安裝 .NET Core SDK,並成功建立 Console 專案後,我下一步想試的是,建立 Web 專案

    官方教學,我先 cd 到放我 C# 專案的資料㚒,然後下指令來建立專案

dotnet new webapp -n AspNetCoreDemo -o firstwebapp 


    會産生這些


Ubuntu 安裝 .NET Core 並新增 Console 專案

緣起:


    .Net Core 是支援跨平台的,所以我想要學習怎麼在 linux 上使用它,之後如果能弄個 asp  的 project 在 raspberry pi 上跑,那應該㑹很酷,所以我想從最基本的安裝 SDK 與創一個 Console 專案開始。

2024年5月4日 星期六

啟用 IIS,在預設站台部屬 WebForm 應用程式

緣起:


    工作做到現在,還是不太清楚一個 IIS 的站台是怎麼架起來的,專案開始時,那些環境都是由網管建置的,我們工程師大部份時候只要更新程式碼而己,就算有 IIS 相關的關題需要調整,在正式環境上也都是交給比較資深的工程師來弄,然後我在一旁看。

    現在覺得,有必要自己在電腦上弄 IIS 並部屬應用程式,加深自己對於建立與維護站台的理解,而且,我不久前學到的那些有關 config 還有查看 IIS Log 的知識,也需要有個環境能操作,才方便我寫文章記錄。

    雖然網路上有很多這類的文章了,但我覺得寫個文章來紀錄自己的操作歷程能加深印象。

2024年5月2日 星期四

C# Linq 的 join 與 Group by

原起:


    不久前,我們 3A 站台有出現資料重複顯示的問題,去查才發現是發生在 LINQ 的 join 上,這邊直接開 Console 範例程式講解,用 class 來代表資料表的欄位架構,有兩個 class,Performance 跟 Review

internal class Program
{
    class Performance
    {
        public int SN { get; set; }
        public string Name { get; set; }

        public Performance(int sN, string name)
        {
            SN = sN;
            Name = name;
        }

        public override string ToString()
        {
            return $"SN:{SN}, Name:{Name}";
        }
    }

    class Review
    {
        public int PerformanceSN { get; set; }
        public string Name { get; set; }

        public bool IsPass { get; set; }

        public Review(int performanceSN, string name, bool isPass)
        {
            PerformanceSN = performanceSN;
            Name = name;
            IsPass = isPass;
        }

        public override string ToString()
        {
            return $"PerformanceSN:{PerformanceSN}, Name:{Name}, IsPass:{IsPass}";
        }
    }
}

2024年5月1日 星期三

雙開機,Windows 筆電安裝 Ubuntu

緣起:


    上個禮拜六在滑 reddit 時,看到這個貼文,真的是太可怕了,windows 廣告越來越多,如果再不趕快習慣其它 os 的話,會被它綁死。雖然我一直都有在學 linux,但日常使用上,我的筆電還是都是跑 windows 的系統,趁著這次看到警訊的機會,我想幫自己的筆電安裝 linux 系統,逐步擺脫對 windows 的依賴。

    我那個禮拜六的下午都一直在 try ubuntu,把它安裝到我那台 msi 筆電上,弄好雙開機後,就在 ubuntu 上面安裝 steam,然後測試遊戲,測試一輪後,發現只有魔物世界能玩,不知為啥,後續還要找原因。

    我工作上還是需要用 windows 的遠端來連公司的電腦,所以弄雙系統蠻適合的。在我 msi 的筆電弄雙系統成功後,我就想讓我那台 asus 的筆電也弄成雙系統,畢竟平常還是比較常用它。禮拜一下班後有帶著我 asus 筆電跑去電腦維修店,請老闆幫我筆電多加裝一個 512 G 的 SSD,不然我 asus 筆電本身 512 G 的容量不夠再給 ubuntu 用。

    這篇簡單記錄一下在我那台 asus 筆電安裝 ubuntu 的紀錄。

    PS : 本篇是超隨意的那種紀錄,非常不適合想看詳細安裝教學的人。