2011-03-30 63 views
1

存在與此主題相關的現有問題,但我覺得我的情況可能稍有不同(如果我錯了,請糾正我)。爲多個網站使用單個代碼庫

我有兩個網站,幾乎相同的圖形去。他們只需要有不同的標誌。此外,我還設置了數據庫,以便產品可以標記出現在任一或兩個網站上。是否可以設置IIS以將第二個Web站點指向第一個Web站點,然後讓我的代碼確定請求來自哪個域?

例如,網站1的域名爲www.myfirstwebsite.com,第二個網站的域名爲www.mysecondwebsite.com

如果我確實走這條路線,我猜我會檢查域的Page_Load事件背後的母版頁代碼,然後當我想在我的前端顯示產品時,我可以引用母版頁中的變量。這種方式對我來說似乎是最簡單和不太複雜的,但這是一個壞主意嗎?

+0

是否有可能對每個站點單獨的數據庫?這可能會讓你的代碼更加清潔。如果你有一個單獨的數據庫,然後使用類似於@citronas的邏輯,你可以將連接字符串更改爲一個不同的數據庫,並且你的查詢都將工作相同。但是,如果它們混合在同一個數據庫中,則需要跟蹤1)您所在的站點2)所有查詢必須實現邏輯以僅加載適當的內容。這可以通過確保您爲所有查詢或某些參數添加參數ID來完成,但您必須觸及所有查詢 – Prescott 2011-03-30 20:21:30

回答

0

是的,這是可能的。這個魔術字叫做Themes
檢查這個MSDN網頁http://msdn.microsoft.com/en-us/library/ykzx33wh.aspx?ppud=4

分配兩個綁定在IIS,爲www.myfirstwebsite.comwww.mysecondwebsite.com 您需要包括一些像這樣

if(this.Request.Url.StartsWith("www.myfirstwebsite.com") 
{ 
    this.Theme = "firstwebsite"; 
} 
else if(this.Request.Url.StartsWith("www.mysecondwebsite.com") 
{ 
    this.Theme = "secondwebsit"; 
} 
+0

如果這只是徽標更改,則這可能是過度殺毒。只需在母版頁中添加一些代碼,以便根據啓動信息更改徽標可能會更加容易。.. – Prescott 2011-03-30 20:18:55

+0

徽標將更改,並且某些產品將僅顯示在其中一個或另一個上。 – 2011-03-30 20:37:30

相關問題