【发布时间】:2013-06-17 14:50:51
【问题描述】:
我遇到的问题与此处https://stackoverflow.com/questions/12565464/javascriptserializer-deserialize-an-identifier-with-space 描述的完全相同,但没有人回答我会再试一次,
别人创建的API,形式为
[{"AdvertId":"1234567","Price Original":"500","Sold":"False"}]
应用程序已经使用 JavascriptSerilalization 来填充许多其他 API 上的命名属性,所以真的不想改变它,但是我保存这些数据的类不能有一个带有空格的属性“原始价格”,并且这个不能删除或替换为 _ 或其他东西。有没有可以调用的方法将字符串翻译成不同的东西?
是否有任何解决方案或者我必须使用 JSON.net 来反序列化,是我阅读的 DataContracts 上的一些内容,这些可能会有所帮助,但我似乎无法找到如何获得这个为我的代码工作,如果不调查这条路径,我很高兴知道这是可能的。
在此先感谢
示例类
Class Sample
{
public int AdvertId { get; set; }
public string Price Original { get; set; }
public bool Sold { get; set; }
}
【问题讨论】:
-
您是否尝试过在 .NET 中创建此类? AFAIK 像这样的类的解决方案根本无法编译。
-
一种解决方案是编写自己的 JavascriptConverterClass msdn.microsoft.com/en-us/library/… 并在反序列化期间通过删除或替换为下划线来处理空间场景。
-
您好 Alex 是的,我知道该类将无法编译,这只是突出显示问题的“原始价格”属性的示例......好吧,看看 evasilchenko ty :)
标签: c# .net json api javascriptserializer