相关疑难解决方法(0)

如何从Json序列化中排除属性

我有一个我序列化的DTO类

Json.Serialize(MyClass)
Run Code Online (Sandbox Code Playgroud)

我怎样才能排除它的公共财产?

(它必须是公开的,因为我在其他地方的代码中使用它)

c# json

216
推荐指数
7
解决办法
23万
查看次数

使用json.net使属性反序列化但不序列化

我们有一些配置文件是通过使用Json.net序列化C#对象生成的.

我们希望将序列化类的一个属性从简单的枚举属性迁移到类属性.

一个简单的方法是将旧的enum属性保留在类上,并在我们加载配置时安排Json.net读取此属性,但是当我们下次序列化对象时不要再次保存它.我们将分别从旧枚举中处理生成新类.

是否有任何简单的方法来标记(例如,使用属性)C#对象的属性,以便Json.net仅在序列化时忽略它,但在反序列化时要注意它?

c# json.net

104
推荐指数
5
解决办法
5万
查看次数

如何在ASP.NET MVC中阻止JSON序列化?

在开发ASP.NET MVC应用程序时,我发现了一些我的JsonResult操作引发异常的地方"序列化对象时检测到循环引用".

现在,我正在删除有问题的引用,但理想情况下我只想标记属性,使JSON序列化程序忽略它.

谁能建议我怎么做?

asp.net-mvc json

17
推荐指数
2
解决办法
9469
查看次数

WCF自定义序列化程序

我正在WCF中创建一个返回JSON的Web服务,但是DataContractJsonSerializer正在使用一些循环引用(在这种特殊情况下我无法删除).

相反,我想使用Newtonsoft json库.在WCF中创建自定义序列化程序的最简单方法是什么?

注意:我知道我可以返回一个流,但我不希望操作代码知道序列化的东西.

.net wcf serialization json

7
推荐指数
1
解决办法
8689
查看次数

从Web API获取空的500 http状态代码

我的模型中有一个圆形对象图,但这是不可避免的.

根据本文中给出的建议,我使用了所有成员DataContractAttribute并设置IsReference = true了所有成员.我还提供了DataMemberAttribute我要序列化的所有属性.

为了确保序列化程序不再出现任何问题,我只选择序列化导航属性.

但是,我的catch块中仍然遇到异常.例外的细节如下:

        _innerException: {"Type 
'System.Data.Entity.DynamicProxies.Author_615FB9F8BB22B55A7CA168DA5ED29EC6A0B59F62FD79D1346045351BE2F163A4' with data contract name 
    'Author_615FB9F8BB22B55A7CA168DA5ED29EC6A0B59F62FD79D1346045351BE2F163A4:
http://schemas.datacontract
    .org/2004/07/System.Data.Entity.DynamicProxies' is not expected. 
Consider using a 
    DataContractResolver or add any types not known statically to 
the list of known types - for 
    example, by using the KnownTypeAttribute attribute or by adding them 
to the list of known types 
    passed to DataContractSerializer."}
Run Code Online (Sandbox Code Playgroud)

我可以但不希望:

1)禁用代理创建.我可以删除代理创建只是为了序列化,我可能会这样做.但我也想知道为什么我仍然得到例外以及我能做些什么.

2)删除循环引用.原因:这些类型的引用在Entity Framework生成的模型中非常常见.如果我要在模型中做一个800 - 1000个类的大项目,那么通过删除循环引用来实现它是一个噩梦.

我在下面描述了这个小尖峰解决方案的架构元素.

数据库架构

Id  AuthorName
-------------------------------
1   Charles …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc serialization asp.net-mvc-4 asp.net-web-api

5
推荐指数
1
解决办法
1072
查看次数