该篇章笔者简述下如何解决提升用户权限上传文档到MOSS之后,修改创建者为文档上传的本人(解决这个问题还是用到移花接木。。。)。也许老手一看标题就清楚了,该标题太忽悠人了(因为创建者字段类型为用户或用户组,作为一个只读类型是不让更改的)!但是如果做为新手对创建者栏位不了解的话看到这标题,也许觉得很新鲜,很贴切,并一直埋头苦干想进一切办法把创建者栏位的值改成上传者本人名字。到最后还是以失败告终。为了避免误导,还是以详细截图来说明解决问题的办法来引导新手更好的完成这个烦恼。
首先,用一个只有只读权限的【test03】用户登陆MOSS上传文档(至于如何解决文档上传,新手可参考我前面的文章上传文档至MOSS),可以看到只读权限的用户也拥有了对他自己所上传文档进行编辑,删除的权利。但是创建者就总是为系统管理员(这是因为进行了权限提升之后的结果。。。下面笔者就开始讲解如何干掉这个问题!!!)
用管理员登录(或者拥有可编辑权限的用户登录都OK),打开所在列表,点击【设置】->【文档库设置】
选择【创建栏】
由于系统默认的【创建者】栏位已存在,不允许重复,这里就取名为【作者】,类型选为【单行文本】,要求此栏包含信息选【是】。(记住类型不能再选【用户或用户组】,因为上面也提到了,该类型是只读域,不让赋值。)
点击确定,点击试图【所有文档】,不选中创建者栏位。(依照图例操作)
项目源码:
1
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="FileUploadOnMoss.ascx.cs" Inherits="FileUploadSolution.FileUploadOnMoss" %>
2
<table cellpadding="0" cellspacing="0" style=" border:1px solid; width:250px">
3
<tr>
4
<td style="width:137px; height: 22px;">
5
请选择列表:</td>
6
<td style="border-left:1px solid; height: 22px;">
7
<asp:DropDownList ID="ListTitleNameDrp" runat="server" OnSelectedIndexChanged="ListTitleNameDrp_SelectedIndexChanged"
8
AutoPostBack="True" Width="105px">
9
</asp:DropDownList></td>
10
</tr>
11
<tr>
12
<td style="width:137px;border-top:1px solid;">
13
请选择文件夹:</td>
14
<td style="border-top:1px solid; border-left:1px solid">
15
<asp:DropDownList ID="FolderNameDrp" runat="server" AutoPostBack="True" Width="104px">
16
</asp:DropDownList></td>
17
</tr>
18
<tr style="border-top:1px solid;">
19
<td colspan="2" style="height: 24px;">
20
<asp:FileUpload ID="FileUpload1" runat="server" Width="240px" /></td>
21
</tr>
22
<tr style="border-top:1px solid;">
23
<td colspan="2">
24
<asp:Button ID="UploadButton" runat="server" OnClick="UploadButton_Click" Text="Upload file" /><asp:Label ID="UploadStatusLabel" runat="server" ForeColor="Red"></asp:Label>
25
</td>
26
</tr>
27
</table>
28
<hr />
29
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
1
using System;
2
using System.Data;
3
using System.Configuration;
4
using System.Collections;
5
using System.Web;
6
using System.Web.Security;
7
using System.Web.UI;
8
using System.Web.UI.WebControls;
9
using System.Web.UI.WebControls.WebParts;
10
using System.Web.UI.HtmlControls;
11
using Microsoft.SharePoint;
12
using System.IO;
13
14
namespace FileUploadSolution
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
最后,重新生成项目,用【test03】用户登录,上载文档,就可得到想要的结果了。(虽然是土办法,但是能解决问题还是好办法,希望能给新手一个好的引导。。。。。)