C# 引用自製DLL檔-範例<生日轉換星座>

摘要:C# 引用自製DLL檔-範例<生日轉換星座>

最近由於工作上的專案發現,

其實很多類別就算獨立出來.

但還是無法在不同的專案中使用,

變成如果一改底層的類別,其他專案也得跟著變動.

乾脆將整個類別獨立出來,變成類別庫.這樣也可使C# or vb.net 專案相互引用

所以在此記錄並以生日轉換星座做為範例,避免以後自己會忘記

當然有錯誤的地方也請前輩不吝指教

接下來,就step by step 吧~~~

 

一.新增專案>類別庫

 

這時候在專案內就只會有.cs或.vb的檔案

然而就跟寫其他專案一樣,就只是新增一個類別而已

唯一不同的地方,當建置時類別庫所產生出來的檔案是DLL檔

二.新增類別

 

三.建置

四.確認DLL檔產出位置

五.新增一個Winform專案,以引用剛剛產出的DLL檔

六.引用DLL檔

 

 

 

七.使用引用進來的DLL

 

七.執行畫面

再此附上生日轉換星座原始碼

此原始碼也是從網路上取得

只是個人有稍作修改更為精簡

有需要的前輩就請享用嚕

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ForbirthTransAtom
{
    public class BirhTransAtom
    {
        public string BirthTransAtom(DateTime birthday)
        {
            float birthdayF = 0.00F;
            //個位數時自動補零
            string zero = birthday.Day < 10 ? "0" : "";

            birthdayF = birthday.Month == 1 && birthday.Day < 20 ?
                        float.Parse(string.Format("13." + zero + "{0}", birthday.Day)) :
                        float.Parse(string.Format("{0}." + zero + "{1}", birthday.Month, birthday.Day));

            float[] atomBound = { 1.20F, 2.20F, 3.21F, 4.21F, 5.21F, 6.22F, 7.23F, 8.23F, 9.23F, 10.23F, 11.21F, 12.22F, 13.20F };
            string[] atoms = { "水瓶座", "雙魚座", "白羊座", "金牛座", "雙子座", "巨蟹座", "獅子座", "處女座", "天秤座", "天蠍座", "射手座", "魔羯座" };

            //透過時間範圍區間取得生日index
            int keyIndex = Array.FindIndex(atomBound, w =>
                                                        w <= birthdayF &&
                                                        w + 1 > birthdayF);
            string ret = atoms[keyIndex];
            return ret;
        }
    }
}

最後附上完整原始碼參考

點我下載