[英]JSON empty string to null
在JSON中,空字符串通常被解析為null但我有一個包含以下內容的請求:
"StreetValue":"",
在我的課程中,它被反序列化為小數
public decimal StreetValue { get; set; }
但是當我傳遞空字符串時,它被反序列化為0.00M而不是null。 我錯過了什么?
我的意圖是,只有在傳遞“0.00M”時才將其反序列化為0,否則它應該為空。
嘗試將您的屬性標記為可空類型(請注意問號):
public decimal? StreetValue { get; set; }
這是因為string是引用類型,而decimal是值類型,因此不能賦值null; 相反,您的財產將收到default(decimal)
。
正如史蒂夫所說,你可以讓你的財產可以為空:
decimal? Prop { get; set; }
這將允許您根據需要使用null。
嘗試使您的屬性dynamic
這樣您就不需要聲明數據類型而不必擔心null
值。
public dynamic StreetValue { get; set; }
編輯:
在c#6.0中,屬性初始化將可用:
public decimal StreetValue { get; set; } = 0.0;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.