C# DataSet DataRowVersion.Proposed kastar exception

Permalänk
Medlem

C# DataSet DataRowVersion.Proposed kastar exception

Har en ganska stor windows app som har ett fett dataset bundet till en massa kontroller. Appen har en autorefresh som hämtar nya värden från en databas. I koden skulle jag behöva undersöka om användaren har uppdaterat ett värde och isf ska inte den biten uppdateras när autorefreshen körs.. Har kollat runt men inte hittat ett snyggt sätt att göra det på.

Just nu ser koden ut ungefär såhär:

public void UpdateFromRefresh(Update update) { MyBigDS.tbl_statusRow row = EventData.tbl_statusRow.FindByeventId(update.eventId); int proposedStatusId; try { proposedStatusId = (int)row["StatusID", DataRowVersion.Proposed]; } catch (Exception) { proposedStatusId = (int)row["StatusID", DataRowVersion.Current]; } if ((int)row["StatusID", DataRowVersion.Current] == proposedStatusId) { row.statusID = update.StatusId; row.AcceptChanges(); } }

I nästan alla fall kommer det blir ett exception när jag hämtar ut DataRowVersion.Proposed-värdet eftersom den bara sätts när användaren verkligen har uppdaterat nånting (i det här fallet är det en dropdown box som är bunden till datasettet). Men finns det verkligen inget snyggare sätt att göra det på?? Blir väldigt tjockt och onödigt mkt overhead och göra som i min nuvarande kod..

Visa signatur

AK47s for everyone! - Angry mob
Since NaN /= NaN, I think, we should decipher 'NaN' as 'Not a NaN' - Miguel Mitrofanov
(Varför är människan så benägen att tro på Gud?) Antagligen har det lönat sig och evolutionen har drivit fram sådana hjärnor. - Anon