public JsonResult Atom(string url, string callback) { if (url == null) { return Json(null, JsonRequestBehavior.AllowGet); } IEnumerable<XElement> rootElements = GetFeed(url).Root.Elements(); IEnumerable<XElement> entryElements = rootElements.Where(e => e.Name.LocalName == "entry"); var entries = entryElements.Select(e => { IEnumerable<XElement> entryDetails = e.Elements(); return new { id = (string)getElement(entryDetails, "id"), title = (string)getElement(entryDetails, "title"), link = (string)(getElement(entryDetails, "link").Attributes().FirstOrDefault(a => a.Name.LocalName == "href")), published = (DateTime)getElement(entryDetails, "published"), updated = (DateTime)getElement(entryDetails, "updated"), content = (string)getElement(entryDetails, "content") }; }); JsonpResult result = new JsonpResult(new { title = (string)getElement(rootElements, "title"), updated = (DateTime)getElement(rootElements, "updated"), entries = entries }, callback); result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; return result; }
public void Ctor_should_set_Data_property_if_data_parameter_has_a_correct_value() { var data = "101"; var result = new JsonpResult(data); Assert.AreEqual(data, result.Data); }
/// <summary> /// Handle returning the correct Type based on the template parameter. If the type is ot Json, Jsonp, or XML, we'll handle /// it with the corresponding result type, Otherwise, return with a cast. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="obj"></param> /// <returns></returns> public static T GetReturnObject <T>(object obj) { // return standard JsonResult if (typeof(T) == typeof(JsonResult)) { object result = new JsonResult(); ((JsonResult)result).JsonRequestBehavior = JsonRequestBehavior.AllowGet; ((JsonResult)result).Data = obj; return((T)result); } // return JsonpResult (assign the data here and we'll handle the callback wrapping in the serializer) else if (typeof(T) == typeof(JsonpResult)) { object result = new JsonpResult(); ((JsonpResult)result).Data = obj; return((T)result); } // return XmlResult (assign the data here and we'll handle the rest in the serializer) else if (typeof(T) == typeof(XmlResult)) { object result = new XmlResult(); ((XmlResult)result).Data = obj; return((T)result); } // otherwise, let's cast and return it else { return((T)obj); } }
protected override void OnException(ExceptionContext filterContext) { string controller = filterContext.RouteData.Values["Controller"].ToString(); string action = filterContext.RouteData.Values["action"].ToString(); var tag = new Dictionary <string, string>(); tag.Add("controller", controller); tag.Add("action", action); if (filterContext.Exception is ArgumentException || filterContext.Exception is HttpRequestValidationException || filterContext.Exception is HttpException || filterContext.Exception is InvalidOperationException) { _logger.Warm("mvc.exception", new Error(filterContext.Exception, filterContext.HttpContext).ToString(), tag); } else { _logger.Error("mvc.exception", new Error(filterContext.Exception, filterContext.HttpContext).ToString(), tag); } filterContext.ExceptionHandled = true; var errResult = new { code = 500, msg = "内部程序异常" }; filterContext.Result = JsonpResult.AsNewtonsoftJson(errResult); base.OnException(filterContext); }
public void ExecuteResult_should_return_json_mimetype() { var writer = new StringWriter(); var responseMock = new Mock <HttpResponseBase>(); responseMock.SetupProperty <string>(x => x.ContentType); responseMock.SetupGet(x => x.Output).Returns(writer); var requestMock = new Mock <HttpRequestBase>(); requestMock.SetupGet(x => x["callback"]).Returns("fake"); var httpContextMock = new Mock <HttpContextBase>(); httpContextMock.SetupGet(x => x.Request).Returns(requestMock.Object); httpContextMock.SetupGet(x => x.Response).Returns(responseMock.Object); var controllerContextMock = new Mock <ControllerContext>(); controllerContextMock.SetupGet(x => x.HttpContext).Returns(httpContextMock.Object); var data = "101"; var result = new JsonpResult(data); result.ExecuteResult(controllerContextMock.Object); Assert.AreEqual <string>("application/json", controllerContextMock.Object.HttpContext.Response.ContentType); }
public JsonResult Rss(string url, string callback) { if (url == null) { return(Json(null, JsonRequestBehavior.AllowGet)); } IEnumerable <XElement> rootElements = getElement(GetFeed(url).Root.Elements(), "channel").Elements(); IEnumerable <XElement> entryElements = rootElements.Where(e => e.Name.LocalName == "item"); var entries = entryElements.Select(e => { IEnumerable <XElement> entryDetails = e.Elements(); return(new { guid = (string)getElement(entryDetails, "guid"), title = (string)getElement(entryDetails, "title"), link = (string)(getElement(entryDetails, "link").Attributes().FirstOrDefault(a => a.Name.LocalName == "href")), pubDate = (DateTime)getElement(entryDetails, "pubDate"), description = (string)getElement(entryDetails, "description") }); }); JsonpResult result = new JsonpResult(new { title = (string)getElement(rootElements, "title"), description = (string)getElement(rootElements, "description"), lastBuildDate = (DateTime)getElement(rootElements, "lastBuildDate"), entries = entries }, callback); result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; return(result); }
public JsonResult Atom(string url, string callback) { if (url == null) { return(Json(null, JsonRequestBehavior.AllowGet)); } IEnumerable <XElement> rootElements = GetFeed(url).Root.Elements(); IEnumerable <XElement> entryElements = rootElements.Where(e => e.Name.LocalName == "entry"); var entries = entryElements.Select(e => { IEnumerable <XElement> entryDetails = e.Elements(); return(new { id = (string)getElement(entryDetails, "id"), title = (string)getElement(entryDetails, "title"), link = (string)(getElement(entryDetails, "link").Attributes().FirstOrDefault(a => a.Name.LocalName == "href")), published = (DateTime)getElement(entryDetails, "published"), updated = (DateTime)getElement(entryDetails, "updated"), content = (string)getElement(entryDetails, "content") }); }); JsonpResult result = new JsonpResult(new { title = (string)getElement(rootElements, "title"), updated = (DateTime)getElement(rootElements, "updated"), entries = entries }, callback); result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; return(result); }
public void NullDataShouldNotThrowError() { var controllerContext = new ControllerContext { HttpContext = _httpContext.Object }; var result = new JsonpResult(null); result.ExecuteResult(controllerContext); // Passes if no exception is thrown }
public JsonResult Rss(string url, string callback) { if (url == null) { return Json(null, JsonRequestBehavior.AllowGet); } IEnumerable<XElement> rootElements = getElement(GetFeed(url).Root.Elements(), "channel").Elements(); IEnumerable<XElement> entryElements = rootElements.Where(e => e.Name.LocalName == "item"); var entries = entryElements.Select(e => { IEnumerable<XElement> entryDetails = e.Elements(); return new { guid = (string)getElement(entryDetails, "guid"), title = (string)getElement(entryDetails, "title"), link = (string)(getElement(entryDetails, "link").Attributes().FirstOrDefault(a => a.Name.LocalName == "href")), pubDate = (DateTime)getElement(entryDetails, "pubDate"), description = (string)getElement(entryDetails, "description") }; }); JsonpResult result = new JsonpResult(new { title = (string)getElement(rootElements, "title"), description = (string)getElement(rootElements, "description"), lastBuildDate = (DateTime)getElement(rootElements, "lastBuildDate"), entries = entries }, callback); result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; return result; }
public JsonpResult GetGroupListJsonp(string callback) { List <GroupEntity> groupList = new List <GroupEntity>(); groupList.Add(new GroupEntity() { ID = 1, Name = "坦克评审组1" }); groupList.Add(new GroupEntity() { ID = 2, Name = "坦克评审组2" }); groupList.Add(new GroupEntity() { ID = 3, Name = "坦克评审组3", }); JsonpResult reuslt = new JsonpResult(groupList); return(reuslt); //return Json(json, JsonRequestBehavior.AllowGet); }
public static JsonpResult Jsonp(this Controller controller, object data) { JsonpResult result = new JsonpResult(); result.Data = data; //result.ExecuteResult(controller.ControllerContext); <-- Remove this !!! return(result); }
/// <summary> /// /// </summary> /// <param name="controller"></param> /// <param name="data"></param> /// <returns></returns> public static JsonpResult Jsonp(this Controller controller, object data) { JsonpResult result = new JsonpResult() { Data = data, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; return(result); }
private JsonpResult Error(ResultCode resultCode, RiskPolicyEnum policyEnum, RiskExtraInfo ext = null) { var result = new RiskTestResponse(); result.Code = resultCode; result.risk = new RiskInfo { policy = (int)policyEnum, extra = ext, }; return(JsonpResult.AsCamelCaseJson(result)); }
/// <summary> /// 更新妈妈秀状态审核 /// </summary> /// <param name="userId">用户ID</param> /// <param name="showId">麻麻秀ID</param> /// <param name="state">状态</param> /// <param name="originalState">原始状态</param> /// <returns></returns> public JsonpResult UpdateCheck(int userId, int showId, int state, int originalState) { var result = new JsonpResult(); try { result.Data = MotherShowClient.Instance.UpdateCheck(userId, showId, state, originalState); } catch (Exception ex) { } return(result); }
public void ExecuteResult_should_throw_ArgumentNullException_if_context_parameter_is_null() { var data = "101"; var result = new JsonpResult(data); Executing.This(() => result.ExecuteResult(null)) .Should() .Throw <ArgumentNullException>() .And .ValueOf .ParamName .Should() .Be .EqualTo("context"); }
public JsonpResult ParseJsonp(object data, int depth = 1 , ReferenceLoopHandling referenceLoopHandling = ReferenceLoopHandling.Ignore) { var result = new JsonpResult { Data = data, JsonRequestBehavior = System.Web.Mvc.JsonRequestBehavior.AllowGet, Settings = { ReferenceLoopHandling = referenceLoopHandling, MaxDepth = depth// product, productdetail, author } }; return(result); }
public JsonpResult Index(string authcode) { // Open widgets js and html var fileStream = new FileStream(Server.MapPath("~/Content/Widget/htmlwidget1.html"), FileMode.Open, FileAccess.Read, FileShare.Read); var textReader = new StreamReader(fileStream); // Fill authcode variable in generated client js with requested authcode. For now user id used as authcode. var content = Regex.Replace(textReader.ReadToEnd(), "(stringtoreplace)", authcode); fileStream.Close(); textReader.Close(); JsonpResult result = new JsonpResult(content); // following piece of code is more elequant, however could be thread unsafe and probably may lock file from concurrent access // var fileContents = Regex.Replace(System.IO.File.ReadAllText(Server.MapPath("~/Content/Widget/htmlwidget1.html")), "(stringtoreplace)", authcode); //JsonpResult result = new JsonpResult(fileContents); return(result); }
public ActionResult BasketTest() { /* OriginCheckResult result = new OriginCheckResult(); result.Result.RetCode = 0; result.Result.RetMessage = "성공"; string orderIdx = Request.QueryString["orderIdx"]; string[] orderIdxList = orderIdx.Split(new char[] { ',' }); foreach (string idx in orderIdxList) { result.CheckResult.Add(new BasketValidCheck { OrderIdx = Convert.ToInt32(idx), RetCode = 0, RetMessage = "성공" }); } */ CartBiz biz = new CartBiz(); ValidCheckResultT result = new ValidCheckResultT(); result.Result = new GEPBaseResultT(); BasketParamT basket = new BasketParamT(); string orderIdx = Request.QueryString["orderIdx"]; string pid = Request.QueryString["pId"]; string cloneIds = Request.QueryString["cloneIds"]; basket.Pbid = pid; basket.OrderIdxs = orderIdx; basket.GoodsCodes = cloneIds; result = biz.OriginVerification(basket); JsonpResult jsonResult = new JsonpResult { Data = new { Result = result.Result, Data = result.ValidCheckList }, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; jsonResult.ContentEncoding = Encoding.GetEncoding("euc-kr"); return jsonResult; }
protected override JsonResult Json(object data, string contentType, System.Text.Encoding contentEncoding, JsonRequestBehavior behavior) { JsonResult r = null; if (APIContext.Current.IsJsonp) { r = new JsonpResult(); r.Data = data; r.JsonRequestBehavior = behavior; r.ContentEncoding = contentEncoding; r.ContentType = contentType; } else { r = new JsonResult(); r.Data = data; r.JsonRequestBehavior = behavior; r.ContentEncoding = contentEncoding; r.ContentType = contentType; } return(r); }
public JsonpResult Hash() { JsonpResult result = new JsonpResult(new { hash = cSession.Current.hash }); return result; }
public static JsonpResult Jsonp(this Controller controller, object data) { JsonpResult result = new JsonpResult(); result.Data = data; return result; }
/// <summary> /// Returns a link as JSONP /// </summary> /// <param name="link"></param> /// <param name="message"></param> /// <returns></returns> private JsonpResult GetLinkAsJSONP(Link link, string message) { JsonpResult result = new JsonpResult(); if (link != null) { var data = new { Success = true, ShortURL = this.BaseURL + link.ShortCode, AccessCount = link.AccessCount, OriginalURL = link.DestinationUrl }; return new JsonpResult(data); } else { var data = new { Success = false, Message = message }; return new JsonpResult(data); } }
public JsonpResult GiveJSONPArray(int num) { List<int> listOfInt = new List<int>(); for (var x = 0; x < num; x++) { listOfInt.Add(x); } JsonpResult result = new JsonpResult(listOfInt); return result; }