如果在WSS環境下,希望可以在WSS網站虛擬目錄下直接掛載MVC專案。當使用VS2010 MVC2.0開啟MVC專案,並指定Web使用指向WSS下的虛擬目錄作為Web環境,這時會發現執行此MVC專案,會發生找不到路徑的錯誤。如下圖:
這是因為在.Net4.0中,已將UrlRoutingModule加入,Framework預設的Config中,如下圖:
所以在VS2010中,新建立的MVC 2.0 專案Web.config中,預設是不會有UrlRoutingModule的定義的,因為一般繼承Framework中的config設定,應該就可以正確運作了。
但SharePoint環境中,在HttpModule的宣告時,有特別把Framework的預設config部分Clear。因此掛在SharePoint網站下虛擬目錄之MVC專案,便無法正確被解讀了。如下圖參考:
知道原因後,這裡有兩個方式可以解決此問題:
- 把SharePoint的Web.cofig中,HttpModule區塊中的<Clear />拿掉。
- 在新的MVC專案中重新宣告UrlRoutingModule的定義。
我這裡選用第二種方式來解決我的問題。畢竟不瞭解為什麼SharePoint要清除上層的HttpModule設定,因此我想還是保留SharePoint預設值較佳,因此我在MVC專案的Web.config中加入如下區段:
目前看起來MVC便可以正確運作了!
hi 阿彬您好, 偶然看見您也有處理share point的經驗, 想問您:利用share point Office線上編輯的功能, 去編輯外部系統的文件, 是否是一個可行的方案呢?
回覆刪除