2014-09-24 61 views
0

我解碼來自設備的響應並獲取不同的值。這些值可能會有所不同:1,2或3種數據類型(double,int或string)和混合。例如。對於命令XI得到1串回來,對於命令易得1串和2個雙回,...確定設置哪些數據值的最佳方法

(簡化)班我現在使用的響應:

public class DecodedResponse 
{ 
    public CommandEnum command; 
    public double ReturnValueD1; 
    public double ReturnValueD2; 
    public double ReturnValueD3; 

    public string ReturnValueS1; 
    public string ReturnValueS2; 
    public string ReturnValueS3; 

    public int ReturnValueI1; 
    public int ReturnValueI2; 
    public int ReturnValueI3; 
} 

到現在爲止,用戶必須知道爲命令X,Y設置了哪些值... 但我對此並不滿意。什麼可能是一個聰明的解決方案告訴用戶哪些值被設置?

回答

2

我瞭解您會針對特定請求得到每個回覆 - 您知道您應該期待什麼回覆。

我會爲每個命令響應創建單獨的類,只有這些字段/屬性對此命令有效。如您所述,使用一個簡化類會導致問題,並且需要許多if語句才能執行正確的命令處理。

+0

感謝您的回答。可能是一個解決方案。 – flexo 2014-09-25 07:12:07

相關問題