Tag: json

是否可以在SignalR集线器方法中返回预编码的JSON字符串?

在MVC项目中,我在类似于此的集线器上有一个方法: public string Foo() { return DoCrazyThingThatReturnsJson(); } 不幸的是,SignalR(或其他东西)接受编码的JSON字符串并愉快地对其进行编码,然后将其返回,因此浏览器就像LOLWTF。 有没有办法跳过第二次编码?

处理在C#中包含不同类型的JSON字段

我必须阅读一个JSON文档,它有一个可以包含不同类型的字段。 例如,可以是long或整数数组。 我知道我需要使用自定义反序列化器,但不确定如何。 在下面的示例中,xx字段有时是long,否则是一个int数组。 任何有关如何处理此问题的帮助表示赞赏。 static void JsonTest() { const string json = @” { ‘Code’: ‘XYZ’, ‘Response’: { ‘Type’ : ‘S’, ‘Docs’: [ { ‘id’ : ‘test1’, ‘xx’ : 1 }, { ‘id’ : ‘test2’, ‘xx’ : [1, 2, 4, 8] }, ] } }”; A a; try { a = JsonConvert.DeserializeObject(json); } catch( […]

.NET WebApi如何防止“$ ref”:JSON的“x”输出

我正在使用Web Api和Entity Framework,我有一个名为Gift的控制器,当客户端GET是API我通过使用entity framework从DB获取所有礼物并将其作为JSON返回 这是我的控制器function public List Get() { return GiftService.GetIncludeAndActive(); } 这是服务function public List GetIncludeAndActive() { return dbSet.Include(“GiftCategory”).Where(x => x.Status == Model.Enums.GiftStatus.Active).OrderByDescending(x => x.Featured).ThenBy(x => x.Price).ToList(); } 这是礼品模特 public class Gift { public Gift() { this.CartItems = new List(); } public int ID { get; set; } public string GiftName { get; set; } […]

解析在.net中以JSONforms返回的日期?

嗨,我收到来自API的响应作为JSON并将其加载到我的应用程序中。 除了发布特定项目的日期之外,一切都很好。 日期返回为我之前从未使用过的数字: ‘date_created’ : 1279643054 我尝试使用普通的DateTime.Parse()没有运气。 有谁知道如何解析这个,或者如果这个格式的名称是什么,所以我可以做进一步的研究? 谢谢。

asp.net mvc核心如何返回Json查询

首先,我知道如何通过执行此操作返回Json查询 public JsonResult streams() { using (var conn = new NpgsqlConnection(Connectionstring)) { conn.Open(); var credentials = conn.Query(“select id,name from streams”).ToList(); ViewData[“Message”] = “Your application description page.”; conn.Close(); return Json(credentials); } } 上面的代码从数据库中为我返回Json,但是现在我实际上是通过将查询更改为此来从SQL代码返回Json var credentials = conn.Query(“select SELECT array_to_json(array_agg(t)) from (select id,name from streams) t”).ToList(); 新的查询正常工作,但它在Controller中返回null,因为我现在这样 public JsonResult streams() { using (var conn = new NpgsqlConnection(Connectionstring)) […]

反序列化json数组以列出wp7

我需要从json中的子数组中获取数据,但是它没有转换成列表,下面是我的json字符串 {“responseCode”:“0”,“responseObject”:{“TotalRecords”:25,“TotalDisplayRecords”:25,“aaData”:[{“InvoiceId”:16573,“somedata ..},”appCrmAccount(某些标题,总共100个这样的标题)金额“:40086.00,”invoiceNumber“:”12,accountName“:”dfgAsfsadf“,”dueDateStr“:”04/24/2012“(要进入列表的数据) 这是我的代码: var djson = new DataContractJsonSerializer(typeof(dataList)); var stream = new MemoryStream(Encoding.UTF8.GetBytes(json)); dataList result = (dataList)djson.ReadObject(stream);//not getting execute 请帮助..先谢谢。

如何使用System.Runtime.Serialization.Json解析此String?

你能帮我看看如何使用System.Runtime.Serialization.Json ( 而不是Json.NET )来获取这个tring to array中每本书的信息: { “books”: [ {“name”:”Book 1″,”orig”:”Author 1″,”date”:2009,”lang”:”en”}, {“name”:”Book 2″,”orig”:”Author 2″,”date”:2012,”lang”:”fr”} ], “src”:”lib”, “id”:212 }

ASP.NET MVC在发送状态为500的响应时显示错误页面

我在服务器中有以下操作: [HttpPost] public JsonResult SearchContracts(SearchViewModel vm) { List errors; if (IsValid(vm, out errors)) { return Json(service.Search(vm), JsonRequestBehavior.AllowGet); } else { HttpContext.Response.StatusCode = 500; return Json(new { Errors = errors }, JsonRequestBehavior.AllowGet); } } 在本地,它很棒。 当请求无效时,它返回带有错误的JSON,并且响应的HTTP状态代码为500 。 部署后,IIS将返回我这个着名的错误页面 ,而不是所描述的JSON。 这是web.config ,其中包含customErrors部分的详细信息: 我试过把它变成On但是都没有用。 我应该在哪里更改以停止接收那个丑陋的错误页面而不是我的美丽JSON? 编辑: 我将状态代码更改为400 ,现在我将文本Bad Request作为响应,而不是JSON:

WCF Rest客户端发送不正确的内容类型

我正在尝试使用wcf客户端向使用json的ColdFusion 9服务发送请求。 但是,请求的内容类型是针对xml的。 这是服务合同。 正如您所看到的,我们使用了json的RequestFormat。 [ServiceContract(Name = “ServiceAgreementRequestService”, Namespace = NetworkNamespaces.ServiceNamespace)] public interface IServiceAgreementRequestService { [OperationContract] [FaultContract(typeof(RequestFault))] [WebInvoke(UriTemplate = “?method=CreateUser”, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)] CreateUserResponse CreateUser(CreateUserRequest request); } 我也尝试在OutGoing请求上设置Request.ContentType,这也不起作用。 using (var context = this.GetServiceClient(clientId)) { WebOperationContext.Current.OutgoingRequest.ContentType = “application/json; charset=UTF-8”; var request = new CreateUserRequest(user.Id, user.Person.FirstName, user.Person.LastName); var response = context.Channel.CreateUser(request); } 这是发送的请求 POST […]

NewtonSoft Json DeserializeObject空Guid字段

我正在使用带有HTML CSS jQuery KnockoutJs前端的ASP.NET MVC C#。 我的HTML页面上有一个模态联系表单。 我的想法是,如果我创建一个新的联系人,模式窗体会弹出空白值,包括一个空白隐藏的id字段。 如果我编辑了一个联系人,那么模式表单会弹出填充的字段,包括隐藏的id字段。 在我的控制器中,我打算这样做: public JsonResult Contact(string values) { var contact = JsonConvert.DeserializeObject(values); if (contact.Id.Equals(Guid.Empty)) { // create a new contact in the database } else { // update an existing one } } 但是,我收到一条错误消息,指出can’t convert “” to type Guid 你是如何解决这个问题的NewtonSoft Json,我看过Custom JsonConverter ,它似乎沿着正确的路线,但是我不知道该去哪里。