我婉验证服务器上的文件NULL和扩展的样本,
public FileUploadJsonResult UploadSubscriptions(HttpPostedFileBase file)
{
if (file == null)
return new FileUploadJsonResult { Data = new { message = string.Format(" Error uploading file. Choose the file") } };
if(Path.GetExtension(file.FileName).ToLower() != "csv")
return new FileUploadJsonResult { Data = new { message = string.Format("{0} Error uploading file. Invalid extension.", System.IO.Path.GetFileName(file.FileName)) } };
//Doing the thing here...
return new FileUploadJsonResult { Data = new { message = string.Format("{0} uploaded successfully.", System.IO.Path.GetFileName(file.FileName)) } };
}
但在所有的情况下,如果我将在客户端返回FileUploadJsonResult这将是成功的结果,功能success将被执行:
success: function (result) {
//debugger;
$("#ajaxUploadForm").unblock();
$("#ajaxUploadForm").resetForm();
$.growlUI(null, result.message);
},
error: function (xhr, textStatus, errorThrown) {
$("#ajaxUploadForm").unblock();
$("#ajaxUploadForm").resetForm();
$.growlUI(null, 'Error uploading file. Try again later');
$('div.growlUI').css("background", "url(attention48.png) no-repeat 10px 10px");
}
在这种情况下,我可以编辑功能“成功”把条件检查result.message,然后显示growlUI错误,但我会拉特呃生成服务器上的错误来执行客户端功能error 我该怎么做?
UPDATE:
这里是我的 '成功' 功能可按修改来处理错误:
success: function (result) {
//debugger;
$("#ajaxUploadForm").unblock();
$("#ajaxUploadForm").resetForm();
$.growlUI(null, result.message);
if (result.message.indexOf("Error") != -1)
$('div.growlUI').css("background", "url(attention48.png) no-repeat 10px 10px");
},
2011-07-10
Joper