C#팁

MVC.NET 을 제외한 C# 프로젝트 내에서 Razor를 이용하여 Html 소스 가져오기 호랭이 평점: 없음 조회: 2952
C# 을 이용한 개발을 하다보면, 프로젝트의 유형에 상관 없이 
특정한 템플릿 형태로 HTML을 가져오고 싶을때가 있는데요.. 콘솔 어플리케이션이든..
혹 윈도우 어플리케이션이든 말이죠.. 
 
Razor 엔진을 사용하게 되면 좋은데.. 이게 MVC에 종속적이라서 어떻케 쓰면 좋을지 고민하다가.
오픈소스검색후  별도 라이브러리로 자체 제작하게  되어~  소개 드립니다.. :) 
JRazor라고 이름 지었구요~ 혹시나 사용하시게 된다면 감사감사 ㅜㅜ 
 
 
1. 코딩 Style (지정된 View 파일에 모델을 바인딩하여 Html을 가져옵니다)
 - 해당 방식은 어떤 프로젝트 스타일에서든 동일합니다.  
 
dynamic lJView = new JView("ViewName") // 뷰 파일명이 "ViewName.chstml" 일경우 "YourView" 로 써주시면 됩니다.
 
YourModel lModel = new YourModel{Name = "SomeName"}; // 동적으로 넘겨줄 모델을 설정해주시구요.. 
 
string RtnHtml = JrazorFactory.Instance().CreateHtml<YourModel>(lJView, YourModel); // 이렇케 한줄 코딩 추가해주시면 Html에 모델이 바인딩 되어 나오게 됩니다. 
 
2. 참고 프로젝트 
 
 1) Postal 
   - Postal은 SMTP 메일발송을 위한 라이브러리인데요, 저는 여기서 RazorEngine 사용부분을 참고하여 추출했습니다.
 
3. 소스 다운로드 URL 

 - https://github.com/tiger154/JRazor
 - 내부에는 Core클래스라이브러리와, Web프로젝트, 콘솔프로젝트, WCF 서비스가 있습니다. 
   콘솔 프로젝트와, WCF 서비스 프로젝트를 보시면 샘플 코드가 있으니 참고 바랍니다 :) 

4. 장점, 단점
 - 장점 : 어떤 프로젝트에서든 Razor엔진 방식으로 HTML을 렌더링 할수있습니다.
 - 단점 : 아직 코드정리가 더 필요하구요.. Exception 이라든지... 설명이라든지,, Config 설정 유연성 등등 많네용.. 
 
5. 종속성 
 - MVC 4 이상
 - RazorEngine 3.2 





 
태그 : Razor
작성자 정보
호랭이
Level 19
 [EXP.26/70]

메일:  비공개

글등록 +12 336 덧글등록 +3 159
자기소개
글 공유하기 |
  tweet facebook
2014-07-14 오후 1:14:10
나도한마디
사용자
아리            [2014-07-14]
Level 16
 [EXP.38/70]
좋은팁 감사합니다.

시간날떄 해봐야겠네요.
태그로 엮인글
[ASP.NET Q&A] asp.net mvc razor에서 한글 문자열 길이 2로 인식해서 자르는 방법 좀[2]+2  괴물
[자유게시판] Web Matrix 사용하는 곳 있나요?[1]  코신
[C#.NET Q&A] [Mvc5] IEnumerable 상태에서 razor 로 Model의 특정값만 취하는 방법 알려주세요[1]+1  괴물
[ASP.NET Q&A] asp.net mvc4 게시에 대하여 문의드립니다[4]+3  호랑보살
[ASP.NET Q&A] Razor에서 동적 변수 바인드  신재
[ASP.NET Q&A] mvc 스크립트 관련 질문입니다.[1]+6  초보자
[ASP.NET Q&A] Jquery, Razor 구문을 어떻게 써야하나요?[3]+2  박대리
[C#.NET Q&A] [RE] MVC3 layout 질문드립니다  밝은내일
[ASP.NET Q&A] mvc 에서 버튼에 대한 이벤트 처리하기[1]+1  아직도초보
[ASP.NET 팁] 가벼워진 웹 개발 WebMatrix 완벽 강좌.[2]  김영욱
글리스트
트리뷰 + - 버튼을 이미지로 바꿀 수 있나요 ?[1]+1  훈스훈스훈스
안녕하세요. PartialView에 대한 질문 드립니다.[3] 파일첨부 노찬이
두 가지 간단한 질문..[2]+1  븅멍뭉친구
OS X의 파일명의 한글 자모음이 분리되어 보이는 경우[4]  sa2랑
달력컨트롤 예시 입니다.[4] 파일첨부 방랑개죽
WinForm 투명 컨트롤 ~ 작은 경험 하나 공유합니다.[2]+1  Booh
Hoons.net에 게시물에 소스코드를 이쁘게 넣고 싶다!! 하시는분들...[5]  아이프리드
모든 개발자들을 위한 비주얼 스튜디오[5]+7  sky
허접한 dllImport tip 입니다. [1]+1  비니픽
Ibatis.Net 트랜젝션 문제 해결하기 [3]+1  호랭이
 ★현재글->   MVC.NET 을 제외한 C# 프로젝트 내에서 Razor를 이용하여 Html 소스 가져오기[1]  호랭이
Reactive Extensions라이브러리 2 -event thread  Lookvv
C# 람다식(Lambda __EXPRESSION__) - 문형식 람다식 예제[1]  오엔제이
Reactive Extensions라이브러리 1 -Time관련[1]  Lookvv
zero padding, 숫자 앞에 0 추가하여 자릿수 맞추기 예) 00099[1]  안떠니
string 에서 ESC 문자 제거하기  안떠니
C# 디버그 레벨별로 콘솔창에 띄우는 코드[1]  커니커니
C# 윈폼도 띄우고 콘솔도 띄우기  커니커니
class전체에 exception 처리를 할 수 있을까요??[5]  꿀물이필요해
TabLayout 병합하기[2]+2 파일첨부 테디킴
code snippet 만들기[2]+2  Lookvv