回答
你可能会使用ItemAdding
。在ItemAdding
事件方法只是通过错误消息比前检查成功上传到Library.if unvalid文档的文档的扩展
你的代码是这样的:
protected string[] ValidExtensions = new string[] { "png", "jpeg", "gif"};
public override void ItemAdding(SPItemEventProperties properties)
{
string strFileExtension = Path.GetExtension(properties.AfterUrl);
bool isValidExtension = false;
string strValidFileTypes = string.Empty;
using (SPWeb web = properties.OpenWeb())
{
foreach (string strValidExt in ValidExtensions)
{
if (strFileExtension.ToLower().EndsWith(strValidExt.ToLower()))
{
isValidExtension = true;
}
strValidFileTypes += (string.IsNullOrEmpty(strValidFileTypes) ? "" : ", ") + strValidExt;
}
// Here i am going to check is this validate or not if not than redirect to the
//Error Message Page.
if (!isValidExtension)
{
properties.Status = SPEventReceiverStatus.CancelWithRedirectUrl;
properties.RedirectUrl = properties.WebUrl + "/_layouts/error.aspx?ErrorText=" + "Only " + strValidFileTypes + " extenstions are allowed";
}
}
}
你可以使用SPItemEventReceiver您的库并添加您的逻辑为ItemUpdating()和ItemAdding()方法。
很抱歉,但在项目中添加事件接收器,仍然没有上传的图像,会给我空例外 – qablan89 2012-04-07 12:47:56
任何一个忠告? – qablan89 2012-04-07 16:32:43
@ qablan89,如果我的理解正确,您需要在上传前仔细检查扩展程序。因此,作为ItemAdding()方法参数的SPItemEventProperties对象的“属性”包含属性BeforeUrl和AfterUrl。这些属性包含用户上传的文件的名称。 – Tannheuser 2012-04-08 08:09:10
你可以尝试创建一个自定义列表模板,在那里替换默认的NewForm.aspx
和EditForm.aspx
页面。这些custom form templates不需要包含与默认图片库模板中相同的用户控件和按钮。您可以创建带有丰富用户界面的Silverlight Web部件来上传图片,例如你想要区分的越多,代码越多,你必须写...
我能想到的一个OOTB解决方案将是一个工作流程,你可以强制每个新的图片运行,但它会是一个过度的对于最终用户...
当然,如果您能够通过使用ItemAdding中的元数据进行验证(如其他人所建议的那样),那将会是一个非常节省时间的方法。
--- Ferda
- 1. 自定义文件上传
- 2. 自定义asp.net文件上传控件
- 3. 定义自定义功能
- 4. 文件上传功能
- 5. 文件上传Rails自定义
- 6. 自定义文件上传按钮
- 7. 鹡鸰自定义文件上传
- 8. 自定义文件过滤器上传
- 9. cforms上传的自定义文件名
- 10. 使用type =“形象”自定义文件上传功能标签在Django
- 11. 将上传文件功能添加到Shopify的自定义页面
- 12. 自定义功能与特定文字
- 13. 自定义UISlider上的辅助功能
- 14. WPF功能区控件自定义RibbonMenuItem
- 15. wp7:自定义控件的功能
- 16. Adobe CQ5 - 自定义邮件功能
- 17. 自定义功能区CSS
- 18. 自定义窗口功能
- 19. 自定义WPF功能区
- 20. 编写自定义功能
- 21. e.stopPropagation();在自定义功能
- 22. as3自定义功能
- 23. kendo reupload自定义按钮点击事件一旦文件上传成功
- 24. 通过自定义控件的属性定义传递渲染功能
- 25. 在文件上传中选择自定义文件
- 26. 如何将文件上传到自定义文件路径
- 27. 自定义Wordpress上传文件夹的文件夹权限
- 28. 文件上传功能 - ASP.NET MVC/AJAX
- 29. 功能测试和文件上传?
- 30. 带功能Webflux的文件上传
Thnx亲爱的everthing是好的....非常感谢你:) – qablan89 2012-04-09 14:00:40
你的欢迎:) – Jigs 2012-04-09 14:02:27