I have an application written using the M-V-VM approach.
The data access is done in the Model. If a fatal error occurs here (for example, the connection to the data sour
You could queue an exception-throwing action on the dispatcher.
// This property is connected to the window using databinding
public string ExceptionThrowingBoundedField
{
get
{
try
{
// This function might throw an exception
return GetValueFromDatabase();
}
catch (Exception ex)
{
ApplicationException exWrapper = new ApplicationException(
"Wrapped Exception",
ex
);
Action throwException = () => { throw exWrapper; };
Dispatcher.CurrentDispatcher.BeginInvoke(throwException);
return "";
}
}
}
Recently come across a way of getting around the swallowed exception problem in a global way.
Create a custom binding class and override UpdateSourceExceptionFilter - see sample in this thread.
Unfortunately this is just WPF 4.0 and not SL 4.0.