• SharePoint母板页更改


    若想更改母板页可以代码实现,首先添加母板页Test.master,再添加Feature,Features中的内容如下:

    using System;
    using System.Runtime.InteropServices;
    using System.Security.Permissions;
    using Microsoft.SharePoint;
    using Microsoft.SharePoint.Security;

    namespace Test.Features.Main
    {
    /// <summary>
    /// 此类用于处理在激活、停用、安装、卸载和升级功能的过程中引发的事件。
    /// </summary>
    /// <remarks>
    /// 附加到此类的 GUID 可能会在打包期间使用,不应进行修改。
    /// </remarks>

    [Guid("0e7d83fe-3252-4afd-b949-a1a5c1615757")]
    public class MainEventReceiver : SPFeatureReceiver
    {
    // 取消对以下方法的注释,以便处理激活某个功能后引发的事件。

    //public override void FeatureActivated(SPFeatureReceiverProperties properties)
    //{
    //}


    //// 取消对以下方法的注释,以便处理在停用某个功能前引发的事件。

    //public override void FeatureDeactivating(SPFeatureReceiverProperties properties)
    //{
    //}


    // 取消对以下方法的注释,以便处理在安装某个功能后引发的事件。

    //public override void FeatureInstalled(SPFeatureReceiverProperties properties)
    //{
    //}


    // 取消对以下方法的注释,以便处理在卸载某个功能前引发的事件。

    //public override void FeatureUninstalling(SPFeatureReceiverProperties properties)
    //{
    //}

    // 取消对以下方法的注释,以便处理在升级某个功能时引发的事件。

    public override void FeatureUpgrading(SPFeatureReceiverProperties properties, string upgradeActionName, System.Collections.Generic.IDictionary<string, string> parameters)
    {
    }
    public override void FeatureActivated(
    SPFeatureReceiverProperties properties)
    {
    SPSite siteCollection = properties.Feature.Parent as SPSite;
    if (siteCollection != null)
    {
    SPWeb topLevelSite = siteCollection.RootWeb;

    // Calculate relative path to site from Web Application root.
    string WebAppRelativePath = topLevelSite.ServerRelativeUrl;
    if (!WebAppRelativePath.EndsWith("/"))
    {
    WebAppRelativePath += "/";
    }

    // Enumerate through each site and apply branding.
    foreach (SPWeb site in siteCollection.AllWebs)
    {
    site.MasterUrl = WebAppRelativePath +
    "_catalogs/masterpage/Test.master";
    site.CustomMasterUrl = WebAppRelativePath +
    "_catalogs/masterpage/Test.master";
    site.AlternateCssUrl = WebAppRelativePath +
    "Style/Test/Styles.css";
    site.SiteLogoUrl = WebAppRelativePath +
    "Style/Test/Images/Background.jpg";
    site.UIVersion = 4;
    site.Update();
    }
    }
    }

    public override void FeatureDeactivating(
    SPFeatureReceiverProperties properties)
    {
    SPSite siteCollection = properties.Feature.Parent as SPSite;
    if (siteCollection != null)
    {
    SPWeb topLevelSite = siteCollection.RootWeb;

    // Calculate relative path of site from Web Application root.
    string WebAppRelativePath = topLevelSite.ServerRelativeUrl;
    if (!WebAppRelativePath.EndsWith("/"))
    {
    WebAppRelativePath += "/";
    }

    // Enumerate through each site and remove custom branding.
    foreach (SPWeb site in siteCollection.AllWebs)
    {
    site.MasterUrl = WebAppRelativePath +
    "_catalogs/masterpage/v4.master";
    site.CustomMasterUrl = WebAppRelativePath +
    "_catalogs/masterpage/v4.master";
    site.AlternateCssUrl = "";
    site.SiteLogoUrl = "";
    site.Update();
    }
    }
    }
    }
    }

    这样部署成功后,点击网站操作——网站设置——网站集功能,激活所建Feature即可更改母板页

  • 相关阅读:
    项目
    关于我
    【转载】罗胖精选|什么样的自控方法才有效?
    知识管理——得到CEO脱不花女士的一次分享
    注意由双大括号匿名类引起的serialVersionUID编译告警
    持续集成、持续交付和持续部署
    Google Cayley图数据库使用方法
    任务的属性
    团队博客地址
    个人总结
  • 原文地址:https://www.cnblogs.com/GreenGrass/p/2642067.html
Copyright © 2020-2023  润新知