개요 ASP.NET WebForm 에서 Dependency Injection 을 사용하는 방법을 소개한다. IoC Container 를 이용하여 System.Web.UI.Page 를 상속하는 페이지에서 Injection 을 해야 하는데, 이를 위해 IHttpHandlerFactory 를 사용하는 방법을 소개한다.여기에서는 필자가 꾸준히 만들어 온 Unity Container와 Windsor Castle 을 기반으로 하는 Umc.Core 프레임워크를 사용한다.Umc.Core 프레임워크에는 Unity Auto Registration 기능등이 모두 포함하기 때문에 프로젝트 셋업에 편리하다는 장점도 있다.샘플 프로젝트는 필자의 github 에서 다운로드 받을 수 있다. https://github.com/powe..
세션 저장소 커스터마이징 지금까지 살펴본 바 세션 정보를 memcached를 이용하여 세션 정보를 성능과 관리, 그리고 확장가능성 측면에서 만족할 만한 솔루션이다. 여기에서 좀 더 나아가 쿠키 등을 이용하여 서브 도메인(Sub Domain)의 웹 응용 프로그램에 인증을 하거나 브라우저를 닫고 새로운 브라우저로 재접속 한 경우 기존 세션을 유지할 수 있도록 기능을 개선할 수 도 있다. 과거에는 SSO(Single-Sign-On)을 구현하기 위해 쿠키로 서브 도메인을 인증하는 경우 domain 에 의해 쿠키가 공유가 가능하다는 점을 이용하여 구현하기도 했다. 물론, SSO 솔루션들이 많이 있었지만, 수천 수만명의 사용자가 관리 대상이 아니라면 굳이 비싼 SSO 솔루션을 쓸 필요는 없었다. 세션 저장 방법 커..
필자는 일전에 이와 관련되어 상당한 분량의 포스팅을 올린 적이 있다. 총 5회의 아티클 중 마지막 회를 모두 작성하지는 못했지만, 지금 이 내용이 그 마지막 회의 내용과 어느 정도의 내용과 유사하다고 보면 된다. .NET/ASP.NET - 실전 ASP.NET Session 1 - 쿠키를 이용한 상태관리와 위험성 .NET/ASP.NET - 실전 ASP.NET Session 2 - 상태관리의 종류 .NET/ASP.NET - 실전 ASP.NET Session 3 - 다양한 세션 관리 방법 .NET/ASP.NET - 실전 ASP.NET Session 4 - 세션상태 마이그레이션 그 중, 4회 아티클 ‘[실전 ASP.NET Session [4] - 세션상태 마이그레이션]5’의 내용은 본 아티클의 내용에서 매우 중..
[.NET/ASP.NET] - ASP.NET 서버 모델의 성능에 대한 고찰 [1] [.NET/ASP.NET] - ASP.NET 서버 모델의 성능에 대한 고찰 [2] 서버와 클라이언트는 어떤 과정이 반복되나요? ASP.NET 의 서버 모델은 아래의 그럼처럼 반복적인 추가 작업을 하게 됩니다. [그림6] 서버 모델 프로세스 HTML Form 모델은 여러 개의 Form 의 구간을 두어 단지 필요한 데이터만 서버로 전송합니다. 아래 그림처럼 말이죠. [그림7] HTML Form 모델 프로세스 이러한 뷰 스테이트(ViewState) 는 HTTP 파일 업로드가 되듯이 POST 로 서버로 업로드 됩니다. 즉 이 뷰 스테이트(ViewState) 양이 커지게 되면 web.config 에서 요청 데이터 사이즈의 크기를 조..
[.NET/ASP.NET] - ASP.NET 서버 모델의 성능에 대한 고찰 [1] [.NET/ASP.NET] - ASP.NET 서버 모델의 성능에 대한 고찰 [2] 들어가기 앞서… ASP.NET 을 책을 통해 입문하게 되면, 처음 접하게 되는 것이 바로 서버 컨트롤 입니다. 그리고 MSDN 에서도 서버 컨트롤을 남용하면 웹 사이트의 성능을 저하시킬 수 있다고 말합니다. 이러한 서버 컨트롤을 사용하여 개발하는 방법을 ASP.NET 의 서버 모델이라고 합니다. ASP.NET 의 서버 모델은 웹 개발에 있어서 정말 편리하고 복잡한 처리를 단순화 시킵니다. 우리가 ASP.NET 을 처음 입문하면 포스트백(Postback) 이라는 용어를 듣습니다. 왜 기존의 서밋(Submit) 이라는 용어를 쓰지 않고, 독자적인..
[.NET/ASP.NET] - 실전 ASP.NET Session [1] - 쿠키를 이용한 상태관리와 위험성 [.NET/ASP.NET] - 실전 ASP.NET Session [2] - 상태관리의 종류 [.NET/ASP.NET] - 실전 ASP.NET Session [3] - 다양한 세션 관리 방법 [.NET/ASP.NET] - 실전 ASP.NET Session [4] - 세션상태 마이그레이션 제목에는 세션상태 마이그레이션 이라고 했지만, 보다 구체적으로 언급하면 세션 공급자를 구현하는 단원입니다. 이전에 보았던 아래의 그림과 같이 ASP.NET 이 제공하는 몇 가지의 세션상태 저장소가 있지만, 상황에 따라서 사용할 수 없는 경우도 생길 수 가 있습니다. .NET Framework 는 3가지의 세션 공급자를..
[.NET/ASP.NET] - 실전 ASP.NET Session [1] - 쿠키를 이용한 상태관리와 위험성 [.NET/ASP.NET] - 실전 ASP.NET Session [2] - 상태관리의 종류 [.NET/ASP.NET] - 실전 ASP.NET Session [3] - 다양한 세션 관리 방법 [.NET/ASP.NET] - 실전 ASP.NET Session [4] - 세션상태 마이그레이션 ASP.NET 은 다양한 세션 관리 방법을 제공하여 줍니다. 서버의 자원은 제한적이기 때문에 In-of-process 방식이 아닌, Out-of-process 의 세션 관리 방법이 필요하다고 이전 시간에 말한바 있습니다. 이런 이유 이외에도, Worker Process 에 의해 세션이 관리된다면 프로세서가 어떤 오류로..
[.NET/ASP.NET] - 실전 ASP.NET Session [1] - 쿠키를 이용한 상태관리와 위험성 [.NET/ASP.NET] - 실전 ASP.NET Session [2] - 상태관리의 종류 [.NET/ASP.NET] - 실전 ASP.NET Session [3] - 다양한 세션 관리 방법 [.NET/ASP.NET] - 실전 ASP.NET Session [4] - 세션상태 마이그레이션 이 단원은 ASP.NET 의 어느 책을 보아도 나오는 반드시 나오는 챕터이죠. 그만큼 기본적이고 중요한 부분입니다. 왜냐하면 웹이라는 것은 기본적으로 아무런 상태를 저장할 수 없기 때문입니다. 하지만, ASP.NET 을 이용하면 다양한 방법을 통해 상태를 쉽게 할 수 있고, 쉽게 간과할 수 있는 부분을 다시 한번 되새..
[.NET/ASP.NET] - 실전 ASP.NET Session [1] - 쿠키를 이용한 상태관리와 위험성 [.NET/ASP.NET] - 실전 ASP.NET Session [2] - 상태관리의 종류 [.NET/ASP.NET] - 실전 ASP.NET Session [3] - 다양한 세션 관리 방법 [.NET/ASP.NET] - 실전 ASP.NET Session [4] - 세션상태 마이그레이션 프로그램의 코드를 짜면서 쉽게 간과할 수 있는 상태관리 오류 등을 범하기도 합니다. 때론, 적절한 상태 저장소를 잘못 선택하여 잘못된 코드와 결과를 보는 경우도 있습니다. 이번 아티클은 그런 오류를 범하지 않고, 적절한 상태관리를 할 수 있도록 방법을 제시해 줄 예정입니다. 또한, 3회 포스팅 부터는 그저 별 것 아닌..
- Total
- Today
- Yesterday
- ***** MY SOCIAL *****
- [SOCIAL] 페이스북
- [SOCIAL] 팀 블로그 트위터
- .
- ***** MY OPEN SOURCE *****
- [GITHUB] POWERUMC
- .
- ***** MY PUBLISH *****
- [MSDN] e-Book 백서
- .
- ***** MY TOOLS *****
- [VSX] VSGesture for VS2005,200…
- [VSX] VSGesture for VS2010,201…
- [VSX] Comment Helper for VS200…
- [VSX] VSExplorer for VS2005,20…
- [VSX] VSCmd for VS2005,2008
- .
- ***** MY FAVORITES *****
- MSDN 포럼
- MSDN 라이브러리
- Mono Project
- STEN
- 일본 ATMARKIT
- C++ 빌더 포럼
- .
- testing
- Visual Studio 2010
- 땡초
- 팀 파운데이션 서버
- test
- Visual Studio 2008
- 엄준일
- 비주얼 스튜디오 2010
- ALM
- Visual Studio 11
- Silverlight
- .NET Framework 4.0
- c#
- umc
- TFS 2010
- Managed Extensibility Framework
- LINQ
- TFS
- POWERUMC
- .NET
- Windows 8
- ASP.NET
- Team Foundation Server
- MEF
- github
- Team Foundation Server 2010
- monodevelop
- mono
- 비주얼 스튜디오
- Visual Studio