우리가 시작하는 새로운 앱에 대해 나중에 MVC를 시험해 볼 생각이 있습니다.하지만 모든 것이 든 그렇지 않든간에, 또는 여전히 2006 년처럼 viewstate와 다른 목발로 파티를 열 수 있다면 궁금합니다. 같은 시간 ..."고전적인"ASP.NET 페이지와 Microsoft MVC가 같은 웹 응용 프로그램에 공존 할 수 있습니까?
답변
예 웹 양식 페이지와 MVC보기를 단일 웹 응용 프로그램 프로젝트에 혼합 할 수 있습니다. 이미 빌드 된 응용 프로그램이 있고 webforms에서 mvc로 응용 프로그램을 마이그레이션하려는 경우 유용 할 수 있습니다.
표준 ASP.NET MVC 응용 프로그램의 'Views'디렉토리에 웹 양식 페이지가 없는지 확인해야합니다. 'Views'디렉토리의 페이지 (또는보기)는 URL을 통해 직접 요청할 수 없습니다.
처음부터 응용 프로그램을 시작하는 경우 두 응용 프로그램을 혼합하면 거의 이점이 없습니다.
예. MVC는 IHttpHandler 인터페이스의 다른 구현 일 뿐이므로 기본 ASP.NET과 ASP.NET MVC 페이지가 같은 응용 프로그램에 공존 할 수 있습니다.
MVC를 다른 방법론과 혼합하는 경우 실제로 이점을 얻지 못하는 것입니다. MVC의 핵심은 커플 링을 줄이고 응집력을 높이는 것이며, 코드의 절반 만 수행하면 나머지 절반은 필연적으로 개발주기를 제한하게됩니다.
그래서 가능한 일이지만, 그만한 가치가 있다고 생각하지 않습니다. 끝까지 가거나 전혀 가지 마십시오.
보는 바와 같이 컨트롤러 액션에 전달되지 않도록 당신은 당신의 MVC 경로가 웹 폼 페이지와 충돌하지 않는지 확인해야합니다
이것을 피하는 방법에 대한 자세한 내용은 Phil Haack의 this blog post을 참조하십시오.
링크가 깨졌습니다. 수정하십시오. –
아마도 위의 답변을 발견 했으므로 가능합니다.
저는 실제로 현재 프로젝트에서이 작업을 수행해야했습니다. MVC를 응용 프로그램에 추가 할 수있는 권한을 얻을 수 있었지만 관리 섹션에서만 (현재 회원이 사이트에 영향을 미칠 위험을 최소화하기 위해).
내가 가진 가장 큰 문제는 웹 사이트를 웹 응용 프로그램으로 변환하는 것이었지만 한 번 완료되면 MVC를 기존의 코드 숨김 웹 페이지와 나란히 추가하는 것이 훨씬 간단했습니다.
내 트릭은 내 MVC 페이지를 코드 숨김 페이지와 가능한 유사하게 보이게하여 전환이 최대한 원활하게 이루어 지도록하는 것이 었습니다.
현재 새 프로젝트를 진행 중입니다. MVC 경로를 끝까지 내려 가고 싶지만 프로젝트 요구 사항 중 일부는 나를 허용하지 않습니다.
이러한 요구 사항 중 하나는 클라이언트 쪽에서 그룹 그리드를 갖는 것입니다. 개인적으로 Telerik Rad-Grid를 선택했습니다. 그들이 MVC를 지원하는 과정에있는 동안 그들은 아직 거기에 있지 않습니다.
그래서 이것은 하이브리드 솔루션을 가져야한다는 것을 의미합니다. RadGrid가 MVC를 완벽하게 지원할 때까지 당분간.
우리는이 전환기에있는 동안 제 3 자 컨트롤의 지원이 끝날 때까지 더 많은 하이브리드 프로젝트가있을 것이라고 생각합니다.MVC 페이지의 asp.net 웹 양식과 공존하는
감사
나단
예, 그것은 매우 가능하다. 나는 새로운 기능을 추가하기 위해 기존의 asp.net 애플리케이션에서이를 구현했다. MVC DLL을 참조하고, URL 라우팅을위한 라우팅 테이블을 등록하고, Web.config 파일에서 어셈블리와 네임 스페이스를 구성해야합니다.
- 1. 캐슬 모노레일과 ASP.NET MVC가 같은 프로젝트에서 공존 할 수 있습니까?
- 2. 런타임시 웹 페이지와 RESTful 웹 서비스를 구별 할 수 있습니까?
- 3. MVC 3과 WebForms가 웹 사이트에 공존 할 수 있습니까?
- 4. 이러한 경로가 공존 할 수 있습니까?
- 5. 엄지 스캐너를 사용하여 웹 응용 프로그램에 로그인 할 수 있습니까?
- 6. rtf와 html은 같은 응용 프로그램에 살 수 있습니까?
- 7. 소셜 그래프에 Facebook 페이지와 웹 사이트를 결합 할 수 있습니까?
- 8. 웹 페이지와 Excel 간의 통신?
- 9. 웹 응용 프로그램에 MMS
- 10. ReportViewer 웹 컨트롤을 엔터프라이즈 웹 응용 프로그램에 사용할 수 있습니까
- 11. 내 Facebook 응용 프로그램에 공개 메시지를 게시 할 수 있습니까?
- 12. 데스크톱 응용 프로그램에서 마스터 페이지와 같은 것이 있습니까?
- 13. PIA를 사용하여 자신의 응용 프로그램에 Microsoft Word 문서 편집기를 삽입 할 수 있습니까
- 14. Windows 응용 프로그램에 SESSION과 같은 것이 있습니까?
- 15. Microsoft Dynamics GP 데이터베이스를 응용 프로그램에 동기화
- 16. 트위터의 데이터를 내 도메인의 페이지와 어떻게 공유 할 수 있습니까?
- 17. ASP.NET MVC가 웹 응용 프로그램이어야하는 이유는 무엇입니까?
- 18. ASP.NET 응용 프로그램에 Webrat을 사용할 수 있습니까?
- 19. prototype.js를 FBML Facebook 응용 프로그램에 통합 할 수 있습니까?
- 20. Perl을 사용하여 iPhone 웹 응용 프로그램에 어떻게 연결할 수 있습니까?
- 21. 여러 .net 응용 프로그램에 바닥 글을 추가 할 수 있습니까?
- 22. 어느 장치에서 푸른 색 응용 프로그램에 액세스 할 수 있습니까?
- 23. 작성자는 코드를 자신의 웹 응용 프로그램에 효과적으로 열 수 있습니까?
- 24. MVC (또는 MVP)가 SOA와 공존 할 수 있습니까?
- 25. 트리거 대신 - 일반 트리거와 공존 할 수 있습니까
- 26. PyQt4와 Qt4/C++가 Windows에서 공존 할 수 있습니까?
- 27. @ Autowired 및 기본 autowire가 공존 할 수 있습니까?
- 28. 웹 프론트 엔드를 서버 응용 프로그램에 효율적으로 연결할 수 있습니까?
- 29. iOS 웹 응용 프로그램에 onmousedown 이벤트가 있습니까?
- 30. 웹 응용 프로그램에 데이터베이스 액세스
물론 작업에 가장 적합한 도구를 사용해야합니다. 프로젝트의 일부는 MVC와 WebForms에 더 적합 할 수 있습니다. – Rob
MVC 부분을 MVC가 아닌 부분과 완전히 분리 할 수 있다면 시도해 볼 수 있습니다. 그러나 둘 다 동일한 데이터 구조를 다루거나 동일한 사용자 인터페이스의 일부를 제시한다면 나는 개인적으로 그것에 반대 할 것입니다. –