แสดงบทความที่มีป้ายกำกับ Dot Net แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ Dot Net แสดงบทความทั้งหมด

วันจันทร์ที่ 8 กันยายน พ.ศ. 2557

ASP.net Tip # Dynamic Method WEB API 2



Config ให้ Dynamic สำหรับ Develop With Asp.net WEP Api
Note** ใช้งาน Asp.net WEB API2 and .net framework 4.5
ให้เพิ่มโค้ดนี้ลงไปที่ WebApiConfig.cs
            config.Routes.MapHttpRoute("DefaultApiWithId", "api/{controller}/{id}", new { id = RouteParameter.Optional }, new { id = @"\d+" });
            config.Routes.MapHttpRoute("DefaultApiWithAction", "api/{controller}/{action}");
            config.Routes.MapHttpRoute("DefaultApiGet", "api/{controller}", new { action = "Get" }, new { httpMethod = new HttpMethodConstraint(HttpMethod.Get) });
            config.Routes.MapHttpRoute("DefaultApiPost", "api/{controller}", new { action = "Post" }, new { httpMethod = new HttpMethodConstraint(HttpMethod.Post) });
พร้อมกับ Comment Config เดิมที่ให้มา
  //config.Routes.MapHttpRoute(
            //    name: "DefaultApi",
            //    routeTemplate: "api/{controller}/{id}",
            //    defaults: new { id = RouteParameter.Optional }
            //);
แค่นี้ก็เรียบร้อย ตัวอย่างโค้ด
public class ProductController : ApiController
    {
        PD1[] products = new PD1[]
        {
            new PD1 {ID= 1, A_PDNAME = "Tomato Soup", A_PDDESC = "Groceries"},
            new PD1 { ID = 2, A_PDNAME = "Yo-yo", A_PDDESC = "Toys" },
            new PD1 { ID = 3, A_PDNAME = "Hammer", A_PDDESC = "Hardware"}
        };

        // GET api/Product       
public IEnumerable<PD1> Get()
        {
            return products;
        }

        // GET api/ Product/5
        public PD1 Get(int id)
        {
            return products.Where(c => c.ID == id).FirstOrDefault();
        }
// GET api/ Product?id=aa &name=??
        public PD1 Get(int id, string name)
        {
            return products.Where(c => c.ID == id && c.A_PDNAME.Contains(name)).FirstOrDefault();
        }
// GET api/ Product/GetByname? name=??

        public IEnumerable<PD1> GetByName(string name)
        {
            return products.ToList();
        }

    }

วันอังคารที่ 15 กรกฎาคม พ.ศ. 2557

CultureInfo ปัญหาหยุมหยิมที่น่าปวดหัว ในการ Dev

สำหรับปัญหา Culture Info ที่เกิดขึ้นเป็นปัญหาหยุมหยิม สำหรับ Developer .net ที่มักจะมีปัญหา พ.ศ. บ้างคศ. บ้างประจำ และทำให้เกิดการ Error ในจุดที่ไม่ต้องการขึ้น Developer หลายๆ ท่านอาจจะไม่รู้ว่า เราสามารถทำการตั้งค่่าใน WebConfig หรือ App.Config ได้โดยมีสคริปดังนี้
<globalization uiCulture="es" culture="es-MX" />
หรือ 
<configuration>
   <system.web>
      <globalization
           fileEncoding="utf-8"
           requestEncoding="utf-8"
           responseEncoding="utf-8"
           culture="en-US"
           uiCulture="de-DE"
        />
   </system.web>
</configuration>

เปลี่ยน en-Us หรือ de-DE หรือ es,ex-MX เป็นตามที่ต้องการ ซึ่งปกตกิผมจะใช้เป็น en-US นะครับง่ายดี