2011-05-09 70 views
0

我有一個自定義菜單,我想將其部署到我的SharePoint網站的母版頁。使用自定義asp.net菜單替換SharePoint菜單

我有asp.net菜單生成作爲c#項目是VS2010,但不知道如何將其部署到SharePoint。一旦編譯完成,該項目當然會創建一個dll文件並具有幾個.config文件。

我在哪裏可以放置這些文件?我在GAC中聽到,但我不確定服務器上的具體位置(文件夾)。另外,我是否需要在我的項目中引用該dll(將其指向Sp2010服務器上的GAC)?

將自定義asp.net菜單部署到SharePoint Master Page的最常用標準方式是什麼?

感謝

另外: 玩這個之後,我在Visual Studio 2010中一個很簡單的asp.net菜單下面是我的Default.aspx文件的全部內容:

<%@ Page Title="Home Page" Language="C#" AutoEventWireup="true" 
CodeFile="Default.aspx.cs" Inherits="_Default" %> 
<html4f><body><head runat="server"></head> 
<form id="Form1" runat="server"> 
<asp:Menu ID="Menu1" runat="server"> 
    <Items> 
     <asp:MenuItem Text="Menu1" Value="Menu1"> 
      <asp:MenuItem Text="SubMenu1" Value="SubMenu1"></asp:MenuItem> 
      <asp:MenuItem Text="SubMenu2" Value="SubMenu2"></asp:MenuItem> 
     </asp:MenuItem> 
     <asp:MenuItem Text="Menu2" Value="Menu2"></asp:MenuItem> 
    </Items> 
</asp:Menu> 
</form> 

根網絡文件夾後發佈:

Root

Bin文件夾:

Bin

如何添加這對我的SharePoint母版頁文件?我現在意識到我需要將dll(所有這些?)添加到該特定網站集的Sharepoint BIN文件夾中,並修改web.config文件,但我不確定如何找到我需要的信息所以。 .config文件需要一些「鍵」,我不確定如何找出我正在使用的dll的GUID? 這應該是一件簡單的事情 - 向共享點添加菜單,但發現我不知道要繼續搜索的內容。謝謝你盡你所能的幫助。

回答

0

早上好,

這實際上是非常簡單 -

1)你必須要到現場去(C的Bin文件夾中的DLL和任何配置文件:\的Inetpub \ wwwroot的\ WSS \ ViritualDirectories \\ BIN)。

2)將DLL添加到GAC(這可以或可以不被要求;如果控制未命中的SharePoint,可以不需要任何必須的,從而安全GAC

3)控制添加到。主頁面使用@Register將其包含在頁面中。

4)添加「的SafeControl」條目添加到web.config文件(運行DLL需要SP) - 你可以看到現有的任何一個看到的格式*

*如果您處於農場環境中,則不建議更新Web.config;在一個農場(2+服務器),SharePoint喜歡覆蓋它們。

最好的問候,

大衛·斯特林

作者MOSS 2007完全參考

davidmsterling.blogspot.com

www.sterling-consulting.com

+0

感謝你的迴應!我有一些問題仍然是我希望你能幫助我: 1)我在我的asp.net的菜單項目我目前的BIN文件夾中的以下文件: App_Web_3qywcdph.dll App_Web_5udcr0c.dll App_global .asax.compiled App-global.asax.dll ...添加所有這些文件嗎? 2)我沒有在我的菜單中使用任何SharePoint - 它們都是靜態鏈接。那麼我不需要將它添加到GAC中? – Kolten 2011-05-11 16:39:48

+0

3)我不確定@註冊的「tagprefix」和「TagName」。我在這裏使用什麼?另外,其他@Register條目引用一個asax文件。我的所有文件都是dll或aspx(?) 4)SafeControl條目需要程序集名稱,PublicKeyToken,NameSpace,Typename等。我在哪裏可以找到這些? 再次感謝 – Kolten 2011-05-11 16:44:02