2012-12-06 2 views
2

다음 프로젝트 인 Ext js와 ASP.NET MVC에 사용하고 싶습니다.ASP.NET MVC와 EXT JS를 함께 사용합니다.

이 두 프레임 워크를 함께 사용하는 가장 좋은 방법은 무엇일까요? 지금까지 ASP.NET MVC를 사용하는 프로젝트를 수행했습니다. 여기서는 모든 액션 메소드가 뷰를 반환하고 페이지를 다시로드했습니다. Ext js mvc 응용 프로그램은 단일 페이지 방식을 사용합니다.

나는이 두 프레임 워크를 사용하여 실제 응용 프로그램을 빌드하는 경험을 공유 할 수 있는지 궁금해합니다.

답변

13

당신이 생각하는대로 extj를 사용할 수 있습니다. 해당 구성 요소를 간단한 위젯으로 사용하거나 전체 javascript (extjs) 클라이언트를 작성할 수 있습니다. 그러나 실제 요구 사항은 무엇입니까? 단일 페이지 클라이언트 또는 전통적인 클라이언트?

extjs 위젯이 포함 된 ASP.Net MVC 프레임 워크를 사용하기 시작한 현재 프로젝트에서 잠시 동안 괜찮 았지만 고객은 더 정교한 UI와 더 나은 사용자 경험을 원했습니다. app에서 MVC 모델과 컨트롤러 (보기가 제거됨)를 남겨두고 extjs 4.1로 전체 javascript 클라이언트를 만들었습니다.

그 후 우리는 ASP M_C 프레임 워크 (보기 없음)를 사용하고 있다는 것을 깨달았습니다. 그리고 그것은 말도 안되었습니다. 그래서 우리는 ASP MVC 프로젝트를 가져 와서 WCF Rest 서비스로 대체했습니다. ASP.Net 웹 API).

우리는 우리의 결정과 결과 디자인을 자랑스럽게 생각합니다. 가능하다면 extjs (자바 스크립트는 다소 어렵다)와 javascript를 알고 있고 결정에 대한 지원이 있다면 응용 프로그램을 다음 두 가지로 분할하십시오.

서버 측 서비스/api 및 a 전체 자바 스크립트 응용 프로그램.

행운을 빈다.

+0

좋은 답변입니다! +1 – sra

+0

답장을 보내 주셔서 감사합니다. Ext Direct를 사용하고 있습니까? – user49126

+0

아니요, 직접 사용하지 않습니다. – lontivero

2

나는 @lontivero의 대답에 동의 할 수 없다. 나는 현재 ASP.NET MVC를 백엔드로, ExtJS를 프론트로 사용하고있다.

ASP.NET MVC 스택에서 V를 풀면 클라이언트 측 ExtJS 모델을 C# 뷰 모델로 복제해야하지만 MVend를 백엔드로 사용하고 있습니다. (사실 Json 엔드 포인트의 나머지 기반 컬렉션) 절대적으로 괜찮습니다.

MVC에서 모델 바인딩, 모델 유효성 검사를 활용할 수 있으며 Ext의 전체 클라이언트 사이드 js 앱을 활용할 수 있습니다.

나는 우리가 Ext.NET (버전 0.x를 사용

+0

그래서 create, index 및 update 액션 메소드가 뷰를 분리하고 각 뷰의 ext js 컴포넌트를 처음부터 렌더링합니까? – user49126

+0

아니요, 단일 뷰와 전체 ExtJS 애플리케이션으로 끝나지 만, 모델/저장소 프록시의 URL로 액션 메소드를 사용하고, 컨트롤러 액션에서 들어오고 나가는 데이터를 강력하게 입력하고 유효성을 검사하는 모델을 볼 수 있습니다 예를 들어 시스템의 다른 영역에 대한 보안을위한 권한 부여 주석 등이 있습니다. 유효성 확인을 위해 – dougajmcdonald

+0

+1. 나는 2 개의 전망이있을 것입니다. 첫 번째는 기본/메인이고 두 번째는'/ login' 뷰를위한 것입니다. 그러면 중심 로그인 대화 상자가 렌더링됩니다. C#보기 모델에서 T4를 사용하여 Extjs 모델을 생성 할 생각이지만 그렇게 할만한지 확실하지 않습니다. – CallMeLaNN

0

(나는 그것이 완벽 말하는 게 아니에요,하지만 작동하는 것처럼 보인다)이 구조를 사용하여에 도착하지 않은 점 궁금 해요 -1.x). 프로젝트를 현재 버전으로 업그레이드하기위한 포괄적 인 노력을 한 후에도 Ext.Net 2.x를 삭제해야했습니다. 적합하면 도움이 될 수 있습니다.

Ext.Net의 주요 문제점은 ASP.NET과의 비 호환성 (비 호환성)과 신뢰 부족이었습니다. 그들은 일정을 지키지 만 지난 2 년 정도는 그와 멀었습니다. 그리고 그들은 ExtJS 뒤에 있습니다.

관련 문제