jjfjjj 发表于 2015-9-26 12:07:01

Sharepoint 页面里添加.net托管代码

  在做Sharepoint门户网站定制时候,可以利用VS集成开发工具编写自定义功能的WebPart或利用VS在可视化环境下开发UserControl然后利用QuickPart用户控件包装器来将UserControl包装为WebPart,以这种方式来对Sharepoint门户网站的内容进行灵活定制。也可以利Sharepoint Designer 2007对Sharepoint 网站的页面外观进行定制或添加自定义的Page等,在对新添加的Page的布局设计完后有时因为功能的需要,要在Page里添加自定义的.net 托管代码,由于Sharepoint页面在默认情况是不支持的页面的托管代码处理的,所以需要些必要手动配置后才行。
  
  接下,将介绍如何在自定义的Sharepoint页面里添加.net 托管代码,例如要给页面添加Page_Load事件处理程序,可按如下步骤进行:
  1、打开创建的Sharepoint页面所在的目录网站的目录,并打开Web.config文件
  
  2、找到名为PageParserPaths的元素节点,并添加如下子节点
  <PageParserPath VirtualPath="/Pages/FormCode.aspx(创建的新页面)" CompilationMode="Always" AllowServerSideScript="true" />
  保存Web.config文件
  
  属性说明:
  a、VirtualPath :表示要站点分析处理的自定义页面的URL
  b、CompilationMode :表示站点对自定义页面里的.net 托管代码以何种方式进行编译
  c、AllowServerSideScript :表示自定义页面支持服务器端执行的脚本
  
  3、利用Sharepoint Designer 2007打开新创建的页面,并在<head></head>标记间添加页面加载时需要的事件处理程序,代码如下:
  <script runat="server" type="C#">
  protected void Page_Load(object sender, EventArgs e)
  {
         string loginName = SPContext.Current.Web.CurrentUser.LoginName; //获取当前登录网站的用户名
         string webUrl = SPContext.Current.Web.Url;//获取当前访问网站的Url
  }
  </script>
  
  代码说明:
  在页面中添加服务器端处理的事件处理程序时,必须写在<script runat="server" type="C#"></script>标记中,且type属性值需根据添加的事件托管代码的编程语言如C#决定。
页: [1]
查看完整版本: Sharepoint 页面里添加.net托管代码