현재 MVC 3을 사용하여 다중 소유 웹 응용 프로그램을 작성 중입니다. 적어도 30 개의 다른 웹 사이트가 공통 코드베이스를 공유하며 유사한 under-the-hood 기능성, 그들은 크게 달라질 필요가있다. 결과적으로 URL을 사용하여 클라이언트를 내부적으로 분리하고 오버라이드 된 Razor 뷰 엔진 (최소한 뷰를 찾는 측면에서)을 사용하여 지정된 작업에 대한 사용자 정의보기 또는 기본보기를 자동으로 선택합니다.작업의 출력을 시작하고 끝내기 위해 선택한보기 경로를 HTML 주석으로 삽입
복잡한 페이지를 분류하는 데 도움이되도록 특정보기는 일반적으로 자체 포함 된 동작으로 렌더링되는 여러 개의 부분을 사용하므로 일반적으로 사용자 지정보기 나 부분보기의 HTML 차이가 작기 때문에 최소화 할 수 있습니다 클라이언트의 사이트와 관련된 모든 코드.
나는 그 배경을 따라 왔으면 좋겠다.
그래서 하나의 HTML 페이지는 클라이언트의 특정 폴더 또는 범용 버전에서 올 수있는 HTML 부분보기의 작은 조각으로 구성 될 수 있습니다. 나는 우리 디자이너가 쉽게 을보고 페이지의 사소한 변경을 쉽게 할 수 있기를 바라고있다. 폴더 구조에서이 변경하려는 HTML 비트가있는 곳이다.
나의 제안은 다음 각 부분과 같은 HTML 주석과 '괄호'될 것입니다 :
{부분의 내용} 분명히
내가 수동으로 이러한를 둘 수 있었다,하지만 그건 단지 문제가 있는지, 오타가 있는지, 올바른 URL로 업데이트되지 않은 복사 된 클라이언트 버전에 대해 묻습니다. 어떤 상황에서 이것을 얻어서 주입하는 것이 가능할 것이라고 나는 생각한다.
동시에, 특정 작업에 대해이 작업을 수행 할 수 없도록해야합니다. 예를 들어 부분 일 경우이 텍스트 영역 내에 텍스트를 생성 할 수 있습니다. 예를 들어 주석이 적절하지 않을 수 있습니다. 전체적으로 나는이 말을 에 넣기를 바랍니다. 나는 그것이 적절하지 않다고 말하지 않습니다.
내게있어서 이것은 액션에 대한 액션 필터를 제안합니다.이 액션 필터는 사이트 전체에 적용 할 수 있고 특정 액션에 대해서는 해제 할 수 있습니다. 무시 무시한 이벤트 중 하나를 통해이 경로를 확인할 수 있었으면 좋겠지 만 저장되어있는 곳을 찾을 수없는 것 같습니다. 또한 OnResultExecuted는 Partial이 선택되기 전에 실행되는 것으로 보이며 OnResultExecuted는 Partial의 내용을 이미 작성한 것으로 보입니다. 따라서 여기에 시작 주석을 삽입 할 수 없습니다. 또한 선택한 부분의 경로에 대한 참조를 찾을 수 없습니다.
디버그 모드에서 컴파일 할 때이 속성을 쓰는 것이 나의 의도입니다.
그래서 누구나 FindPartialView와 속성 사이에 어떤 종류의 해킹없이 선택된 뷰의 경로를 가져올 수 있는지 알고 있습니까? 내 애트리뷰트 방법이 최선의 선택인가요? 아니면 이것을 수행하는 더 쉬운 방법이 있습니까? 이미 뭔가가 이미 내장되어 있습니다!
많은 도움에 감사드립니다.