示例#1
0
        /// <summary>
        /// 向客户端输出JSON格式的返回值
        /// </summary>
        /// <param name="WebApi_Result">返回的WebApi_Result实体</param>
        public string ResponseJsonResult(WebApi_Result WebApi_Result)
        {
            WebApi_Result.msg = WebApi_Result.msg == null ? Globle_Message : WebApi_Result.msg;
            string strJsonResult = new JavaScriptSerializer().Serialize(WebApi_Result);

            //Response.Write(strJsonResult);
            return(strJsonResult);
        }
示例#2
0
        public string ResponseJsonResult(object objResult = null, object Message = null)
        {
            WebApi_Result result = new WebApi_Result()
            {
                code = objResult == null ? 7 : 0, data = objResult, msg = Message
            };

            return(ResponseJsonResult(result));
        }
示例#3
0
 /// <summary>
 /// 通用的文件上传方法
 /// </summary>
 /// <returns></returns>
 public string SaveFiles()
 {
     return(base.ExecuteActionJsonResult("文件上传", () =>
     {
         WebApi_Result result = new WebApi_Result()
         {
             code = 1
         };
         foreach (string fileName in Request.Files)
         {
             HttpPostedFileBase file = Request.Files[fileName];
             string postFileName = file.FileName;
             string newFileName = DateTime.Now.ToFileTime() + postFileName.Substring(postFileName.LastIndexOf(".")),
             savePath = "~/Content/UserFiles/" + DateTime.Now.ToString("yyyy-MM-dd") + "/";
             if (!string.IsNullOrWhiteSpace(Request["type"]))
             {
                 if (!string.IsNullOrWhiteSpace(Request["curid"]))
                 {
                     newFileName = Request["curid"] + postFileName.Substring(postFileName.LastIndexOf("."));
                 }
                 else
                 {
                     Assembly assembly = Assembly.Load("EMR.Services");
                     var type = assembly.GetType("EMR.Services.SystemSupport." + Request["type"] + "Service");
                     ISerialPrimaryKey iSerPK = (ISerialPrimaryKey)Activator.CreateInstance(type);
                     if (type != null && iSerPK != null)
                     {
                         newFileName = iSerPK.GetPrimaryId() + postFileName.Substring(postFileName.LastIndexOf("."));
                     }
                 }
                 savePath = "~/Content/UserFiles/" + Request["type"] + "/";
             }
             if (!Directory.Exists(Request.MapPath(savePath)))
             {
                 Directory.CreateDirectory(Request.MapPath(savePath));
             }
             file.SaveAs(Request.MapPath(savePath + newFileName));
             result.code = 0;
             result.data = savePath.Replace("~/", "") + newFileName;
         }
         return result;
     }));
 }
示例#4
0
 /// <summary>
 /// 带WebApi_Result实体返回值的业务处理委托。(用于非跨域的AJAX接口调用)
 /// </summary>
 /// <param name="actionName">操作名称</param>
 /// <param name="handler">业务处理委托</param>
 public string ExecuteActionJsonResult(string actionName, UI_Business_Logic_JsonResult_Handler handler)
 {
     try
     {
         var _WebApi_Result = new WebApi_Result()
         {
             code = 13, msg = "登录凭证失效,获取数据失败!"
         };
         if (IsTokenAuthorized)
         {
             _WebApi_Result      = handler();
             _WebApi_Result.msg  = _WebApi_Result.msg == null ? actionName + "成功!" : _WebApi_Result.msg;
             _WebApi_Result.code = _WebApi_Result.code == null ? 0 : _WebApi_Result.code;
         }
         return(ResponseJsonResult(_WebApi_Result));
     }
     catch (Exception err)
     {
         if (err.Message.Contains("ORA-12570"))
         {
             ExecuteActionJsonResult(actionName, handler);
         }
         string strErrorContent = actionName + "失败!-------" + err.Message;
         if (string.IsNullOrWhiteSpace(Request["token"].GetUserToken().UserId))
         {
             strErrorContent += "----------用户ID:" + Request["token"].GetUserToken().UserId;
         }
         FileLog.AddErrorLog(strErrorContent);
         Globle_Message = strErrorContent;
         return(ResponseJsonResult(new WebApi_Result()
         {
             code = 6
         }));
     }
     finally
     {
         //Response.End();//Response.End必须放在finally里面执行,否则会报“正在中止线程”的错误 http://www.cnblogs.com/jintianhu/archive/2011/02/16/1952833.html
     }
 }