Get Adobe Flash player

Favicon Best Practice 2017 ฉบับภาษาไทย

ในอดีดเราสามารถใช้ไฟล์ favicon.ico ขนาด 16×16 pixels ไฟล์เดียววางไว้บน root directory ของเว็บไซต์ เพื่อให้ Web Browser สามารถนำ Icon มาแสดงไว้หน้า Web Title ซึ่งก็ยังคงใช้งานได้จนถึงทุกวันนี้บนเว็บไซต์ แต่ในปัจจุบันเว็บไซต์ถูกนำไปเปิดบนหลากหลายอุปกรณ์ซึ่งมีความละเอียดของหน้าจอแตกต่างกัน นอกจากนั้นหากผู้ใช้ Add Website เป็น Bookmark หรือเพิ่มลงใน Home Screen ของโทรศัพท์ก็จะต้องใช้ Icon ขนาดใหญ่กว่าเดิม จึงทำให้ใน HTML5 มีคุณสมบัติใหม่เพิ่มเพื่อช่วยแก้ไขปัญหาเหล่านี้

Favicon ใน link (HTML5) จะมีคุณสมบัติเพิ่มขึ้นใหม่ประกอบด้วย

  1. รองรับไฟล์ชนิด png และ svg เพิ่ม นอกเหนือจาก ico (แต่รองรับไม่ครบทุก Web Browser)
  2. Attribute ใหม่คือ size ใช้กำหนดขนาดของ Icon เพื่อให้ Web Browser เลือกใช้ตามความเหมาะสม

ตัวอย่าง

ถ้าต้องการให้ Favicon ของเรารองรับทุก ๆ หน้าจอและอุปกรณ์จะต้องใส่ไฟล์ครบทุกขนาดตามตารางนี้

Size Name Purpose
32×32 favicon-32.png Standard for most desktop browsers
57×57 favicon-57.png Standard iOS home screen (iPod Touch, iPhone first generation to 3G)
76×76 favicon-76.png iPad home screen icon
96×96 favicon-96.png GoogleTV icon
120×120 favicon-120.png iPhone retina touch icon (Change for iOS 7: up from 114×114)
128×128 favicon-128.png Chrome Web Store icon & Small Windows 8 Star Screen Icon*
144×144 favicon-144.png IE10 Metro tile for pinned site*
152×152 favicon-152.png iPad touch icon (Change for iOS 7: up from 144×144)
167×167 favicon-167.png iPad Retina touch icon
(change for iOS 10: up from 152×152, not in action. iOS 10 will use 152×152)
180×180 favicon-180.png iPhone 6 plus
195×195 favicon-195.png Opera Speed Dial icon
(Not working in Opera 15 and later)
196×196 favicon-196.png Chrome for Android home screen icon
228×228 favicon-228.png Opera Coast icon

* Microsoft ต้องการ Meta tag msapplication-TileColor และ msapplication-TileImage สำหรับ IE10 บน Windows 8 และ Windows10 IE11 ขึ้นไปต้องการ browserconfig.xml.

จะเห็นว่าหากต้องการให้ Favicon สามารถรองรับแบบ Cross platform ได้เราจะต้องเหนื่อยมากในการเตรียมไฟล์และ Config ดังนั้นอาจจะพิจารณาเพื่อตัดตัวเลือกที่ไม่จำเป็นทิ้ง หรือใช้บริการเว็บไซต์ https://www.favicon-generator.org/ เพียงแค่ Upload ไฟล์ icon ที่มีขนาดมากกว่า 228×228 pixels จากนั้นระบบจะ generate ไฟล์ icon และ confg ที่จำเป็นทั้งหมด โดยมีขั้นตอนดังนี้

1) เลือกไฟล์ icon ที่ต้องการและเลือก Generate icons for Web, Androidm Microsoft and iOS

2) คลิกปุ่ม Create Favicon ระบบจะให้ Download ไฟล์สามารถ Extract ได้รายการไฟล์ดังนี้

3) จากนั้นให้นำไฟล์ทั้งหมด Upload เข้าสู่เว็บไซต์ และแทรก Script ด้านล่างนี้ไว้ใน Tag head สามารถแก้ไข path ให้ตรงกับที่อยู่ของไฟล์ได้ตามสะดวก

 

ASP.NET MVC LESSON 2 return Json data

ASP.NET MVC LESSON 2 return Json data โดยเราสามารถกำหนดการ return ค่าเป็นแบบ string หรือ Array Object ได้ดังภาพ

ในส่วนของ Controller ปกติจะ return View(); ให้  return Json(data,JsonRequestBehavior.AllowGet);

Json จากภาพด้านบนจะมีการส่งค่ากลับสามแบบ

