我想測試例如MS Test是否提供默認值等於比較?
int orderId = myRepository.SubmitOrder(orderA);
orderB = myRepository.GetOrder(orderId);
Assert.AreEqual(orderA, orderB); // fail
很顯然,我需要一個在這裏值的比較,但我不希望有提供重載的Equals實現對所有我的班純粹是出於測試的目的(它在應用程序的其他部分不會有任何用處)。
是否有提供的通用方法,只是使用反射檢查每個字段?或者,如果沒有,可以寫我自己的?
編輯:因爲看起來人們有點錯過了觀點。我不想寫自己的比較邏輯。這將需要數百行額外的代碼。我正在尋找像它循環使用反射拉出中的所有值T.
進一步編輯通用
bool ContainSameValues<T>(T t1, T t2)
方法:因爲它不會出現有任何內置支持做這樣的事情,你可以看到我的(失敗)嘗試寫我自己的here
我有太多的課太多的領域爲實現這一目標是可行的。 – fearofawhackplanet 2010-06-06 11:20:59