SerializeObject adds unicode c#

本文关键字:unicode adds SerializeObject | 更新日期: 2023-09-27 17:58:01

我有一个WCF服务,它以JSON格式返回数据库表。SeralizeObject将unicode添加到我的httpresponse中,我如何删除它?

代码:

using (var db = new newTestDBContext())
        {
          var query = from b in db.Roads
                       orderby b.roadID
                     select b;
          Road rr = query.First();
          var serializerSettings = new JsonSerializerSettings { PreserveReferencesHandling = PreserveReferencesHandling.Objects };
          return JsonConvert.SerializeObject(rr, Formatting.Indented, serializerSettings);

回复:

"{'u000d'u000a  '"$id'": '"1'",'u000d'u000a  '"roadparts'": ['u000d'u000a    {'u000d'u000a      '"$id'": '"2'",'u000d'u000a      '"Road'": {'u000d'u000a       

SerializeObject adds unicode c#

ResponseFormat=WebMessageFormat.Json

这将对带注释方法的返回值进行JSON编码。如果返回值已经是一个JSON字符串,那么您将进行两次JSON编码。。首先是CCD_ 1对象,然后是前者产生的JSON字符串。

因此,只需返回Road对象,并让WebMessageFormat.json处理json编码。

删除json调用中的Formatting.Iindentated。这应该可以解决问题。