문제

나는 다른 유사한 주제 (stackoverflow-serverfault-superuser와 같은)로 확장하고 싶은 웹 사이트 (ASP.NET MVC)가 있습니다.

데이터베이스 계층 및 컨트롤러 계층은 두 웹 사이트 모두 동일합니다. 뷰 레이어만이 다르며 로고, 마스터 페이지 및 일부 리소스 파일 (일부) 및 CSS 등 몇 가지 세부 사항 만 있습니다.

이 상황을 관리하는 가장 좋은 방법은 무엇입니까? 이것은 Jeff와 그의 팀이 어떻게 달성합니까?

저의 이상적인 목표는 단일 솔루션 (Visual Studio Solution), 컨트롤러 및 모델이있는 프로젝트 및 n 개의 다른 프로젝트를 갖는 것입니다. 각보기마다. (명확히하기 위해이 줄을 추가했습니다)

나는 이것을 단순히 두 가지 솔루션 (SVN 또는 Mercurial 포함)을 분기 한 다음 게시하는 동안 병합하는 것을 완성하게합니까?

감사합니다!

도움이 되었습니까?

해결책

우리는 사용합니다 App_GlobalResources 이를 수행하는 폴더

  • app_globalresources serverfault.resx
  • app_globalresources stackoverflow.resx
  • app_globalresources metastackoverflow.resx

도우미 수업으로 :

public static class Resources
{
public static string TeamEmail { get { return GetString("TeamEmail"); } }    
public static string GetString(string key)
{
    return HttpContext.GetGlobalResourceObject(
         GlobalApplication.CurrentSite.ToString(), key).ToString();
}
}

그리고 그것은 다음과 같은 시야에 나타납니다.

<a href="mailto:<%= Resources.TeamEmail %>">contact us</a>

더 많은 총 대체품 (예 : /FAQ)의 경우 FAQ의 여러 사본이 있습니다.

  • Faq-ServerFault.aspx
  • Faq-StackOverflow.aspx
  • Faq-StackOverflowMeta.aspx

빌드는 각 서버에 대해 파일을 적절하게 이름을 바꿉니다.

(이들은 컨텐츠보기이므로 문자 그대로 FAQ 컨텐츠 자체이므로 마스터 페이지는 나머지 레이아웃을 결정합니다).

다른 팁

나는 이것을하는 두 가지 방법으로 생각할 수 있습니다

  1. 도메인이 다르고 서버에 저장할 수있는 CSS, 로고 및 기타 UI 물건을 저장할 경우 웹 서버 또는 II를 아파치해야 할 수도 있습니다.

  2. 마스터 페이지에 대해 이야기하는 .NET을 사용하고있는 경우 마스터 페이지에 대해 이야기하고 도메인이 다르지 않으면 웹 앱에 일부 템플릿에서 다른 템플릿으로 전환하여 사용자 이름이나 프로파일과 같은 일부 규칙에 따라 일부 템플릿으로 전환 할 수 있습니다. .NET을 사용하는 경우 다른 스킨을 생성하여 구현 해야하는 특정 논리에 따라 할당 할 수 있다고 생각합니다. 다른 언어를 사용하는 경우 템플릿을 생성하고 규칙에 따라 전환 할 수도 있습니다.

도움이 되었기를 바랍니다.

당신은 당신이 웹 사이트를 가지고 있다고 말하고 다른 주제에 대해 그것을 확장하고 싶다고 말합니다. 나는 당신이 이런 방식이라고 생각해야한다고 생각합니다.

  • 당신은 있습니다 웹 앱 그것은 당신의 일을합니다.
  • 당신은 당신의 웹 사이트가 있습니다 배포 그 웹 앱
  • 이제 동일한 기능 (SO-SF와 마찬가지로)을 가진 다른 웹 앱을 원하지만 다른 모양과 느낌을 원합니다.
  • 작업이 다르게 보이도록 웹 앱을 구성하고 별도의 서버에 배포하는 것이 좋습니다.

참고 : *이 두 웹 사이트는 서로 독립적입니다. 그들은 공통된 데이터를 가지고 있지 않을 것입니다! * 웹 사이트가 상호 작용하기를 원한다면 웹 앱이 다른 인스턴스와 상호 작용하고 재배치 할 수 있도록하는 것이 좋습니다.

나는 당신이 올바르게 요청한 것을 이해하고 내가 쓴 것이 도움이 될 것임을 이해하기를 바랍니다.

건배, JRH

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top