六月 21

  在 VS20085 工具列中,AJAX 擴充功能這個選項是內建的,不過在 VS2005 中並沒有,現在坊間的書籍大多以 VS2008 為主,會常用到 AJAX 功能,不過如果不更換版本,在 VS2005 中也可以安裝 AJAX 擴充功能。你必須下載以下檔案(約1MB多)安裝完成後,AJAX 擴充功能就會出現了。

下載檔案:
ASP.NET AJAX 1.0

六月 20

[寫程式] 藝術?還是快速開發?

程式 沒有回應 »   瀏覽人數:[ 855user+386bot ]

  用 Visual Studio 久了會發現一個問題,就是會越來越依賴這個開發工具,因為它什麼都幫你處理好了,程式指令永遠只記得前面三個字母,因為VS有指令自動補齊,連接資料庫有精靈幫忙,管你是 MSSQL 還是 Access,全部按一按搞定,還順便幫你把 Insert、Update、Select、Delete…等 SQL 四大溝通指令寫好了,程式就這麼在拖拉、設定之間開發完成,有的甚至不用寫任何一行指令。

  以前我很排斥用精靈方式來寫程式,堅持一字一句 Key 出來,不過我發現這會花費很多時間,舉個例子來說好了,寫一個簡單的通訊錄,不包括建資料庫的時間,用傳統手 Key 方式,我大概要花上半天的時間,因為我要拉控制項、設定控制項名稱、寫資料庫連接、資料繫結、資料配接器的 Insert、Update、Select、Delete 四個屬性質、設定 BindSource 導覽列…等,寫完天都黑了。

  不過如果換成精靈模式寫,大概只要30分鐘就可以搞定,在產出力方面,精靈模式大勝,不過在程式靈活度、和可讀性來說,還是傳統手 Key 方式略勝一籌。

  站在公司的立場,當然希望程式設計師的產出力越多越好,有些小地方還是用拖拉的就好,藝術這種東西不能當飯吃,VS是一個很邪惡的東西,因為他讓新手認為寫程式是一件很簡單的東西,讓老手離不開它。

六月 19

C# string.Format輸出格式

