2012-01-04 106 views
1

我正在開發可視化Web部件。我在VS2010中創建了一個SharePoint項目,並在其中添加了一個可視化Web部件。構建並部署了該部件。我能夠看到添加的Web部件,並且可以將其拖動到現場的任何頁面上。SharePoint 2010開發

現在我創建了一個重定向到同一站點(第一個解決方案指向的站點)的新解決方案。添加了一個可視化Web部件給它。建立並部署了。現在,當我看到該網站時,雖然我可以將此新的Web部件添加到頁面,但從以前的解決方案添加的Web部件發生錯誤。

Web Part Error: A Web Part or Web Form Control on this Page cannot be displayed or imported. The type TestWebPart1.Testwebpart.Testwebpart, TestWebPart1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=02dc69d4b9065085 could not be found or it is not registered as safe.

看起來像我不能與單個網站的多個解決方案一起工作。我可以得到這個原因嗎?

+0

它是怎麼去? 。 – 2012-01-15 17:19:05

回答

0

這通常意味着你的webpart組件未在SharePoint web.config中safecontrols中註冊,或你沒有創建一個強類型的組件

要safecontrols

要解決註冊打開你的web.config位於您的SharePoint服務器的IIS的根站點,通常路徑是一樣的東西

c:\inetpub\wwwroot\wss\VirtualDirectories\80\web.config

添加在<的SafeControl以下小號>部分

<SafeControl Assembly="TestWebPart1.Testwebpart.Testwebpart, TestWebPart1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=02dc69d4b9065085" Namespace="TestWebPart1" TypeName="*" Safe="True" AllowRemoteDesigner="True" /> 

簽名組件

http://msdn.microsoft.com/en-us/library/ms247123(v=vs.80).aspx

+0

因爲這是正確的答案,我該如何投票呢? – 2012-01-15 17:18:40

-1

它不是很清楚你試圖達到什麼目的。

但是,您可以爲網站提供儘可能多的解決方案。沒有1個解決方案限制

+0

如果您查看錯誤消息,這很清楚。 – 2012-01-05 08:54:29

0

我不確定是否是這種情況,但;這裏是一個理論:

您可能已經創建了相同的命名空間和名稱,但不同的解決方案中的webpart。

所以發生了什麼;第一個解決方案爲webpart的二進制文件提供了一個唯一的標識,如「1」,另一個標識爲「2」。

所以第一個部署的Web部件的二進制與使用id =「2」的二進制覆蓋,因爲它們具有相同的名稱,但二進制的唯一ID是一個較新的ID。

所以第一個的控制都在尋找使用id =「1」的二進制文件,無法找到它。 這可能是您收到的錯誤。

您必須更改名稱。 如果是這種情況,請告訴我,我將在您可以使用的命名約定中添加一些註釋。

相關問題