0
我在vb.net中製作一個aspx web服務。我收到一個對象數組參數讓有關投驗證框架擔心,因爲你可以看到Web Services aspx類的屬性不保留默認值
<ScriptMethod(ResponseFormat:=ResponseFormat.Json, XmlSerializeString:=False)> _
<WebMethod(True)> _
Public Function insertarUnidad(ByVal unidades() As unidad) As String
,我有一個公共類定義
Public Class unidad
Public Property id_unidad As String
Public Property nombre As String ="I'm Not Empty"
Public Property placas As String = "N"
END Class
事實證明,當我調試,對象數組沒有placas等屬性的默認值,而是它們有「0」值,這是String數據類型的默認值。但不知何故,在財產nombre它確實有默認值「我不是空的」。
我該如何使用我在屬性中放置的默認值而不會丟失它?
謝謝,抱歉我的英文不好。
UPDATE
的ASPX是在.net4.5,並從Web應用程序,它正在完美,但在一個控制檯應用程序是行不通的,因爲控制檯應用程序是在NET4.0 得到它固定將框架目標從4.5更改爲4.0, 即使控制檯應用程序處於4.5框架中,aspx也能正常工作。
對屬性使用get/set它不像預期的那樣工作,有時該屬性具有屬性的默認值,有時候我沒有收到任何東西而不是「0」,我怎麼知道我什麼時候會收到沒有或「0」在字符串,int,聊天,小數等。 謝謝你的時間。 –
你是說有時候這個方法甚至沒有獲得額外的值?然後您需要創建一個新的重載版本。 [檢查出來](https://stackoverflow.com/questions/3921142/net-overload-webmethods-possible) –
不,當我收到一個數組時,框架會嘗試將數組轉換爲** unidad **類型這意味着類的某些屬性將被數組屬性的值覆蓋,但是,有時我不會接收數組屬性中的所有類屬性,這就是爲什麼我在類屬性中設置默認值,如** nombre **與「我不是空的」。在函數內部,我有一個** unidad **類型的對象數組,其中包含接收到的值以及默認值,以防某些值未收到的情況 –