程式 沒有回應 »   瀏覽人數:[ 2,427user+846bot ]
C#:
  1. 前面補0的數字字串
  2. String.Format("{0:0000}", 157); // 輸出 0157
  3.  
  4. 前後都補0的數字字串
  5. String.Format("{0:0000.0000}", 157.42); // 輸出 0157.4200
  6.  
  7. 3位數()加逗號
  8. (String.Format("{0:0,0}", 38560); // 輸出 38,560
  9.  
  10. 格式化電話號碼
  11. (String.Format("{0:(###) ###-####}", 8005551212); // 輸出 (800) 555-1212
  12.  
  13. 金額的表示
  14. (String.Format("{0:$#,##0.00;($#,##0.00);Zero}", 0); // 這個會顯示 Zero
  15. (String.Format("{0:$#,##0.00;($#,##0.00);Zero}", 1243.50); // 這個會顯示 $1,243.50

依照上面格式範例 ~ 套用到我的報表要呈現的欄位 ~ 如以下 ~

C#:
  1. private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
  2.   {
  3.    if (e.Item.ItemIndex.ToString() != "-1")
  4.    {
  5.     e.Item.Cells[0].Text = string.Format("{0:#,0.0}",double.Parse(e.Item.Cells[3].Text.ToString()));
  6.    }
  7.   }

參考資料來源:
http://blog.stevex.net/index.php/string-formatting-in-csharp/

六月 18

伺服器應用程式無法使用
您嘗試在此 Web 伺服器上存取的 Web 應用程式目前無法使用。
請按 Web 瀏覽器中的 [重新整理] 按鈕,再試一次。

系統管理員注意:
Web 伺服器的應用程式事件記錄檔中的
錯誤訊息詳細說明了這項特定要求失敗原因。
請檢閱這個記錄項目,查看造成錯誤的原因為何。

終於找到
方法解決了~"~

http://blog.xuite.net/giin/blog/13640747

請直接到
[開始]→[執行]→輸入
[ C:\WINDOWS\Microsoft.Net\Framework\v2.0.50727\aspnet_regiis.exe -i ] 就行了

最後確認一下預設的IIS執行環境

IIS→預設網站→內容→ASP.NET→確認 版本2.0.50727

應該就OK了!!

四月 06

強制關閉處理程序的工具(NTSD)

軟體 1 個回應 »   瀏覽人數:[ 1,028user+682bot ]

如果發現有執行程式關不掉
木馬、病毒、當掉的程式皆可使用

按開始->執行->輸入 cmd -> 按enter

c:>ntsd -c q -p <<程序識別碼>>

Q.程序識別碼那裡來??

  1. 按開始->執行->輸入taskmgr.exe -> 按enter
  2. 檢視->選擇欄位-> 勾選PID(程序識別碼)->按確定
  3. 然後就能看見PID。

適用系統:
windows 2000、window xp(NT系列的應該都可以用)。

windows xp 有其他類似的工具 tasklist和tskill
tasklist:列出所有程序名稱及其他資訊。
tskill:終止程序, tskill <<程序名稱>>。

四月 06

聽趨勢說話(1)

理財 沒有回應 »   瀏覽人數:[ 415user+337bot ]

錢的個性

  1. 錢喜歡物以類聚。
  2. 錢很害羞。
  3. 錢喜歡跟同類在一起,才有安全感。
  4. 錢不喜歡獨處。
  5. 錢很勢利,喜歡富人,不喜歡窮人。
  6. 愛聚集,且喜歡招朋引伴,安全或危險不重要。
  7. 聚的越多,聲勢越大,吸引力越大。

操作心法

  1. 股票沒有量,不會漲,也不會跌。
  2. 量一定要大於6日均量,才算大量。
  3. 量大三日,必有蹊蹺。
  4. 底部量大三日(越大越好),配合價揚,可買。
  5. 高價不漲(含跌價),放大量,宜出。
  6. 底部放量後,量縮小,價不破可買進。
  7. 高價放量,價不創新高,量收小,出股票。
  8. 價盤,量走弱,不玩。
  9. 以一年的 K 線圖,和成交量來判斷。
  10. 大盤的勢,大於個股的勢,不可逆大盤的勢。

停損

  1. 三天不賺砍股票。
  2. 損失10%砍股票。
  3. 已經損失了10%,不必等3天就砍。
  4. 不可手軟。
  5. 設停損,不設停利。
  6. 股價上揚,到達滿足點,回檔賣出,也是停損的形式,永遠要賣在已經走弱的價之後,唯有這樣才能知道,股價能把你帶到什麼價位去,而不是賣在後悔的股價裡。
  7. 寧願停損十次,不願套牢一次。
  8. 停損有時後是大勢所迫,而不是個股的失誤。
  9. 不要怕錯,能改才能生存。
  10. 商人無祖國,投資無忠誠。
二月 04
C#:
  1. DateTime dt1 = new DateTime(2008, 12, 31);
  2. DateTime dt2 = new DateTime(2009, 2, 13);
  3. TimeSpan s = new TimeSpan(dt2.Ticks - dt1.Ticks);
  4. MessageBox.Show(Convert.ToString(s.Days));
  5.  
  6. //回傳44天,相反則為負值

 

參考網址:
C# 如何取得兩個 DateTime 日期之間的天數
TimeSpan MSDN

 

二月 02

列舉 (enum) 資料型別

程式 沒有回應 »   瀏覽人數:[ 1,121user+639bot ]

  enum 是一種用來宣告列舉型別 (Enumeration Type) 的關鍵字,是一組列舉清單項目的具名常數所構成的特殊型別,emun 主要目的在提高程式的可讀性,及易維護性,使用 enum 有以下幾點需要注意:

  1. enum 不能使用於方法 (Method) 內宣告。
  2. 資料型別必須是 byte,sbyte,short,ushort,int,uint,long 或 ulong。
  3. 預設資料型別為 int。
  4. float 與 double 不可為 enum 的資料型別。

關於列舉的宣告方式如下:

[存取修飾詞] enum [列舉名稱] : [資料型別]
{
  [成員1],
  [成員2],
  ...
  [成員n]
}

 

關列舉範例程式如下:

C#:
  1. public enum student : short
  2.         {
  3.             周杰倫 = 1,
  4.             方文山 = 2,
  5.             蔡依林 = 3,
  6.             王立宏 = 4
  7.         }
  8.  
  9.         private void button1_Click(object sender, EventArgs e)
  10.         {
  11.             //將combox的文字數字轉換成短整數
  12.             short num = 0;
  13.             if (cbox.Text != "")
  14.             {
  15.                 num = short.Parse(cbox.Text);
  16.             }
  17.  
  18.             switch (num)
  19.             {
  20.                 case (short) student.周杰倫:
  21.                     MessageBox.Show("周杰倫", "明星");
  22.                     break;
  23.                 case (short) student.蔡依林:
  24.                     MessageBox.Show("蔡依林", "明星");
  25.                     break;
  26.                 case (short) student.方文山:
  27.                     MessageBox.Show("方文山", "明星");
  28.                     break;
  29.                 case (short) student.王立宏:
  30.                     MessageBox.Show("王立宏", "明星");
  31.                     break;
  32.                 default:
  33.                     MessageBox.Show("所選取數值不在範圍中","注意");
  34.                     break;
  35.             }

二月 01

結構 (struct) 資料型別

程式 沒有回應 »   瀏覽人數:[ 822user+628bot ]

struct 是一種用來宣告結構的關鍵字,在結構中包含相關變數,可以將結構視為變數群組,以學生資料 (student) 來說,若要設計其結構,應該包含幾個相關變數,如:學號(num),姓名(name)、電話(tel)、手機(mobile)、地址(address)等,底下介紹結構的宣告及叫用方式:

結構 (struct) 宣告方式:

[存取修飾詞] struct [結構名稱]
{
  [存取修飾詞] [資料型別] [變數名稱];
  [存取修飾詞] [資料型別] [變數名稱];
  ...
}

 

結構 (struct) 叫用方式:

[結構名稱] [變數名稱];

 

語法範例:

C#:
  1. public struct Student
  2.         {
  3.             public string Num;
  4.             public string Name;
  5.             public string Tel;
  6.             public string Mobile;
  7.             public string Address;
  8.         }
  9.        
  10.         private void btnAdd_Click(object sender, EventArgs e)
  11.         {
  12.             //宣告結構
  13.             Student std;
  14.            
  15.             //指定成員變數
  16.             std.Num = txtNum.Text;
  17.             std.Name = txtName.Text;
  18.             std.Tel = txtTel.Text;
  19.             std.Mobile = txtMobile.Text;
  20.             std.Address = txtAddress.Text;
  21.  
  22.             String msg = "";
  23.             msg = msg + "學號:" + std.Num + "\n";
  24.             msg = msg + "姓名:" + std.Name + "\n";
  25.             msg = msg + "電話:" + std.Tel + "\n";
  26.             msg = msg + "手機:" + std.Mobile + "\n";
  27.             msg = msg + "地址:" + std.Address;
  28.  
  29.             MessageBox.Show(msg, "學生基本資料");
  30.         }

二月 01

列舉、結構、類別的比較表

程式 沒有回應 »   瀏覽人數:[ 586user+439bot ]
enum struct class
中文意義 列舉 結構 類別
成員資料型別 受限制、而且只能為整數型別 不受限制 不受限制
叫用方法 直接輸入列舉名稱 宣告結構變數 宣告類別變數
使用 static 修飾詞
包含事件及方法
介面實作
結構函式
型別系統 Value Type Value Type Reference Type
預設傳遞參數方式 Call by Value Call by Value Call by Reference
實體存放記憶體在Stack或Heap Stack Stack Heap
欄位初始設定式
指派成員內容值 可以,只能整數
功能 簡單 普通 較強

 

結構 (struct) 宣告方式:

[存取修飾詞] struct [結構名稱]
{
  [存取修飾詞] [資料型別] [變數名稱];
  [存取修飾詞] [資料型別] [變數名稱];
  ...
}

 

列舉 (enum) 宣告方式:

[存取修飾詞] enum [列舉名稱] : [資料型別]
{
  [成員1],
  [成員2],
  ...
  [成員n]
}