Microsoft MVP성태의 닷넷 이야기
.NET Framework: 7. 시행착오 - WebService 참조 추가 오류 [링크 복사], [링크+제목 복사],
조회: 25256
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

MSDN Magazine에서 "https://docs.microsoft.com/en-us/archive/msdn-magazine/2002/august/wicked-code-code-your-way-to-asp-net-excellence?WT.mc_id=DT-MVP-4038148"에 실려있는 기사에 보면, 몇 가지 ASP.NET에서의 팁이 공개되어 있습니다. 읽어둘 만합니다. ^^

그 내용 중에서, 웹 사이트 다국어 지원을 위한 팁이 있는데요. 요약해 보면, 브라우저에서 전송되어져온 HTTP 헤더의 내용에서 Accept-Language 헤더의 내용을 참조해서, 해당 요청을 처리하는 ASP.NET 스레드에 설정을 하자는 것입니다.

다음과 같이 global.asax에 설정을 해주면 됩니다.

Figure 2 Global.asax

<%@ Import Namespace="System.Threading" %>
<%@ Import Namespace="System.Globalization" %>

<script language="C#" runat="server">
 void Application_BeginRequest (Object sender, EventArgs e)
 {
     try {
         if (Request.UserLanguages.Length > 0) {
             Thread.CurrentThread.CurrentCulture =
                 CultureInfo.CreateSpecificCulture
                 (Request.UserLanguages[0]);
         }
     }
     catch (ArgumentException) {
         // Do nothing if CreateSpecificCulture fails
     }
 }
</script>

비록, 별 쓸모가 없을지언정, 썰렁한 Global.asax 파일에 위의 내용을 넣어두면 폼이 좀 날 것 같아서 ^^ 위와 같이 해서 ASP.NET 프로젝트를 실습했습니다. 물론, WebService도 공개를 했지요.

처음에 저는 위의 WebService를 unmanaged code상에서 이용하기 위해 직접 IXMLHTTPRequest 개체를 써서 사용을 했습니다. 그때까지는 문제가 없었죠. 그러다가, 또 다른 .NET 프로젝트에서 "웹 참조"를 통해서 위에서 생성한 WebService를 참조하려고 했더니 ... 이상하게도 VS.NET이 해당 WSDL 구문을 못 읽어 오는 것이었습니다.

이상하다 싶어서, Command Line에서 wsdl.exe를 직접 실행해 보았더니 ^^ global.asax에서 예외가 발생했음을 알려주더군요. global.asax를 그냥 두었으면 그런 고생을 안 했을 텐데... 괜히 위의 코드를 멋으로 넣어두었다가 발생하게 된 것이었습니다.

문제는... ArgumentException 이외에 또 다른 예외가 발생했기 때문이었습니다. System.NullReferenceException에 대한 처리도 해주어야 됩니다.

괜히... 멋부리려다가... ^^

혹시나, 그 기사를 보시고 실습하실 분들은 참고하세요.








[최초 등록일: ]
[최종 수정일: 7/17/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 196  197  198  [199]  200  201 
NoWriterDateCnt.TitleFile(s)
56정성태10/3/200423789.NET Framework: 10. [.NET 리모팅] 원격개체를 호출한 클라이언트의 연결이 유효한지 판단하는 방법.
55정성태10/3/200424495COM 개체 관련: 11. 내가 생각해 보는 COM의 현재 위치
54정성태8/30/200430198VC++: 10. 내가 생각해 보는 MFC OCX와 ATL DLL에 선택 기준
53정성태11/20/200529341VC++: 9. CFtpFileFind/FtpFileFind가 일부 Unix FTP 서버에서 목록을 제대로 못 가져오는 문제
184정성태11/23/200523003    답변글 VC++: 9.1. FTP 관련 토픽파일 다운로드1
51정성태6/24/200428267VC++: 8. BSTR 메모리 할당 및 해제(MSDN Library 발췌) [1]
50정성태6/16/200421412기타: 6. 1차 데스크톱 컴퓨터 사양
49정성태6/16/200421775기타: 5. 53만 원대 Second PC 마련. ^^
48정성태3/2/200423740.NET Framework: 9. 윈도우즈 발전사를 모아 둔 사이트. [1]
47정성태11/14/200522052VS.NET IDE: 7. 한글 OS에서 Internet Explorer 6.0 with SP1의 UI 언어 바꾸는 방법
45정성태1/26/200421530기타: 4. MCAD 시험
44정성태1/26/200422329VS.NET IDE: 6. 터미널 서비스 포트 변경 ( 서버 및 클라이언트 )
46정성태1/26/200427449    답변글 VS.NET IDE: 6.1. Windows 2003 터미널 서비스 라이센스 서버 없이 접속
114정성태11/14/200518516    답변글 VS.NET IDE: 6.2. [터미널 서버 라이센스] : 활성화 시 오류
43정성태12/23/200322152기타: 3. XP/2003 개인 방화벽 설정파일 다운로드1
40정성태7/23/200325832COM 개체 관련: 10. IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결 [1]
41김성현7/24/200324514    답변글 COM 개체 관련: 10.1. [답변]: IE BHO 개체를 개발할 때, 인터넷 익스플로러가 아닌 탐색기에서 활성화 되는 문제 해결
42정성태7/29/200322168        답변글 COM 개체 관련: 10.2. feedback 을 받기 위해서 답변 기능을 가능하게 해두었습니다.
39정성태7/17/200328122VS.NET IDE: 5. 원격 제어 3가지 방법
38정성태7/17/200324353.NET Framework: 8. IIS 서버 재설치와 ASP.NET 서비스의 문제점
36정성태7/17/200325256.NET Framework: 7. 시행착오 - WebService 참조 추가 오류
35정성태7/17/200325805.NET Framework: 6. Win2000에서의 .NET COM+ 자동 등록 오류 발생 해결
34정성태7/17/200324385VS.NET IDE: 4. VC++ 원격 디버깅파일 다운로드1
33정성태7/17/200324772VS.NET IDE: 3. Win2000 NAT 서비스
32정성태7/17/200325996COM 개체 관련: 9. _bstr_t, CComBSTR, string 클래스 사용 [1]
31정성태7/17/200322919COM 개체 관련: 8. IDL 구문에서 구조체를 pack 하는 방법
... 196  197  198  [199]  200  201