2012-05-30 62 views
2

我一直試圖讓我的MVC C#代碼連接到我的SharePoint服務器。我嘗試了所有的事情,無論我嘗試什麼,我都會收到這個錯誤。MVC中的Sharepoint

無法找到[http:// myserver /]上的Web應用程序。驗證 您已正確輸入網址。如果URL應該提供 現有內容,則系統管理員可能需要將新的 請求URL映射添加到預期的應用程序。

這是我的代碼:

string strUrl = "http://myserver/"; 
using (SPSite site = new SPSite(strUrl)) 
{ 
} 
+0

我們將需要比此更多的信息。您是否嘗試添加新的請求URL映射,如錯誤消息所述? –

+0

+1爲暱稱,等待一些二進制代碼。 – Tigran

+0

@Robert是的我試過URL映射。我希望我做得對,我是新手。另外,如果我在瀏覽器中鍵入(http:// myserver /),頁面將加載。 –

回答

4

注意的SPSite /的SPWeb 擁有的SharePoint安裝,是農場的服務器上的工作。它可能在非Sharepoint機器上工作,但這是官方不支持的,某些操作可能會引發異常。

通常,到SharePoint的外部連接是通過Web Services或(自2010年以來)通過Client Object Model完成的。

0

使用Client Object Model進行連接(假設您正在使用SharePoint 2010)。如果您想使用服務器對象模型(您在代碼示例中使用該模型),則MVC應用程序需要在運行SharePoint的服務器上運行。

+0

我在同一臺服務器上運行代碼。 –

0

請確保您的二進制文件以.Net framework 3.5爲目標爲64位,否則會引發此錯誤。正如其他答案所述;要使用像這樣的對象模型,需要在場中的服務器上執行代碼。

+0

我試圖使用.NET 3.5並將目標設置爲64位,但是當我這樣做時,出現一堆錯誤,我無法編譯。另外,我正在服務器上運行我的代碼,這樣我就可以使用服務器對象模型。這些修復程序都不能解決我的問題。 –

+0

好的,但直到你設法編譯並運行你的代碼64位,3.5,你的錯誤將繼續。 嘗試編譯時會出現什麼樣的錯誤? –

+0

一些DLL無法編譯爲64位。 –