using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;
namespace ConsoleTest
{
class Program
{
static void Main(string[] args)
{
Stopwatch sw1 = new Stopwatch();
sw1.Start();
UseStringBuilderClass();
sw1.Stop();
Console.WriteLine("UseStringBuilderClass " + sw1.ElapsedMilliseconds + " ms.");
Stopwatch sw2 = new Stopwatch();
sw2.Start();
NotUseStringBuilderClass();
sw2.Stop();
Console.WriteLine("NotUseStringBuilderClass " + sw2.ElapsedMilliseconds + " ms.");
Console.ReadKey();
}
static void UseStringBuilderClass()
{
StringBuilder str = new StringBuilder();
for (int i = 0; i < 100000; i++) str.Append(i);
}
static void NotUseStringBuilderClass()
{
string str = "";
for (int i = 0; i < 100000; i++) str += i;
}
}
}
21 August 2015
C# StringBuilder เหนือกว่าต่อ string ธรรมดา
21 April 2015
ASP.NET MVC : ViewData VS ViewBag Vs TempData
02 April 2015
ปรับขนาดไฟล์รูปภาพด้วย Image Processor ใน Photoshop
04 December 2014
แสดง Column Properties สำหรับ Table Design ใน MSSQL Server
หลายคนอาจจะสงสัยว่า เอ๊ะ! มันโชว์มากกว่าไอ้สามคอลัมน์นี้ได้มั้ย ผมเองก็พยายามหามาเป็นพักเหมือนกันแต่ก็ไม่ประสบผลสำเร็จ ฮ่าๆ สุดท้ายจบที่ Stackoverflow ก็เลยเอามาแบ่งปันกันครับ โดยผมจะโชว์คอลัมน์ Description เพิ่มขึ้นมา อ่อ! ลืมบอกไปผมใช้ SQL Server 2008 R2 สำหรับทดลองครั้งนี้นะครับ
เริ่มแรกเปิดหน้าต่าง Run ขึ้นมา (All Programs >> Accessories >> Run) จากนั้นพิมพ์ regedit แล้วคลิก OK
08 June 2014
SET & MAI แตกต่างที่เหมือนกัน ???
แต่ตลาดใหม่นี้ จะเน้นไปที่กิจการขนาดกลางและขนาดย่อม (เอสเอ็มอี - SME) และกิจการเกี่ยวกับนวัตกรรม โดยได้ผ่อนผันหลักเกณฑ์ต่างๆ ลง เช่น ทุนชำระแล้วขั้นต่ำของหลักทรัพย์ในตลาดหลัก คือ 200 ล้านบาท ในขณะที่ขั้นต่ำของตลาดใหม่ ลดลงเป็น 40 ล้านบาท เป็นต้น เพื่อเปิดโอกาสให้กิจการขนาดเล็ก ที่ไม่สามารถเข้าตลาดหลักทรัพย์แห่งประเทศไทยได้ ได้มีหนทางในการระดมทุน รวมทั้งสนับสนุนอุตสาหกรรมการร่วมลงทุน (venture capital) เพื่อเพิ่มจำนวนบริษัทจดทะเบียนในตลาดหลักทรัพย์
ที่มา : วิกิพีเดีย สารานุกรมเสรี
18 March 2014
วิธีเช็คเวอร์ชัน .NET Compact Framework ใน Windows CE
อ่ะ ! ไร้สาระมามากพอและ เห็นแอดมินหายไปนานนี่ไม่ใช่โดนม็อบกวาดไปแล้วนะครับ พอดีช่วงที่ผ่านมาส่งแอพให้ Tester โดนตีกลับมา Error บาน แก้งานตาเหลือก สอนให้รู้ว่าโลกนี้มีอะไรให้เราเรียนรู้อีกเยอะ ตอนนี้ก็กำลังลองเล่น Windows CE คาดว่าจะถูกมอบหมายให้ Develop ในไม่ช้านี้ บทความนี้จะมาแบบง่ายๆ นิ่มๆ ก็คือการตรวจสอบเวอร์ชันของ .NET Compact Framework ที่อยู่บน Windows CE เพราะในการจะพัฒนาแอพบนระบบปฏิบัติการนี้จำเป็นต้องคำนึงถึงเป็นอย่างมาก
26 February 2014
Generate Script พร้อมข้อมูลบน SQL Server 2008R2
15 November 2013
ล้างข้อมูลใน Textbox ด้วย jQuery
สวัสดีจร้าาาาา วันศุกร์สักทีนะเจ้าพวกมนุษย์เงินเดือนทั้งหลาย หลังจากที่ลุยงานกันมาทั้งสัปดาห์จะว่าเหนื่อยก็เหนื่อย จะว่าสบายก็สบาย ฮ่าๆ สรุปไงว่ะเนี่ย อ่ะๆ เอาเป็นว่าบทความนี้มาลองเล่น jQuery กันดีกว่า
โจทย์ของเราคือทำฟอร์มล็อกอินโดยที่เราจะบอกกับผู้ใช้งานว่ากล่องใหนสำหรับกรอก Username กล่องไหนสำหรับ Password โดยที่ไม่ต้องใช้แท็กตัวอักษรสำหรับบอกให้ User รู้ สรุปง่ายๆก็คือบอกมันใน textbox นั่นแหละครับ แต่เพื่อให้ล้ำขึ้นมาหน่อยเวลา User บังเกิดเกล้าคลิกแล้วจะให้มันล้าง Textbox ด้วย ตามโค๊ดตัวอย่างนี้เลยครับ
ขั้นแรกอย่าลืมเพิ่มโค๊ดสำหรับเรียกใช้ jQuery นะครับ
<head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"> </script> </head>
12 November 2013
เปรียบเทียบ Flat Design ของแอพบน iOS7 VS WP8
08 November 2013
ตัวอย่างการใช้งาน Triggers บน SQL Server
ขั้นตอนแรก ผมจะสร้างเทเบิลมาก่อน 2 เทเบิล โดย Table_A คือตัวที่จะทำการเขียน Triggers ฝังไว้ ส่วน Table_B คือเทเบิลผลลัพธ์ โดยภายในจะมีฟิลด์สองฟิลด์เหมือนกันทั้งสองเทเบิลคือ id Type:int (auto run indentity) และ txt Type:nvarchar(50) แต่ความจริงแล้วการทำ Triggers ไม่ได้จำกัดนะครับว่าเทเบิลจะต้องเหมือนกัน
29 October 2013
อยากได้ Like Page เพิ่ม มาแลกกับเราสิ !
เพจคุณไลค์น้อยรึเปล่า ถ้าคุณพึ่งตั้งเพจใหม่แล้วต้องการให้คนมาไลค์เยอะๆ เราช่วยคุณได้ (แหม่ทำยังกับเพจเราคนไลค์เยอะตาย 55+) เอาเป็นว่าหลังจากที่ผมทดลองแล้วถือว่าโอเคนะครับ มีคนมาไลค์เพิ่มขึ้นไวมากแต่ติดตรงที่เหรียญหมดซะก่อน ฮ่าๆ ถ้าอยากได้ไลค์เพิ่มบ้างก็ลองทำดูนะครับ
- เข้าไปยังเว็บไซต์ sysLIKE
- คลิก สมัครสมาชิก และทำการกรอกข้อมูลต่างๆเพื่อสมัครสมาชิก
26 October 2013
Triggers ถ้าฉันทำ เธอต้องทำด้วยนะ !
สวัสดีไอ้พวกมนุษย์ ! ในที่สุดแอดมินก็ได้มาเขียนบทความของ Gunghun.com เต็มตัวสักทีนะครับ หลังจากที่วุ่นวายกับการย้ายบทความจาก Gushared.com เพราะว่าโฮสกำลังจะหมดอายุเร็วๆนี้ แอดมินเลยคิดว่าถ้าเราหันมาใช้ Blogger แทน จะได้ไม่ต้องเสียค่าเช่าโฮสแล้วก็ถือโอกาสเปลี่ยนชื่อเว็บซะเลย และสำหรับบทความนี้ก็จะพูดเกี่ยวกับเรื่อง Triggers ว่ามันคืออะไร
Triggers ถ้าจะพูดให้เข้าในง่ายๆ ก็คือการเขียนโปรแกรมฝังไว้ที่เทเบิลเพื่อดักจับเหตุการณ์ (INSERT, UPDATE, DELETE) ที่เกิดขึ้นกับเทเบิลนั้นๆ เพื่อกระทำการใดๆกับเทเบิลเป้าหมายที่ต้องการ ตัวอย่างเหตุการณ์ที่ใช้ Triggers เช่น การจัดเก็บข้อมูลในการซื้อขายผลไม้ ซึ่งจะมีเทเบิลรายการซื้อขาย เทเบิลสรุปยอดและเทเบิลการจัดการสต๊อก ปกติแล้วเมื่อมีการซื้อขาย เราจะต้องอัพเดตข้อมูลสามเทเบิลนี้โดยการเพิ่มข้อมูลเข้าไปทีละเทเบิลๆ ตามรูป
20 October 2013
ปุ่ม 3D บนเว็บไซต์ !
ถ้าพูดถึงความประทับใจในการเข้าเว็บไซต์ เว็บไซต์แบบไหนล่ะที่คุณเข้าแล้วคุณรู้สึกว่า เห้ย ! แมร่งเจ๋งหว่ะ ถ้าสำหรับผมแล้วเว็บไซต์ที่จะทำให้ผมประทับใจได้จะต้อง ดูสะอาดตา ใช้งานง่ายแบบว่าใครเข้ามาก็ใช้งานเป็นเลย มีความแปลกประหลาดแหวกแนวไปจากเว็บไซต์เดิมๆที่เคยใช้
ผมได้ลองเข้าไปเว็บไซต์ cssdeck.com ไปเจอตัวอย่างการทำปุ่มแบบ 3D ของคุณ simonpicos เห้ย! แมร่งแนวว่ะ ก็เลยเอามาลองทำดูบ้าง ตามด้านล่างนี้เลยครับ (ลองคลิกปุ่มดูนะครับ >.<)
Memory Address กับเรื่องลิสต์ๆ
ถ้าเปรียบหน่วยความจำให้เข้าใจง่ายๆ ก็คงต้องเปรียบเหมือนห้องเก็บของที่มีทั้งขนาดและหมายเลขห้องเพราะเวลาที่เราจะให้ใครไปหยิบของจากห้องเก็บของ เราจะได้บอกเค้าถูกว่าจะต้องไปหยิบจากห้องไหนหรือเวลาที่จะเอาของไปเก็บ ถ้ามีของเยอะๆจะต้องใช้ห้องเก็บกี่ห้องและเลขห้องไหนบ้าง
หน่วยความจำ สิ่งที่คนเขียนโปรแกรมมือใหม่มักจะละเลยและไม่คำนึงถึง แต่สำหรับการเขียนโปรแกรมแล้วเป็นสิ่งที่จะลืมไม่ได้เพราะการเขียนโปรแกรมบางรูปแบบค่อนข้างที่จะต้องคำนึงถึงเรื่องการใช้งานหน่วยความจำ ตัวอย่างเช่น
//Programming Language : C# Lista = new List (){1, 2, 3}; List b = a; b.RemoveAt(0); //Remove data index 0. //Result a = 2, 3 b = 2, 3
19 October 2013
รีวิว กระเป๋า 7-11 แสตมป์ 300 ดวง
หลังจากที่ผมเข้าๆออกๆ 7-11 อยู่หลายสิบรอบโดยมีเป้าหมายแรกคือโต๊ะปิกนิกแสตมป์ 1000 ดวง แต่หลังจากที่ได้หาข้อมูลจากอินเตอร์เน็ตแล้วก็คำบอกเล่าจากคนรอบข้างก็พบว่าไม่ได้น่าแลกมาใช้เลย ผมก็เลยตัดสินใจไปแลกกระเป๋าสะพายมาแทน
กระเป๋าตัวอย่างที่ผมรีวิวนี้เป็นสีดำแดง ตัวประเป๋าเป็นแบบสะพายหลังสองสาย มีหูหิ้วด้านบน
18 October 2013
จับข้อมูลยัดใส่ Stored Procedures
สวัสดีครับ ครั้งที่แล้วผมได้เสนอบทความเกี่ยวกับตัวอย่างการใช้งาน Stored Procedures ไปแล้วนะครับ ซึ่งจะแสดงให้เห็นเกี่ยวกับการสร้าง การเรียกใช้ Stored Procedures แบบง๊ายยยยยยยย ฝุดๆ เล๊ยยยย
แต่มาบทความนี้จะเป็นตัวอย่างในการส่งข้อมูลไปยัง Stored Procedures เพื่ออะไรบางอย่าง เช่น เพิ่มข้อมูลลงดาต้าเบสหรืออาจจะเป็นการประมวลผลอื่นๆ และตัวอย่างนี้ก็คือการส่งข้อมูลเพื่อทำการเพิ่มข้อมูลลงดาต้าเบส โดยแบ่งเป็น 2 ส่วน ดังนี้
17 October 2013
สิ่งเล็กๆ ที่เรียกว่า Stored Procedures
ช่วงหลังๆถ้าใครได้ติดตามเราจะเห็นว่าผมได้พูดเกี่ยวกับ Stored Procedures แต่มาคราวนี้เราจะมาลองใช้งานมันดู โดยหลักๆผมจะแบ่งเป็นสองส่วน ส่วนแรกจะเป็นการสร้าง Stored Procedures ใน SQL Server และส่วนที่สองจะเป็นส่วนของตัวอย่างการเรียกใช้งาน
ส่วนที่ 1 : การสร้าง Stored Procedures หลังจากที่เราเข้าโปรแกรม SQL Server เรียบร้อยแล้ว คลิกขวาที่ดาต้าเบส -> Programmability -> Stored Procedures -> New Stored Procedure...
[C#] เซ็ตปุ่ม Enter เพื่อคลิก Button
บทความนี้เป็นบทความที่ค่อนข้างจะสั้น เพราะไม่มีอะไรมากมาย แค่ให้รู้ว่าถ้าเราสร้าง Button ขึ้นมาบน Windows Forms Application แล้วต้องการให้กดปุ่ม Enter บนคีย์บอร์ดแทนการคลิกบน Button มันต้องทำยังไง อย่ารอช้าเริ่มกันเลยดีกว่า!
[C#]จับเวลาการทำงานของโปรแกรม
"เวลา" สิ่งเล็กๆที่บางครั้งเราอาจจะมองข้ามไป เวลาเขียนโปรแกรมแอดมินเองก็ไม่ค่อยจะสนใจหรอกครับว่าโปรแกรมมันจะใช้เวลาทำงานเท่าไหร่ จนเมื่อมาทำงานเนี่ยแหละครับ Requirement ต้องการให้โปรแกรมต้องทำงานเสร็จภายใน 2 นาที *o* ว๊ากกกก จะทำไงเนี่ย! ไอ้โปรแกรมเราก็คำนวณเยอะซะเหลือเกิน สุดท้ายแล้วแอดมินก็ต้องทำจับเวลาดูทีละส่วน ว่าส่วนไหนมันใช้เวลาเยอะเป็นพิเศษ แล้วค่อยปรับอัลกอริทึมใหม่ แต่ประเด็นคือ เราจะจับเวลาเป็นส่วนๆ ยังไงหล่ะ ? เนี่ยแหละครับที่แอดมินอยากบอก
Stopwatch หลายคนอาจจะรู้จักแล้ว หลายคนไม่เคยคิดจะใช้มัน Stopwatch เป็นคลาสที่ติดมากับ .NET Framework อยู่แล้วเหลือแค่รอให้เราเรียกใช้มัน โดยหลักๆแล้ว เราจะใช้แค่เริ่มนับเวลา หยุด แล้วก็ดูเวลาที่นับได้ แอดมินก็จะแสดงตัวอย่างแค่นี้แหละ หึหึ
using System.Diagnostics; // อย่าลืม ! Stopwatch sw = new Stopwatch(); //ทำการเรียกใช้คลาส Stopwatch sw.Start(); //เริ่มนับเวลา sw.Stop(); //หยุดนับเวลา sw.Elapsed; //เรียกดูค่าเวลาที่นับ รูปแบบ TimeSpan(Hours:Minutes:Seconds.Milliseconds)
16 October 2013
[C#] Return หลายค่าใน Method เดียว
หลายๆคนที่เขียนโปรแกรม อาจจะเคยต้องการให้เมธอด return ค่ากลับมาให้เรามากกว่าหนึ่งค่าจากเมธอดเดียว บางคนอาจจะเคยใช้ out แล้ว แต่บางคนอาจจะยังไม่รู้จัก เอาแบบไม่อ้างหลักการอะไรมากมายนะครับ เหตุผลที่ผมจะใช้ out ก็ต่อเมื่อต้องการให้เมธอดนั้น return ค่ากลับมามากกว่าหนึ่งค่าโดยที่ไม่ต้องใช้ object หรือ struct โดยสามารถศึกษาได้ตามตัวอย่างโค๊ดง่ายๆด้านล่างนี้ครับ



















