asp.net encoding 환경설정

-- ASP.NET 2012. 9. 6. 10:13
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

예상 외로 이런 문제로 시간을 뺏기는 일이 종종 있어 잘 정리된 블로그글이 있어 정리해 둔다.



ASP.net 을개발하면서 다른 쪽과 연동을 하게 됐다.

문제는 wipi 여서UTF-8 로 보낼 수가 없었다는 거였다.


처음에는 여기에 써있는 2번 방법으로 했다.


보낼 때는 문제가없었지만 받을 때 제대로 내용을 받을수가 없었다.

1번의 방법으로 했을때 군더더기 없이 wipi와의 연동을 할 수 있게 됐다.

encoding 이별거 아닌거 같아도, 상당히 골치가 아픈 일이다.



1.Global.asax 의 Global.asax.cs 단에 다음과 같은 코드를 추가.

 

------------------------------------------------------------------------------------

protectedvoid Session_Start(Object sender, EventArgs e)

  {

   HttpApplicationapp = (HttpApplication) sender;

   app.Request.ContentEncoding= System.Text.Encoding.GetEncoding("ks_c_5601-1987");

   app.Response.ContentEncoding=System.Text.Encoding.GetEncoding("ks_c_5601-1987");

  }

 

protectedvoid Application_BeginRequest(Object sender, EventArgs e)

  {

   HttpApplicationapp = (HttpApplication) sender;

   app.Request.ContentEncoding= System.Text.Encoding.GetEncoding("ks_c_5601-1987");

   app.Response.ContentEncoding= System.Text.Encoding.GetEncoding("ks_c_5601-1987");

  }

 

protectedvoid Application_EndRequest(Object sender, EventArgs e)

  {

   HttpApplicationapp = (HttpApplication) sender;

   app.Request.ContentEncoding= System.Text.Encoding.GetEncoding("ks_c_5601-1987");

   app.Response.ContentEncoding= System.Text.Encoding.GetEncoding("ks_c_5601-1987");

  }

------------------------------------------------------------------------------------

 


2. 또는프로그램 단에서 해결하기 위해선


Page Loading하는 부분이나.. Response.Write 하기 전에 다음과 같은 내용을 써 주면 된다.

 

------------------------------------------------------------------------------------

Response.AddHeader("Cache-Control","No-Cache");

Response.AddHeader("Expire","0");

Response.AddHeader("Pragma","No-Cache");

Response.Charset= "ks_c_5601-1987"; //euc-kr

------------------------------------------------------------------------------------

 

를 추가해 주면 된다.

 

하지만, 1번 방법을적극 권장하며 1번 방법을 쓸 경우,서버에서 받아 들이는 내용도 깨지지 않고 내보내는 내용도 깨지지 않는다.


출처 : http://dragonwind.egloos.com/4849297

'-- ASP.NET' 카테고리의 다른 글

Web Role Remote IP Filtering  (0) 2012.09.04
Web Service VS Web API  (0) 2012.08.08
ajax password strength check  (0) 2012.06.21
ASP.NET Ajax Accordion  (0) 2012.06.21
마스터페이지 (master page)  (0) 2012.06.21
posted by 어린왕자악꿍