2015-10-15 71 views
1

我有一個C#類,我正在轉換爲XML。我有一個驗證問題(我無法找到任何地方如何執行限制)。讓我給你看一個例子:XML屬性驗證的可能性

[System.Xml.Serialization.XmlElementAttribute(ElementName="export_szla_db", DataType = "decimal")] 
    public decimal myDecimal 
    { 
     get 
     { 
      return this.export_szla_dbField; 
     } 
     set 
     { 
      this.export_szla_dbField = value; 
     } 
    } 

我想要做的,就是將這個小數限制到最大10位數,沒有分數。

如何實現這樣的最佳方式是什麼?我應該使用屬性(如果是的話,這是什麼屬性),還是我應該編寫自定義的邏輯來處理驗證?最佳做法是什麼?

爲什麼我需要這樣做的原因,是因爲我收到XSD架構:

<xs:simpleType name="decimal_egesz_tipus"> 
    <xs:annotation> 
     <xs:documentation>Determining Decimal Type. 10 integers and 0 decimal digits can be entered.</xs:documentation> 
    </xs:annotation> 
    <xs:restriction base="xs:decimal"> 
     <xs:totalDigits value="10"/> 
     <xs:fractionDigits value="0"/> 
    </xs:restriction> 
</xs:simpleType> 
+0

限制或回合被欺騙?這不是字符串,這是一個非常奇怪的(罕見的)要求。不要期望得到它的支持。 –

+0

它看起來像一個XML Schema用例。你願意使用這種技術嗎? –

+0

我已更新我的帖子,以便您瞭解我爲什麼需要它 –

回答

0

你可以簡單的解決這個在C#的水平,通過在GET的身體編程/設定值被截斷爲+/- 9999999999

哎呀,我在回答一個2歲的問題,因爲它被編輯13分鐘前:-)