2009-12-29 40 views
1

有没有一种以编程方式确定SharePoint中的文件类型的方法?我想限制正在上传到文档库中的文件的类型。我写了一个EventReceiver,它在ItemAdding上执行以下操作 -以编程方式确定SharePoint中的文件类型

if(!(properties.AfterUrl.Contains(“。docx”)|| properties.AfterUrl.Contains(“。pptx”)|| properties.AfterUrl。包含(“。xlsx”)))

当然有更好的方法来做到这一点?

回答

1

阻止文件类型只能在服务器场级别(通过中央管理员)进行。

如果您希望能够在文档库级别进行管理,则检查文件扩展名的事件处理程序是唯一的选择。

所以不,没有更好的方法来做到这一点。

+0

没有比这更好的方法来检查除了检查扩展上的文件类型文件? – esp 2009-12-30 01:32:58

+1

不,目前还没有开启ItemAdding。由于它是在创建实际项目之前执行的(SPListItem只是它的核心,不过是一条SQL记录),所以没有SPFile对象可以使用(就像创建FileInfo对象一样)。最后,这不是大多数系统如何限制文件上传吗?通过chcking它的扩展? – Colin 2009-12-30 01:49:02

1

如果您确实对限制某些类型的文件感兴趣,我会建议超越文件的扩展名或MIME类型,并检查文件内容以确定其性质,这是IE和Firefox所做的。

(顺便说一句,有一个IE浏览器API的名字我不记得现在,让你的文件的MIME类型检查之后。)

相关问题