如何在json字符串中发送隐藏参数?

ThunD3eR

我有一个控制台应用程序,可以从不同的API获取数据。

接收到的数据被映射到一个自定义类。此类稍后被序列化为json字符串。完成此操作后,我将使用urbanShip将其推送到移动应用程序。

我的问题:

我只希望在推送到达应用程序后就可以看到message属性。所有其他属性都应包括在内,但必须将其隐藏。为了使应用程序获取有关具有ID的特定对象的信息,还需要其他属性。

我已经尝试过:我尝试在要显示/隐藏的属性上使用[JsonIgnore][DataMember]注释。但是,这没有用,我想知道我该如何做到这一点?

我的代码:

我当前正在序列化和推送的类:

[DataContract]
public class SubscriberPush
{
    [DataMember]
    public string TrainId { get; set; }
    public string Message { get; set; }
    public string Title { get; set; }
    public string From { get; set; }
    public string To { get; set; }
    public bool LateTrain { get; set; }
    public bool Canceled { get; set; }
}

设置数据:

pushSub.TrainId = trainAnnouncement.AdvertisedTrainIdent;
pushSub.Title = "the train is late";
pushSub.LateTrain = true;
pushSub.Message = "train is " + span.Minutes + " min late";

string json = Parser.ConvertToJson<SubscriberPush>(pushSub);

UrbanAirship.Push(ee.DeviceToken, json);

序列化器:

public static string ConvertToJson<T>(T obj)
{
    var json = new JavaScriptSerializer().Serialize(obj);

    return json.ToString(); 
}

JSON:

{"TrainId":"1036","Message":"train is 8 min late","Title":"the Train is late","From":null,"To":null,"LateTrain":true,"Canceled":false}
昆汀·罗杰(Quentin Roger)

您可以用DataContractJsonSerializerjson.net序列化器(最好)替换您的JavaScriptSerializerconvert

一个使用DataMember / DataContract属性的小例子

http://www.newtonsoft.com/json/help/html/DataContractAndDataMember.htm

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Go中的POST请求中发送JSON字符串

如何在Swift 4中同时在httpBody中发送字符串值和json值

如何在 GitHub 操作中的 json 中发送多行字符串?

在查询字符串中发送 JSON

Rails的活动资源:如何在请求正文中而不是查询字符串中发送post参数?

如何在android中发送字符串作为键盘输出?

如何在android中发送base64字符串?

如何在一台UWP设备中发送跨应用程序字符串?

如何在URL中发送韩文字符串?(使用HTTParty gem的Ruby on Rails)

如何在其他活动中发送从QRcode扫描器读取的字符串

如何在Perl函数中发送和接收字符串,数组和哈希

如何在 SOCKET python 中发送十六进制字符串?

C# HttpClient:如何在 POST 请求中发送查询字符串

如何从非字母或数字的字符串中发送字符到字符串末尾?

我如何在 Windows 通用应用程序 C# 中发布一个 json 字符串以及一些参数

如何在ReactJS react-router中隐藏查询字符串参数

如何在Rust FFI中发布常量字符串?

如何在 Swagger UI 中将字符串数组作为参数发送以进行测试?

如何在Java中将char或int发送到需要字符串作为参数的方法?

在请求正文中而不是在查询字符串中发送参数

是否可以在Android的新导航组件中发送字符串或整数以外的参数

如何在ajax调用中发送参数

如何在Swift中发送POST参数?

如何在 Json 字符串中隐藏没有记录的控件

如何插入作为参数发送的字符串?

如何在 URL 中发送 # 字符

Python使用\创建字符串并在json请求中发送

在HTTP请求中发送JSON字符串时,req.body在express中为空

如何在AS3和Node.js之间发送部分JSON字符串