현재 ASP.Net Webforms를 사용하여 새 웹 사이트 개발을 시작했습니다. 이 프로젝트에 적절한 시작을 제공하기 위해 애플리케이션의 비주얼 스튜디오 솔루션 설정을 조사 중이며, 여기서 애플리케이션은 크기 (코드 행)가 동일한 쉽게 인식 할 수있는 구성 요소로 구성되기를 원합니다.Visual Studio 솔루션 내의 여러 웹 응용 프로그램 프로젝트
프로젝트가 실제로 시작된 것은 아니기 때문에 표준 3 단계 설정 (데이터, 비즈니스 로직 및 프리젠 테이션)으로 솔루션을 구성했습니다. 이 설정은 프로젝트 시작시에 문제가 없지만 프로젝트가 성장함에 따라 곧 3 단계가 커지면서 탐색 및 코드 찾기가 어려워 져서 유지 보수성과 전반적인 품질을 해칠 것입니다.
그래서 프로젝트 중에 각자 자신의 3 단계 설정이있는 기능 구성 요소를 형성하는 새로운 설정으로 변환하고 싶습니다. 예 : 웹 사이트에는 장바구니와 사용자 계정을 만들고 관리하는 옵션이 있습니다. 또한 여러 구성 요소에서 사용되는 stull 구성 요소가 있어야합니다.이 예제에서는이 구성 요소를 공통적으로 호출합니다.
- Project.Common.Data
- Project.Common.Presentations
일반적인 파일 : 즉, 다음과 같은 설정으로 이어질 것 장바구니 :
- Project.Shop pingcart.Data
- Project.Shoppingcart.Business
- Project.Shoppingcart.Presentations
계정 관리 :
- Project.Account.Data
- Project.Account.Business
- Project.Account.Presentations
웹 사이트 :
- Project.Website.Data
- Project.Website.Business
- Project.Website.Presentations
샘플 위의 각 세 가지 프로젝트가 포함되어 세 가지 구성 요소가 있습니다. 각 구성 요소에는 웹 파일 (페이지, 컨트롤, 프런트 엔드 코드)을 포함하는 하나의 웹 응용 프로그램 프로젝트가 있습니다. 내 모든 이전 .Net 프로젝트에는 모두 간단한 웹 응용 프로그램 프로젝트가 있었기 때문에이 설정은 나에게 새로운 경험이었습니다.
웹 사이트와 구성 요소를 쉽게 디버깅 할 수있는 솔루션을 하나의 응용 프로그램으로 사용하고 싶습니다. 이것을 달성하기 위해 "Project.Web.Presentation"웹 응용 프로그램 프로젝트가 기본 웹 응용 프로그램 프로젝트 여야한다고 가정합니다.이 설정이 방법은, 내가 여러 가지 방법을 시도 해결 가능하지만 아무도 지금까지 잘 작동하지 않은 경우 저는 현재 조사하고 있습니다 :
별도로 모든 웹 응용 프로그램 프로젝트를 실행, 이것은 잘 작동하지만 난에이 별도로 모든 응용 프로그램을 실행하고 디버깅 할 때 끔찍한 동일한 포트에서 실행할 수 없습니다.
다른 프레젠테이션 프로젝트의 파일을 "Project.Web.Presentation"프로젝트에 대한 링크로 추가하고 해당 프로젝트를 시작 프로젝트로 설정하십시오. 디버그 시간에 파일이 없기 때문에이 기능이 작동하지 않습니다. 배포 패키지를 빌드 할 때 제대로 작동하는 것 같습니다. 나는 어떻게해서든지 복제 된 파일이 버전 제어에서 끝나지 않도록해야하기 때문에 파일을 복사하고 싶지 않습니다.
지금까지 내가 염두에두고있는 설정으로 작업하는 좋은 방법을 찾지 못했습니다. 나는 제안에 감사 드리며 팁을 미리 감사드립니다!
NuGet을 향해 조종 해 주셔서 감사합니다. 도구가 이런 방식으로 사용될 수 있다는 것을 몰랐습니다. 난 거의 mutiple 웹 프로젝트 작업을위한 완벽한 솔루션을 발견, 나는에 대한 새로운 질문으로 게시 한 remaning 문제가 있습니다 : http://stackoverflow.com/questions/10861130/package-manager-console-commands-in-pre- 빌드 이벤트 – Oskar