แบบที่ 1

status = “0”,
statusTextTH = “ไม่ผ่าน”,
statusTextEN= “fail”,

 

แบบที่ 2

summary=new
{
obtainAct=15,
obtainHour=37,
criteriaAct=30,
criteriaHour=120

}

แบบที่ 3

จะต้องทำ Array เพราะสังเกตุว่าจะมี […..] ครอบ data ไว้อยู่ ให้สร้าง array ขึ้นมา
1) เริ่มจากสร้างตัวแปร
public class criteriaListArr
{
public String nameTH { get; set; }
public String nameEN { get; set; }
public int obtain { get; set; }
public int criteria { get; set; }
}
2) จากนั้นให้สร้าง ArrayList
public List GetcriteriaListArr()
{
var res = new List()
{
//case 1
new criteriaListArr()
{
nameTH = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 10 กิจกรรม”,
nameEN = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 10 กิจกรรม”,
obtain =8,
criteria=10
},
//case 2
new criteriaListArr()
{
nameTH = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 120 ชั่วโมง”,
nameEN = “กิจกรรมมหาวิทยาลัย ไม่น้อยกว่า 120 ชั่วโมง”,
obtain =50,
criteria=120
},
//case 3
new criteriaListArr()
{
nameTH = “กิจกรรมพัฒนานักศึกษาสู่การเป็นบัณฑิตพึงประสงค์ ครบ 5 ด้าน”,
nameEN = “กิจกรรมพัฒนานักศึกษาสู่การเป็นบัณฑิตพึงประสงค์ ครบ 5 ด้าน”,
obtain =4,
criteria=5
}

};

return res;
}
3) แล้วขั้นตอนการเรียกใช้ให้เรียกใช้โดยกำหนดตัวแปรเท่ากับ ArrayList ที่สร้าง
criteriaList = GetcriteriaListArr()

Code หน้า Controller ทั้งหมด

 

ASP.NET MVC LESSON 1 การเรียกใช้ Parameter

ASP.NET MVC LESSON 1 การเรียกใช้ Parameter
แบบที่ 1 เรียกผ่าน string query รูปแบบเดิมๆ ดังภาพ

ขั้นตอนการทำแก้ไขไฟล์ RouteConfig.cs เพื่อให้เรียก parameter ดังในภาพ

สร้าง Controller ชื่อ ActivityTranscript แล้วในส่วนของ Action ให้กำหนดตัวรับ Parameter ด้วย

หลังจากนั้นส่วนของ View ให้สร้าง View Index เพื่อแสดงผล ViewBag.StudentCode ที่เก็บค่ามาแสดง

แบบที่ 2 จะใช้แสลช / แยกเพื่อความสวยงาม เป็นแบบที่นิยมใช้  ดังภาพด้านล่าง

ไฟล์ RouteConfig.cs จะเหมือนเดิม

หน้า Controller เพิ่ม [Route(……….)] เพื่อระบุค่า Parameter กรณีที่มี Route เยอะๆ จะใช้วิธีรับค่า Parameter แทน

 

 

ปรับปรุงระบบประชุมอิเล็กทรอนิกส์ e-meeting แสดงระเบียบวาระย่อยให้เรียงตามที่กำหนดได้

ปรับปรุงระบบประชุมอิเล็กทรอนิกส์ e-meeting แสดงระเบียบวาระย่อยให้เรียงตามที่กำหนดได้ เนื่องจากมีการกำหนดหัวข้อวาระย่อย เป็น 1.1 หรือ 1.10 หรือ 1.1-1 ทำให้ระบบไม่สามารถเรียงลำดับหัวข้อได้ถูกดังภาพด้านล่าง


จากภาพจะเห็นว่าหัวข้อ 4.1 และ 4.1.1 ไม่ได้อยู่ใกล้กันทั้งที่เป็นหัวข้อย่อย ทีมผู้พัฒนาจึงได้ปรับให้มีกรอกลำดับการแสดงในหน้าของผู้กรอกวาระย่อยดังภาพ ด้านล่าง

จากภาพสามารถกรอกในช่องสีฟ้า เพื่อแสดงลำดับหัวข้อตามที่ต้องการได้ และเมื่อกรอกเรียงลำดับโดนจากน้อยไปหามาก จะได้หัวข้อที่เรียงแล้วดังภาพด้านล่าง

 

Insert ข้อมูลและส่งค่า Primary key กลับมา

Insert ข้อมูลและส่งค่า Primarykey ที่พึ่ง Insert ล่าสุดกลับมาเพื่อนำไปใช้ต่อ โดยใช้ SELECT CAST(scope_identity() AS int ช่วย

ตัวอย่างโค้ด