摘要: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;
}
}
}
最後附上完整原始碼參考