我有函数序列化对象。除了当我用特定的对象运行时,它在任何情况下都工作正常。 这是包含任务的类的对象。但我不明白为什么这会成为问题。SerializeObject正在等待永久
在调试模式下,代码只是卡在没有任何错误或任何异常。只要停下来等待永远。 另外要提到的是,这个序列化是在运行任务中调用的,但我也不确定为什么这会成为问题。
我也设置属性[NonSerialized]到所有任务属性,但仍然没有。
[NonSerialized]
private Task<bool> isConnected;
public Task<bool> IsConnected
{
get { return isConnected; }
set { isConnected = value; }
}
这是我的函数:
public static string ToJson(this object obj)
{
try
{
var res = JsonConvert.SerializeObject(obj, Formatting.Indented,
new JsonSerializerSettings
{
ReferenceLoopHandling = ReferenceLoopHandling.Ignore
});
return res;
}
catch
{
return $"Object {obj.ToString()} is not serializable.";
}
}
这是对象我试图序列:
这是如何被调用函数? – DiskJunky
@DiskJunky我假设'string objJsonString = SomeObject.ToJson();'。 – SeM
是的,它是对象上的扩展方法。 – Raskolnikov