수색…


소개

ASP에 뛰어 들기 전에. NET MVC를 사용하여 웹 응용 프로그램을 개발하려면 프레임 워크의 장점과 비판을 고려해야하며 ASP .NET Web Forms 인 Microsoft에서 만들고 유지 관리하는 다른 웹 프레임 워크가 있어야합니다.

어느 것을 선택해야합니까? 두 기술에 대한 지식의 문제입니다.

통사론

  • ASPX View Engine은 "<% = %>"또는 "<% : %>"를 사용하여 서버 측 콘텐츠를 렌더링합니다.

  • Razor View Engine은 @를 사용하여 서버 측 콘텐츠를 렌더링합니다.

비고

https://www.asp.net/web-forms

https://www.asp.net/mvc

ASP .NET Web Forms의 장점

  • 그리드, 입력, 그래프, 트리 등을 처리하기위한 미리 빌드 컨트롤.

  • 또한 HTTP를 통한 상태를 보존하는 이벤트 모델을 지원하므로 기간 업무 (LOB) 웹 응용 프로그램 개발에 도움이됩니다. Web Forms 기반 응용 프로그램은 수백 가지 서버 컨트롤에서 지원되는 수십 가지 이벤트를 제공합니다.

  • 개별 페이지에 기능을 추가하는 페이지 컨트롤러 패턴을 사용합니다. 자세한 내용은 MSDN 웹 사이트의 Page Controller를 참조하십시오.

  • 뷰 상태 또는 서버 기반 양식을 사용하므로 상태 정보를보다 쉽게 ​​관리 할 수 ​​있습니다.

  • 신속한 응용 프로그램 개발을 위해 많은 수의 구성 요소를 활용하려는 소규모 웹 개발자 팀 및 디자이너에게 적합합니다.

  • 일반적으로 컴포넌트 (페이지 클래스, 컨트롤 등)는 밀접하게 통합되어 있으며 일반적으로 MVC 모델보다 적은 코드가 필요하기 때문에 애플리케이션 개발에는 덜 복잡합니다.

  • WindowsForm 개발에서 오는 개발자를위한 쉬운 개발 모델입니다.

Web Forms 란 무엇입니까?

MVC 기반 웹 응용 프로그램의 장점

  • 애플리케이션을 모델, 뷰 및 컨트롤러로 분리하여 복잡성을보다 쉽게 ​​관리 할 수 ​​있습니다 (관심 분리).

  • 뷰 상태 또는 서버 기반 양식은 사용하지 않습니다. 따라서 MVC 프레임 워크는 응용 프로그램의 동작을 완벽하게 제어하려는 개발자에게 이상적입니다.

  • 단일 컨트롤러를 통해 웹 응용 프로그램 요청을 처리하는 Front Controller 패턴을 사용합니다. 따라서 풍부한 라우팅 인프라를 지원하는 응용 프로그램을 설계 할 수 있습니다. 자세한 내용은 MSDN 웹 사이트의 Front Controller를 참조하십시오.

  • TDD (Test-Driven Development)에 대한 더 나은 지원을 제공합니다.

  • 이 기능은 응용 프로그램 동작을 고도로 제어해야하는 대규모 개발자 팀과 웹 디자이너가 지원하는 웹 응용 프로그램에 적합합니다.

Web Forms 란 무엇입니까?

단점

웹 양식 :

  • 복잡한 페이지 수명주기, 서버에 대한 요청이있을 때마다 이벤트 처리기 이전에 실행하는 방법은 적어도 5 가지가 있습니다.
  • JQuery 또는 Angular와 같은 클라이언트 측 프레임 워크를 사용하여 작업 할 수있게되었습니다.
  • Asyncronous Javascript and XML (AJAX)로 작업하기가 어렵습니다.
  • Viewstate 핸들링
  • 페이지의 클라이언트 측과 코드 배후가 밀접하게 결합됩니다.

MVC :

  • Web Forms와 비교하여 개발하는 데 더 많은 시간이 걸립니다.
  • 데이터는 일반 텍스트 형식으로 서버에 보내지 만 웹 양식에서는보기 상태 데이터가 기본적으로 암호화됩니다.

면도기 View Engine VS ASPX View Engine

면도기 (MVC) ASPX (Web Forms)
Razor View Engine에서 사용하는 네임 스페이스는 System.Web.Razor입니다. ASPX View Engine에서 사용하는 네임 스페이스는 System.Web.Mvc.WebFormViewEngine입니다.
Razor View Engine에서 사용하는 파일 확장명은 웹 양식보기 엔진과 다릅니다. 뷰, 부분보기, 템플리트 및 레이아웃 페이지에 대해 C # 및 C # 및 vbhtml과 함께 cshtml을 사용합니다. Web Form View Engines에서 사용하는 파일 확장명은 ASP.Net 웹 양식과 유사합니다. ASPX 확장을 사용하여 부분보기 또는 사용자 정의 컨트롤 또는 레이아웃 / 마스터 페이지의 템플릿과 마스터 확장에 대한 aspc 확장을 봅니다.
Razor Engine은 TDD (Test Driven Development)를 지원합니다. Web Form보기 엔진은 테스트 복잡성을 만들기 위해 System.Web.UI.Page 클래스에 의존하기 때문에 TDD (Test Driven Development)를 지원하지 않습니다.

ASPX View Engine 대 면도기 View Engine



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow