zoukankan      html  css  js  c++  java
  • 借力于QuickPart,快速开发IFrameWebPart,三分钟搞定!!

    为了能平稳将我们单位的内网门户升级过渡到sharepoint,就需要我自己写一些webpart来满足需求。

    要解决的第一个问题就是如何通过新的门户登陆老的OA,我目前不打算使用单点登陆的解决方案,所以构思了一下解决办法:

    先在oa部分写一个loginform.asp页面,上面用于登录信息的输入,如下:

    在sharepoint门户页面上写一个webpart,通过iframe调用loginform.asp来实现登陆,这样就可以把多种类型的登陆页面统一集中到一个门户页面上了。

    说干就干,先在sharepoint server安装的机器上安装quickpart,Kaneboy很贴心,这次的quickpart包中包含了InstallSolution.bat文件,解压后直接运行该文件,就安装好了,下面就是调整站点的web.config文件
    把这句
    <trust level="WSS_Minimal" originUrl="" />
    改为
    <trust level="Full" originUrl="" />

    在浏览器中进入sharepoint站点的Web Part Gallery中,点NEW,将

    Populate Gallery出来,这时quick part的安装就结束了,下面利用我新安装的visual studio .net 2005 sp1来做一个用户控件。
    先新建一个ASP.NET Web 应用程序项目


    在项目中添加一个Web用户控件,名为IFrameWebPart,IFrameWebPart.ascx.cs中代码为
     1using System;
     2using System.Data;
     3using System.Configuration;
     4using System.Collections;
     5using System.Web;
     6using System.Web.Security;
     7using System.Web.UI;
     8using System.Web.UI.WebControls;
     9using System.Web.UI.WebControls.WebParts;
    10using System.Web.UI.HtmlControls;
    11
    12namespace BoooLee.QuickWebPart.UserControls
    13{
    14    public partial class IFrameWebPart : System.Web.UI.UserControl
    15    {
    16        //目标url成员变量
    17        private string _SrcUrl;
    18
    19        protected void Page_Load(object sender, EventArgs e)
    20        {
    21
    22        }

    23
    24        //目标url属性
    25
    26        [Personalizable]
    27        [WebBrowsable]
    28        [WebDisplayName("地址")]
    29        [WebDescription("要在IFrame中显示的页面地址.")]
    30
    31        public string SrcUrl
    32        {
    33            get{return _SrcUrl;}
    34            set{_SrcUrl=value;}
    35        }

    36    }

    37}

    IFrameWebPart.ascx文件中的代码为
    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="IFrameWebPart.ascx.cs" Inherits="IFrameWebPart.IFrameWebPart" %>
    <iframe height="100%" width="100%" src="<%=SrcUrl %>"></iframe>

    编译后生成的IFrameWebPart.dll复制到站点根目录下的bin目录中,IFrameWebPart.ascx复制到站点根目录下的wpresources目录中。

    然后进入站点的Edit Page模式并Add a Web Part,因为我们的iframe web part是一个普通的web part,所以在弹出的web part选择窗口中选择Quick Part,

    编辑刚添加的QuickPart属性,在User Control List中选择IFrameWebPart,Custom Properties列出了我刚定义的用户控件属性,地址里输入一开始写好的用于登陆OA的loginform.asp所在地址,然后确定。

    这就是最终效果


    废话时间:
    今天心情很好,给大家汇报一下俺家附近的一家韩国烧烤小店,味道很正,价格便宜,前两天和朋友去的,发几张照片谗谗大家,嘿嘿!

  • 相关阅读:
    angular-utils-pagination 使用案例
    解决mongodb ISODate相差8小时问题
    Android HttpClient POST JSON Restful-web-services
    将Map转换为Java 对象
    request.getParameterMap()
    angular-fullstack test
    oracle insert &字符插入问题
    listview底部增加按钮
    IDE 常用快捷键记录
    一个jQuery扩展工具包
  • 原文地址:https://www.cnblogs.com/booolee/p/595746.html
Copyright © 2011-2022 走看看