我希望你們能給我一些好的建議。我正在考慮如何爲C#開發構建一個好的架構。我盡我所能解釋的情況,因爲我不是在英語好:需要一個好的體系結構來驗證規則
1)兩大類:藍色銀行和紅色銀行
2)第三類:遊戲規則驗證
3)藍和紅銀行有幾個字段(值),如賬戶號碼,金額,InvoicePeriod等等......這裏的例子(XML):
Blue銀行
<AccountNumber>Maria 5987593457</AccountNumber>
<Amount>200.00</Amount>
<InvoicePeriod>1</InvoicePeriod>
紅色銀行
<AccountNumber>8529458</AccountNumber>
<Amount>300.00</Amount>
<InvoicePeriod>0</InvoicePeriod>
紅/藍銀行有一些相同的驗證規則,如金額字段,必須是數字。但紅藍銀行有不同的驗證規則 - 在Blue Bank中AccountNumber字段必須是字母數字,而在Red Bank中AccountNumber必須是Numberic否則將失敗。 InvoicePeriod字段在Red Bank中必須默認爲1,而在Blue Bank中必須爲默認值0,否則將失敗。
我的想法是:
我要創建的每個類紅色/藍色銀行進行驗證不同的規則,然後我還可以創建驗證類的爲藍/紅銀行具有相同的規則的規則。
我的代碼在這裏:
Blue銀行類:
- 驗證賬戶號碼必須是alphanumberic否則失敗
- 驗證InvoicePeriod必須是默認爲1,否則失敗
紅色銀行類:
- 驗證賬戶號碼必須是數字小否則失敗
- 驗證InvoicePeriod必須是默認爲0,否則失敗
RulesOfValidation類
- 驗證金額這必須是數字的(紅/藍銀行類別的規則相同)
它是如何與字典<,>與這些類一起工作的?或者使用示例代碼提供更好的建議?
您的幫助將不勝感激。
對於驗證,您可以查看['IDataErrorInfo'](http://msdn.microsoft.com/zh-cn/library/system.componentmodel.idataerrorinfo.aspx)接口,請參閱示例[here]( http://www.asp.net/ mvc/tutorials/older-versions/models-%28data%29/validating-with-the-idataerrorinfo-interface-cs) – polkduran