最近在项目开发过程中,经常会写Web Part,但是Web Part开发调试不是那么方便,我就想能不能先用User Control开发自己的模块,然后把User Control加到Web Part里面去呢? 这样不仅能够提高开发效率,而且也能复用以前开发过的模块。下面就详细说明具体如何操作:
  1. 新建一个Class library project,添加对System.Web的引用
  
 
2. 项目添加一个user control
  
 
3. 编写这个Web Part
 
  4. 为程序集添加强名称

 
  5. 更改build的输出目录,改为C:\Inetpub\wwwroot\wss\VirtualDirectories\[Site的端口号]\_app_bin\

  6. 修改AssemblyInfo.cs,添加using System.Security;和 [assembly: AllowPartiallyTrustedCallers()]
  
 
  7. 更改user control的属性,将Copy to output directory改为copy if newer
  
 
  8. Build工程

  9. 用Reflector打开刚刚生成的dll,找到Assembly的信息
  
 
  10. 打开C:\Inetpub\wwwroot\wss\VirtualDirectories\[Site 端口号]\web.config文件,在SafeControls下添加一行
     <SafeControl Assembly="BR.WebParts.UControlDemo1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1e038d98fe593539" Namespace="BR.WebParts.UControlDemo1"  TypeName="UserControlPart" Safe="True"/>
  其中Assembly的信息是从Reflector里面取到的
 10.最后把这个Web Part添加到网页上就可以了

KaneBoy的一篇文章提到使用Feature的部署DelegateContorl的方式部署一个ascx文件到站点集的Feature
 posted on 2007-06-26 16:45  紫色阴影  阅读(2949)  评论(8编辑  收藏  举报
我要啦免费统计