我想比較看起來像這樣的循環通過包含變量
public class Order
{
public string KundNummer, KundNamn, ErReferens, VarReferens, KontraktsNummer, Betvillk, Levvillk, Levsatt, Speditor,
Resenh, Projekt, OrderDatum, LeveransDatum, ErtOrdernr, LagerbokfDatum, KundPostAdr, KundPostAdr2, KundGLN, KundPostnr,
KundOrt, KundLandKod, KundLand, KundVATnr, KundDistrikt, KundSaljare, KundText1, KundText2, KundText3, KundSprak,
KundValuta, KundRabattAvtal, KundRabattAvtalBenamning, KundPrislista, KundPrislistaBenamning, KundALnamn, KundALpostAdr, KundALpostAdr2, KundALGLN, KundALpostnr, KundALort,
KundALlandKod, KundALland;
public double OrderNummer, Fakturarabatt, Frakt, Expavg, Brutto, Netto, ExklMoms, Totalt, Moms, Avrundn, KundValutaKurs, KundValutaEnhet;
public int EUPeriodSamman, InklMoms, EjKlar, Levererad, Malukerad, BestallningSkapad, Ordererk,
Plocklista, Foljesedel, ExtraOrderdokument, Restorder, Faktura, KundSparaText, KundExport, KundRantefakturering, KundKravbrev,
KundKravavgift, KundRestnoteraEj, KundSamlingsfakturera;
}
我想比較這類記錄它在我的數據庫,改變字段的兩個對象兩大類一類。
public string OrderUppdateraOrder(Order order)
{
Order OrderToCompare = new Order();
OrderToCompare = OrderVisaOrderInformation(order.OrderNummer);
//then the code goes on to make the changes to the database from the class order
//while OrdertoComapre still have the values from before this function was called
}
所以是有可能遍歷這些類和它們進行比較或做我有一個如果寫在我的班級每一個變量? :)
或者將其轉換爲列表?我不知道? :P
謝謝你的答案
這可能會幫助你:http://stackoverflow.com/questions/6240385/can-i-use-reflection-to-get-an-existing-variable-by-providing-its-name 但是,這是不好的做法。 – looper
您可以隨時使用反射並將實例上的每個屬性與其他屬性進行比較。但取決於您使用的是什麼ORM,您可能已經建立了對發現已更改的所有內容的支持。要使用refleciton檢查我的博客文章:http://blog.filipekberg.se/2011/10/08/exploring-reflection-finding-a-value-in-any-of-the-objects-properties/ *請記住,雖然使用反射可以導致性能penelities!* –
我的上帝......是否有任何可能性您的這個類進入較小的組件類......而是一個規範化的形式...... :) – bonCodigo