用自定义asp.net菜单替换SharePoint菜单

时间:2011-05-09 15:54:39

标签: asp.net dll sharepoint-2010

我有一个自定义菜单,我想将其部署到我的SharePoint网站的母版页。

我将asp.net菜单构建为c#项目是VS2010,但不知道如何将其部署到SharePoint。编译完成后,项目当然会创建一个dll文件并有几个.config文件。

我可以在哪里放置这些文件?我在GAC听说过,但我不确定服务器上的具体位置(文件夹)。另外,我是否需要在我的项目中引用该dll(将其指向Sp2010服务器上的GAC)?

将自定义asp.net菜单部署到SharePoint母版页的标准,最常被接受的方式是什么?

由于

另外: 在玩这个之后,我在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? 这应该是一件简单的事情 - 添加一个菜单到sharepoint,但发现我不知道要搜索什么才能继续。感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

早上好,

实际上这很简单 -

1)DLL和您需要的任何配置文件应该转到站点的Bin文件夹(c:\ inetpub \ wwwroot \ wss \ ViritualDirectories \\ BIN)。

2)将DLL添加到GAC(这可能是也可能不是;如果控件没有命中SharePoint,则不需要安全性,因此可能不需要GAC。

3)使用@Register将控件添加到母版页中以将其包含在页面中。

4)在web.config文件中添加“SafeControl”条目(SP运行DLL所需) - 您可以看到任何一个现有文件,以查看格式 *

* 如果您在服务器场环境中,则不建议手动更新Web.config;在一个服务器场(2台服务器)中,SharePoint喜欢覆盖它们。

最诚挚的问候,

David M. Sterling

作者MOSS 2007完整参考

davidmsterling.blogspot.com

www.sterling-consulting.com