빈 프로젝트로 세팅하는 이유 중에 하나가 'ASP.NET MVC'의 잡다한 코드가 설치되지 않게 하기 위해 서 입니다. 하지만 이제는 'WebAPI' 템플릿이 있어서 그냥 이거 써도 됩니다. 그래도 템플릿 없이 어떻게 구성해야 하는지 알아두면 좋겠죠? [ASP.NET Core] 빈 프로젝트 세팅 (1) - 'index.html'을 시작페이지로 설정하기[ASP.NET Core] 빈 프로젝트 세팅 (2) - WebAPI 설정 [ASP.NET Core] .NET Core로 구현한 SPA(Single Page Applications)(1) - 기초[ASP.NET Core] .NET Core로 구현한 SPA(Single Page Applications)(2) - Ajax공통 기능, 데이터 바인드 처리[ASP.NE..
정상적으로 잘 배포되던 프로젝트인데 어느 날 갑자기 배포하고 나면 502.5에러가 납니다. 로컬은 여전히 잘됩니다. HTTP Error 502.5 - Process Failure 1. 자세한 오류 내용 확인 502 오류는 원래 서버가 잘못된 응답을 받았다는 의미입니다. 하지만 502가 나는 원인은 다양합니다. 해결방법도 엄청 많습니다. 문제는 원인을 모르면 결국 될 때까지 해봐야 한다는 것입니다. 그래서 서버의 이벤트 뷰어(event viewer)를 확인해 봤습니다. 이벤트 뷰어의 내용에서 중요한 건 "failed to start process with commandline 'dotnet" 이것뿐입니다. 'dotnet' 프로세스를 시작하는 것이 실패했다고 합니다. 왜? 도대체 왜? 이 에러는 보통 권한이..
ASP닷넷 코어(ASP.NET Core)로 빈 프로젝트를 생성한 다음 프로젝트를 실행하면 다음과 같이 화면이 나옵니다. 이것은 ASP.NET이나 HTML 페이지가 아니고 프로그램에서 생성된 메시지입니다. 하지만 우리가 빈 프로젝트로 생성한 이유는 HTML 파일을 표시하기 위해서죠. 그럼 이제부터 HTML 페이지를 열기 위해서 세팅을 해봅시다. [ASP.NET Core] 빈 프로젝트 세팅 (1) - 'index.html'을 시작페이지로 설정하기[ASP.NET Core] 빈 프로젝트 세팅 (2) - WebAPI 설정 [ASP.NET Core] .NET Core로 구현한 SPA(Single Page Applications)(1) - 기초[ASP.NET Core] .NET Core로 구현한 SPA(Single ..
닷넷 코어는 IIS가 없는 환경에서도 동작하도록 구성되어 있습니다. 그러나! 만약 윈도우 환경에서 닷넷 코어를 돌려야 한다면 결국 IIS에서 돌려야 관리하기 편한 것이 사실입니다 ㅎㅎㅎ iis에 asp.net core를 올려 봅시다. 1. 샘플 프로젝트 만들기 asp.net mvc core 프로젝트를 생성합니다. 'wwwroot'폴더에 'index.html' 파일을 만들고 내용물은 대충 넣읍시다. 프로젝트에서 오른쪽 클릭을 하고 개시를 합니다. 기본 설정으로 개시하면 'bin'폴더에 개시를 하게 됩니다. 이 파일들을 iis에 복사합니다. 2. IIS 세팅하기 IIS에서 닷넷 코어를 돌리기 위해서는 먼저 세팅을 해야 합니다. 2-1. ASP.NET Core Module IIS에 세팅하려면 'Asp Net ..
Asp.Net MVC에서 뷰와 컨트롤러의 데이터를 전달하는 방법 중 모델을 전달하는 방법 말고 3가지 방법이 더 있는데 뷰 백(View Bag), 뷰 데이터(View Data), 템프 데이터(Temp Data)가 있습니다. 각각을 어떻게 사용하는지 알아봅시다. 1. 각각의 용도 각각의 큰 특징은 다음과 같습니다. 1) 뷰백(ViewBag) 다이내믹(Dynamic) 오브젝트로 되어 있습니다. 직관적으로 사용할 수 있습니다. 자동으로 변수형을 유추하기 때문에 사용 시 형 변환이 필요 없습니다. 닷넷 프레임웍 3.5부터 사용할 수 있습니다. 2) 뷰데이터(ViewData) 딕셔너리(Dictionary) 콜랙션으로 되어 있습니다. 뷰백에 비해 속도가 빠릅니다. 값(Value)이 오브젝트로 나오기 때문에 형 변환..
'Web API'의 인증을 세션으로 관리하는 것입니다. 'REST'와는 안 맞는 구조라고 생각돼서 쓸 일이 얼마나 있을지 모르겠네요. 0. 프로젝트 준비 템플릿은 빈 템플릿을 선택해 주시고 참조는 'Web API'만 추가해 줍니다. 'App_Start'의 'WebApiConfig.cs'를 열어 라우터를 아래와 같이 수정합니다. 1 2 3 4 5 config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional } ); Colored by Color Scripter cs 'Web API'만 참조하는 경우 '{action}..
'Web API'와 'Jquery'는 따로 다루는 게 맞습니다만.... 빠른 테스트를 위해서 같이 다루도록 하겠습니다. 이 포스팅의 주요 내용은 'Asp.net'의 'Web API'기능을 활용하는 방법입니다. 제이쿼리(Jquery)는 덤이죠 ㅎㅎㅎㅎ 0. 테스트 프로젝트 준비 프로젝트는 빈 템플릿에 'Web API'만 참조하여 생성합니다. 'App_Start'의 'WebApiConfig.cs'를 열어 라우터를 아래와 같이 수정합니다. 1 2 3 4 5 config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional }..
Asp.net의 번들 기능(bundle)은 MVC나 WebForm없이도 사용 가능합니다. 1. 프로젝트를 생성 프로젝트를 생성할 때 핵심 참조를 'Web API'만 합니다. 프로젝트에 'Test.js'를 추가하고 아래 코드를 넣어 줍니다. 1 2 3 4 var funCall = function() { alert('호출 되었습니다.'); } cs 프로젝트에 'Test.css'를 추가하고 아래 코드를 넣어 줍니다. 1 2 3 4 body { background-color:#ff6a00; } cs 2. 참조 추가 누겟으로 'Optimization'를 검색해 봅니다. 'Microsoft.AspNet.Web.Optimization'을 설치하시면 됩니다. 한국어버전은 'Microsoft.AspNet.Web.Opti..
Html Post 형식으로 데이터를 날렸더니 405 에러가 났습니다. 같은 도메인에 다른 사이트(가상 디렉터리나 응용 프로그램 등을 추가했을 때 )로 넘기면 405 에러가 난다는 겁니다. IIS 기본설정이 그렇게 돼 있기 때문에 수정하면 된다는데... 1. 일반적인 해결 방법 대표적인 수정방법은 아래와 같습니다. 참고 : somacon - How to Resolve an HTTP 405 Resource not allowed Error in IIS IIS7을 기준으로 보면 IIS > 설정할 웹사이트 > 기능 보기 > 처리기 매핑 로 들어가서 오른쪽 위에 작업에 있는 추가 메뉴 중 한 개를 선택하여 추가하시면 됩니다. 그전에 오류 내용을 확인해 봅시다. 오류를 준 처리기가 'StaticFile'입니다,. 이..
데몬은 보통 애플리케이션으로 만듭니다. 윈도우에서는 '서비스'로 만들고 유닉스 계열에서는 '데몬'을 시스템에 등록하여 사용합니다. 이외에는 일반 어플리케이션처럼 UI를 넣어서 만들기도 하지만 보통은 콘솔로도 만들기도 하죠. 그런데 이런 데몬은 항상 운영체제에 상주해야 합니다. 문제는 웹서버와 일반서버의 가격은 엄청나게 차이가 난다는 것이죠. 그래서 웹서버에서 돌려도 되는 데몬이라면 웹서버에서 구현하는 것이 좋을까 해서 검색해보니... 'Application_Start'를 이용해 보시죠. 오홋! asp.net는 프로그램이 웹서버가 시작되면 'Global.asax'의 'Application_Start'가 메인처럼 동작합니다. (참고 : [ASP.Net] ASP.Net의 Main은 어디 있을까? (Global..