首先,你已经装好了sharepoint 2003 ,有关sharepoint 2003 安装问题请见我博客的另一篇文章:
sharepoint 安装宝典
另,有很多网友想下载 sharepoint 2003,我用的是公司的.若有知道下载地址的朋友,不妨提供给广大需要者.
开始制作第一个webpart!
用VS.net创建两个项目:
一. 创建" 空Web项目":WebProject1
添加一个“Web用户控件":WebUserControl1.ascx,去掉 WebUserControl1.ascx的"CodeBehind”和“Inherited”等属性代码如下:
二. 创建 "Web Part Library”项目:WebPartLibrary1
在装好webpart后,打开.net即可看到web part Library如图所示:
WebPart1.cs的代码如下:
配置WebPart,即修改 WebPart1.dwp 代码如下:
说明:
1.<safecontrol...>中的信息要和 WebPart1.dwp 一致
2.<SafeControl Assembly="WebPartLibrary1" Namespace=" WebPartLibrary1" TypeName="*" Safe="True" />不要写成
<SafeControl Assembly="WebPartLibrary1" Namespace=" WebPartLibrary1.WebPart1" TypeName="*" Safe="True" />
四.导入创建的webPart到SPS中
导入之前需要将刚才创建的“WebUserControl1.ascx”和“WebPartLibrary1.dll”拷贝到承载SPS站点的虚拟主机的根目录下的“bin”目录下;
导入过程:
1.点击门户网站上的"网站设置";
2.点击"常规设置"下的"管理安全性和附加设置";
3.点击"模板和 Web 部件"下的"管理 Web 部件库";
4.点击"上载 Web 部件";
5.浏览到"WebPart1.dwp",选择"默认web部件"组,保存!OK了,本节结束!!
另,有很多网友想下载 sharepoint 2003,我用的是公司的.若有知道下载地址的朋友,不妨提供给广大需要者.
开始制作第一个webpart!
用VS.net创建两个项目:
一. 创建" 空Web项目":WebProject1
添加一个“Web用户控件":WebUserControl1.ascx,去掉 WebUserControl1.ascx的"CodeBehind”和“Inherited”等属性代码如下:
<%
@ Control Language
=
"
c#
"
AutoEventWireup
=
"
false
"
TargetSchema
=
"
http://schemas.microsoft.com/intellisense/ie5
"
%>
< asp:Calendar id = " Calendar1 " runat = " server " >
</ asp:Calendar >
< asp:Calendar id = " Calendar1 " runat = " server " >
</ asp:Calendar >
二. 创建 "Web Part Library”项目:WebPartLibrary1
在装好webpart后,打开.net即可看到web part Library如图所示:
WebPart1.cs的代码如下:
using
System;
using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml.Serialization;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;
using Microsoft.SharePoint.WebPartPages;
namespace WebPartLibrary1
{
/**//// <summary>
/// Description for WebPart1.
/// </summary>
[DefaultProperty("Text"),
ToolboxData("<{0}:WebPart1 runat=server></{0}:WebPart1>"),
XmlRoot(Namespace="WebPartLibrary1")]
public class WebPart1 : Microsoft.SharePoint.WebPartPages.WebPart
{
一.在WebPart1类中定义一个用来保存第一步中创建的UserControl的对象#region 一.在WebPart1类中定义一个用来保存第一步中创建的UserControl的对象
private System.Web.UI.Control _innerUserControl;
#endregion
private const string defaultText = "";
private string text = defaultText;
[Browsable(true),
Category("Miscellaneous"),
DefaultValue(defaultText),
WebPartStorage(Storage.Personal),
FriendlyName("Text"),
Description("Text Property")]
public string Text
{
get
{
return text;
}
set
{
text = value;
}
}
/**//// <summary>
/// This method gets the custom tool parts for this Web Part by overriding the
/// GetToolParts method of the WebPart base class. You must implement
/// custom tool parts in a separate class that derives from
/// Microsoft.SharePoint.WebPartPages.ToolPart.
/// </summary>
///<returns>An array of references to ToolPart objects.</returns>
// public override ToolPart[] GetToolParts()
// {
// ToolPart[] toolparts = new ToolPart[2];
// WebPartToolPart wptp = new WebPartToolPart();
// CustomPropertyToolPart custom = new CustomPropertyToolPart();
// toolparts[0] = wptp;
// toolparts[1] = custom;
// return toolparts;
// }
二.重载WebPart1的父类的CreateChildControls()方法,在其中载入第一步创建的UserControl:#region 二.重载WebPart1的父类的CreateChildControls()方法,在其中载入第一步创建的UserControl:
protected override void CreateChildControls()
{
_innerUserControl = this.Page.LoadControl("/bin/WebUserControl1.ascx");
this.Controls.Add(_innerUserControl);
}
#endregion
三.在RenderWebPart()方法中输出载入的UserControl:#region 三.在RenderWebPart()方法中输出载入的UserControl:
/**//// <summary>
/// Render this Web Part to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void RenderWebPart(HtmlTextWriter output)
{
// output.Write(SPEncode.HtmlEncode(Text));
this.EnsureChildControls();
_innerUserControl.RenderControl(output);
}
#endregion
}
}
using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml.Serialization;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;
using Microsoft.SharePoint.WebPartPages;
namespace WebPartLibrary1
{
/**//// <summary>
/// Description for WebPart1.
/// </summary>
[DefaultProperty("Text"),
ToolboxData("<{0}:WebPart1 runat=server></{0}:WebPart1>"),
XmlRoot(Namespace="WebPartLibrary1")]
public class WebPart1 : Microsoft.SharePoint.WebPartPages.WebPart
{
一.在WebPart1类中定义一个用来保存第一步中创建的UserControl的对象#region 一.在WebPart1类中定义一个用来保存第一步中创建的UserControl的对象
private System.Web.UI.Control _innerUserControl;
#endregion
private const string defaultText = "";
private string text = defaultText;
[Browsable(true),
Category("Miscellaneous"),
DefaultValue(defaultText),
WebPartStorage(Storage.Personal),
FriendlyName("Text"),
Description("Text Property")]
public string Text
{
get
{
return text;
}
set
{
text = value;
}
}
/**//// <summary>
/// This method gets the custom tool parts for this Web Part by overriding the
/// GetToolParts method of the WebPart base class. You must implement
/// custom tool parts in a separate class that derives from
/// Microsoft.SharePoint.WebPartPages.ToolPart.
/// </summary>
///<returns>An array of references to ToolPart objects.</returns>
// public override ToolPart[] GetToolParts()
// {
// ToolPart[] toolparts = new ToolPart[2];
// WebPartToolPart wptp = new WebPartToolPart();
// CustomPropertyToolPart custom = new CustomPropertyToolPart();
// toolparts[0] = wptp;
// toolparts[1] = custom;
// return toolparts;
// }
二.重载WebPart1的父类的CreateChildControls()方法,在其中载入第一步创建的UserControl:#region 二.重载WebPart1的父类的CreateChildControls()方法,在其中载入第一步创建的UserControl:
protected override void CreateChildControls()
{
_innerUserControl = this.Page.LoadControl("/bin/WebUserControl1.ascx");
this.Controls.Add(_innerUserControl);
}
#endregion
三.在RenderWebPart()方法中输出载入的UserControl:#region 三.在RenderWebPart()方法中输出载入的UserControl:
/**//// <summary>
/// Render this Web Part to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void RenderWebPart(HtmlTextWriter output)
{
// output.Write(SPEncode.HtmlEncode(Text));
this.EnsureChildControls();
_innerUserControl.RenderControl(output);
}
#endregion
}
}
配置WebPart,即修改 WebPart1.dwp 代码如下:
<?
xml version="1.0" encoding="utf-8"
?>
< WebPart xmlns ="http://schemas.microsoft.com/WebPart/v2" >
< Title > 李燕平的WebPart1 </ Title >
< Description > 第一个webpart </ Description >
< Assembly > WebPartLibrary1 </ Assembly >
< TypeName > WebPartLibrary1.WebPart1 </ TypeName >
<!-- Specify initial values for any additional base class or custom properties here. -->
</ WebPart >
说明:
< WebPart xmlns ="http://schemas.microsoft.com/WebPart/v2" >
< Title > 李燕平的WebPart1 </ Title >
< Description > 第一个webpart </ Description >
< Assembly > WebPartLibrary1 </ Assembly >
< TypeName > WebPartLibrary1.WebPart1 </ TypeName >
<!-- Specify initial values for any additional base class or custom properties here. -->
</ WebPart >
Title :
显示在
SPS
页面上的标题
Description :
显示在
SPS
页面上的提示文字
Assembly :
编译出来的
dll
文件的文件名(勿加
“
.dll
”
)
TypeName :
完整的
WebPart
的类名称(包含
Namespace
)
三.打开
承载
SPS
站点的虚拟主机的根目录,编辑
web.config
文件
可能有的朋友不知道这个目录在那,请见图示:
web.config文件原码:
可能有的朋友不知道这个目录在那,请见图示:
web.config文件原码:
<
configuration
>
< configSections >
< sectionGroup name ="SharePoint" >
< section name ="SafeControls" type ="Microsoft.SharePoint.ApplicationRuntime.SafeControlsConfigurationHandler, Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
< section name ="RuntimeFilter" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartLimits" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartCache" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartWorkItem" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartControls" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="SafeMode" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="OnlineLibrary" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ sectionGroup >
</ configSections >
< SharePoint >
< SafeMode MaxControls ="50" CallStack ="false" />
< WebPartLimits MaxZoneParts ="50" PropertySize ="1048576" />
< WebPartCache Storage ="CacheObject" />
< WebPartWorkItem Timeout ="7000" />
< WebPartControls DatasheetControlGuid ="65BCBEE4-7728-41a0-97BE-14E1CAE36AAE" />
<!--
SafeControl Attributes:
Assembly="[Assembly]" - The .NET assembly in which the control is contained. This attribute can also contain version, culture, and public key token information.
Namespace="[Namespace]" - The .NET namespace in which the control is defined.
TypeName="[Typename]" - The .NET class name of the control. You can type an asterisk (*) wildcard character to indicate all TypeNames in a Namespace.
Safe="[True|False]" - Specifies whether a Web Part or Web Form Control is safe and can be displayed on a Web Parts Page. This attribute is True by default.
-->
< SafeControls >
< SafeControl Assembly ="System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace ="System.Web.UI.WebControls" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace ="System.Web.UI.HtmlControls" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.WebPartPages" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.WebControls" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.ApplicationPages" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.SoapServer" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.Meetings" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint.Portal, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.Portal.WebControls" TypeName ="*" />
< SafeControl Assembly ="Microsoft.SharePoint.Portal, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.Portal.WebControls.Alerts" TypeName ="*" />
< SafeControl Assembly ="Ocean.WebParts.ImageViewer, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a2c9a30ebbc2e76e" Namespace ="Ocean.WebParts" TypeName ="*" Safe ="True" />
<!-- 注意1:下面的 <SafeControl Assembly="WebPartLibrary1" Namespace="WebPartLibrary1" TypeName="*" Safe="True" />是手工写的 -->
< SafeControl Assembly ="Ocean.WebParts.TimeShow, Version=1.0.0.0, Culture=neutral, PublicKeyToken=54ab91e7bd3d5c44" Namespace ="Ocean.WebParts" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="WebPartLibrary1" Namespace ="WebPartLibrary1" TypeName ="*" Safe ="True" />
</ SafeControls >
< OnlineLibrary Url ="http://r.office.microsoft.com/r/hlidAwsGallery" />
< RuntimeFilter Assembly ="Microsoft.SharePoint.Portal, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Class ="Microsoft.SharePoint.Portal.Audience.AudienceManager" BuilderURL ="audience_chooser.aspx" />
</ SharePoint >
< system .web >
< securityPolicy >
< trustLevel name ="WSS_Medium" policyFile ="C:/Program Files/Common Files/Microsoft Shared/Web Server Extensions/60/config/wss_mediumtrust.config" />
< trustLevel name ="WSS_Minimal" policyFile ="C:/Program Files/Common Files/Microsoft Shared/Web Server Extensions/60/config/wss_minimaltrust.config" />
</ securityPolicy >
< httpHandlers >
< add verb ="*" path ="/_vti_bin/*.aspx" type ="System.Web.UI.PageHandlerFactory, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
< add verb ="*" path ="*.aspx" type ="Microsoft.SharePoint.ApplicationRuntime.SharePointHandlerFactory, Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
</ httpHandlers >
< customErrors mode ="On" />
< httpRuntime maxRequestLength ="51200" />
< authentication mode ="Windows" />
< authorization >
< allow users ="*" />
</ authorization >
< identity impersonate ="true" />
< httpModules >
< clear />
< add name ="OutputCache" type ="System.Web.Caching.OutputCacheModule" />
< add name ="WindowsAuthentication" type ="System.Web.Security.WindowsAuthenticationModule" />
<!-- <add name="Session" type="System.Web.SessionState.SessionStateModule"/> -->
</ httpModules >
< globalization fileEncoding ="utf-8" />
< compilation batch ="false" debug ="false" />
< pages enableSessionState ="false" enableViewState ="true" enableViewStateMac ="true" validateRequest ="false" />
<!-- 注意2:我把WSS_Minimal改成了WSS_Medium -->
< trust level ="WSS_Medium" originUrl ="" />
< machineKey validationKey ="0C99877D609FD63BC48BBB8752DE0C3276A2DB30516ECEA2" decryptionKey ="A8B47233EC5BFA84B7644ED6591B597C666CB43E72288192" validation ="SHA1" />
</ system.web >
</ configuration >
< configSections >
< sectionGroup name ="SharePoint" >
< section name ="SafeControls" type ="Microsoft.SharePoint.ApplicationRuntime.SafeControlsConfigurationHandler, Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
< section name ="RuntimeFilter" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartLimits" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartCache" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartWorkItem" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="WebPartControls" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="SafeMode" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< section name ="OnlineLibrary" type ="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ sectionGroup >
</ configSections >
< SharePoint >
< SafeMode MaxControls ="50" CallStack ="false" />
< WebPartLimits MaxZoneParts ="50" PropertySize ="1048576" />
< WebPartCache Storage ="CacheObject" />
< WebPartWorkItem Timeout ="7000" />
< WebPartControls DatasheetControlGuid ="65BCBEE4-7728-41a0-97BE-14E1CAE36AAE" />
<!--
SafeControl Attributes:
Assembly="[Assembly]" - The .NET assembly in which the control is contained. This attribute can also contain version, culture, and public key token information.
Namespace="[Namespace]" - The .NET namespace in which the control is defined.
TypeName="[Typename]" - The .NET class name of the control. You can type an asterisk (*) wildcard character to indicate all TypeNames in a Namespace.
Safe="[True|False]" - Specifies whether a Web Part or Web Form Control is safe and can be displayed on a Web Parts Page. This attribute is True by default.
-->
< SafeControls >
< SafeControl Assembly ="System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace ="System.Web.UI.WebControls" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Namespace ="System.Web.UI.HtmlControls" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.WebPartPages" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.WebControls" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.ApplicationPages" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.SoapServer" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.Meetings" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="Microsoft.SharePoint.Portal, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.Portal.WebControls" TypeName ="*" />
< SafeControl Assembly ="Microsoft.SharePoint.Portal, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace ="Microsoft.SharePoint.Portal.WebControls.Alerts" TypeName ="*" />
< SafeControl Assembly ="Ocean.WebParts.ImageViewer, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a2c9a30ebbc2e76e" Namespace ="Ocean.WebParts" TypeName ="*" Safe ="True" />
<!-- 注意1:下面的 <SafeControl Assembly="WebPartLibrary1" Namespace="WebPartLibrary1" TypeName="*" Safe="True" />是手工写的 -->
< SafeControl Assembly ="Ocean.WebParts.TimeShow, Version=1.0.0.0, Culture=neutral, PublicKeyToken=54ab91e7bd3d5c44" Namespace ="Ocean.WebParts" TypeName ="*" Safe ="True" />
< SafeControl Assembly ="WebPartLibrary1" Namespace ="WebPartLibrary1" TypeName ="*" Safe ="True" />
</ SafeControls >
< OnlineLibrary Url ="http://r.office.microsoft.com/r/hlidAwsGallery" />
< RuntimeFilter Assembly ="Microsoft.SharePoint.Portal, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Class ="Microsoft.SharePoint.Portal.Audience.AudienceManager" BuilderURL ="audience_chooser.aspx" />
</ SharePoint >
< system .web >
< securityPolicy >
< trustLevel name ="WSS_Medium" policyFile ="C:/Program Files/Common Files/Microsoft Shared/Web Server Extensions/60/config/wss_mediumtrust.config" />
< trustLevel name ="WSS_Minimal" policyFile ="C:/Program Files/Common Files/Microsoft Shared/Web Server Extensions/60/config/wss_minimaltrust.config" />
</ securityPolicy >
< httpHandlers >
< add verb ="*" path ="/_vti_bin/*.aspx" type ="System.Web.UI.PageHandlerFactory, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
< add verb ="*" path ="*.aspx" type ="Microsoft.SharePoint.ApplicationRuntime.SharePointHandlerFactory, Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
</ httpHandlers >
< customErrors mode ="On" />
< httpRuntime maxRequestLength ="51200" />
< authentication mode ="Windows" />
< authorization >
< allow users ="*" />
</ authorization >
< identity impersonate ="true" />
< httpModules >
< clear />
< add name ="OutputCache" type ="System.Web.Caching.OutputCacheModule" />
< add name ="WindowsAuthentication" type ="System.Web.Security.WindowsAuthenticationModule" />
<!-- <add name="Session" type="System.Web.SessionState.SessionStateModule"/> -->
</ httpModules >
< globalization fileEncoding ="utf-8" />
< compilation batch ="false" debug ="false" />
< pages enableSessionState ="false" enableViewState ="true" enableViewStateMac ="true" validateRequest ="false" />
<!-- 注意2:我把WSS_Minimal改成了WSS_Medium -->
< trust level ="WSS_Medium" originUrl ="" />
< machineKey validationKey ="0C99877D609FD63BC48BBB8752DE0C3276A2DB30516ECEA2" decryptionKey ="A8B47233EC5BFA84B7644ED6591B597C666CB43E72288192" validation ="SHA1" />
</ system.web >
</ configuration >
1.<safecontrol...>中的信息要和 WebPart1.dwp 一致
2.<SafeControl Assembly="WebPartLibrary1" Namespace=" WebPartLibrary1" TypeName="*" Safe="True" />不要写成
<SafeControl Assembly="WebPartLibrary1" Namespace=" WebPartLibrary1.WebPart1" TypeName="*" Safe="True" />
四.导入创建的webPart到SPS中
导入之前需要将刚才创建的“WebUserControl1.ascx”和“WebPartLibrary1.dll”拷贝到承载SPS站点的虚拟主机的根目录下的“bin”目录下;
导入过程:
1.点击门户网站上的"网站设置";
2.点击"常规设置"下的"管理安全性和附加设置";
3.点击"模板和 Web 部件"下的"管理 Web 部件库";
4.点击"上载 Web 部件";
5.浏览到"WebPart1.dwp",选择"默认web部件"组,保存!OK了,本节结束!!