問題:
c#的wcf服務接口在后台通過自定義對象接收前台參數的時候,前台參數即使不傳int類型的字段值,后台也會默認初始化為0,由於很多表示狀態的int字段都是從0開始的,導致查詢的時候有些不想參與查詢的字段,如果不傳值就會默認只查詢狀態為0的記錄,這是不對的!!!,即便是在構造函數中賦值為-1也沒有用,應該是在接收值的時候被覆蓋掉了,如下圖,困擾了好久!!


解決方法:
網上百度,本來想怎么給未傳值的字段賦一個值,沒做到!后來換了一種思路,如果int字段不默認初始化為0就可以判斷是否傳值了,ok了!如下圖,int類型后面加個“?”表示該字段可為null,在沒有構造函數或者構造函數不作為的情況下int就不會默認為0了!


