在作項目web的MVC中,會用到返回值的問題,咱們通常使用AjaxResult的返回值,根據本身的須要進行自定義,以下參考:web
using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace ToolsUse.CommonHelper { public class AjaxResult { /// <summary> /// 是否產生錯誤 /// </summary> public bool IsError { get; set; } /// <summary> /// 錯誤信息,或者成功信息 /// </summary> public string Message { get; set; } /// <summary> /// 成功可能時返回的數據 /// </summary> public object Data { get; set; } #region Error public static AjaxResult Error() { return new AjaxResult { IsError = true }; } public static AjaxResult Error(string message) { return new AjaxResult { IsError = true, Message = message }; } public static AjaxResult Error(object data, string message) { return new AjaxResult { IsError = true, Message = message, Data = data }; } #endregion #region Success public static AjaxResult Success() { return new AjaxResult { IsError = false }; } public static AjaxResult Success(string message) { return new AjaxResult { IsError = false, Message = message }; } public static AjaxResult Success(object data) { return new AjaxResult { IsError = false, Data = data }; } public static AjaxResult Success(object data, string message) { return new AjaxResult { IsError = false, Data = data, Message = message }; } #endregion /// <summary> /// 返回當前對象JSON字符串 /// </summary> /// <returns></returns> public override string ToString() { return JSON.FormatString(this); } } }
另外,你能夠修改返回錯誤的時候,對應的Exception對象。服務器
使用就簡單了,以下調用:ide
public class TestController : Controller { // GET: UpYunTest public ActionResult Index() { return View(); } public ActionResult Test1() { return View(); } public JsonResult UploadTest() { //文件檢測 if (Request.Files.Count == 0) { return Json(AjaxResult.Error("無要上傳的文件")); } var file = Request.Files[0]; if (file == null) { return Json(AjaxResult.Error("無要上傳的文件")); } if (file.ContentLength > 2 * 1024 * 1024) { return Json(AjaxResult.Error("文件過大")); } var extensionName = Path.GetExtension(file.FileName); if (!CloudFileHelper.ImageExtensions.Contains(extensionName)) { return Json(AjaxResult.Error("請上傳圖片格式的文件")); } var bucketType = UpyunHelper.GetFileType(extensionName+ "_comprehensive ");//設置只傳到綜合的服務器kwan-upyun中 var fileName = UpyunHelper.BuildFileName(extensionName); var filePath = UpyunHelper.BuildFilePath(1); var url=UpyunHelper.UpLoad(file.InputStream,bucketType,filePath,fileName); var rtnUrl = UpyunHelper.ProcessUrl(url,bucketType); return Json(AjaxResult.Success(rtnUrl, "上傳成功")); } }