Impossible is nothing

记录在sharepoint工作中的经验

博客园 首页 新随笔 联系 订阅 管理

背景:

   老板对document library提出了个新的要求, 希望在上传document后的表单中owner的默认值为当前上传的人.

分析:

  要实现该功能, MS只能通过Event handle的方法实现了.

实现:
1.  在central administration中启动Event handle功能,  application management - web application general settings ,  在web application列表中选择你需要启动该功能的网站, 然后在backward-compatible event handlers中选择on 选项. 如图:


2.  进入到document library, settings  - document library settings , 选择advanced settings, 在backward-compatible event handler表单中输入assembly name , class name 和 properties的内容, 如图:

其实第二步的内容是关于dll的内容.

3,  关于编译后的dll, 我把它放在C:\WINDOWS\assembly, 应该放在Bin也可以的, 然后修改web.config 中关于<SafeControls> 就可以了.

代码:
实现该功能需要完成IListEventSink接口

Code

后记:
实现的过程中, 有一些感觉不是很清楚,  比如取currentUser居然为null , 还有其他一些很常用的变量都是null的 , 明显的有值! 搞不清楚.

关于Event handler参考MSDN:  http://msdn2.microsoft.com/en-us/library/ms916857.aspx
posted on 2008-01-29 22:02  Lordan  阅读(561)  评论(0)    收藏  举报