﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » WinForms (How do I?)  » Multiple exceptions reported</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Tue, 09 Jun 2026 03:10:25 GMT</lastBuildDate><ttl>20</ttl><item><title>Multiple exceptions reported</title><link>http://forum.strataframe.net/FindPost17205.aspx</link><description>A user tried to save a record with a date that was out of range of the expected date.&amp;nbsp; Naturally, this threw an exception which was unhandled by the form.&amp;nbsp; So, it bubbles up to my UnhandledExceptionFound method of program.cs.&amp;nbsp; My method simply sends an email to my HelpDesk system so that I can begin working on the resolution.&amp;nbsp; The exception went Lawrence Welk on me.&amp;nbsp; The problem is that I get four (4) notifications for the exact same exception.&amp;nbsp; &lt;/P&gt;&lt;P&gt;Why do I get so many exception reports for one exception?&lt;/P&gt;&lt;P&gt;Thanks,&lt;BR&gt;Bill</description><pubDate>Mon, 23 Jun 2008 10:29:09 GMT</pubDate><dc:creator>Bill Cunnien</dc:creator></item><item><title>RE: Multiple exceptions reported</title><link>http://forum.strataframe.net/FindPost17241.aspx</link><description>Unfortunately, I cannot reproduce the error in order to watch the code.&amp;nbsp; This originated from a user who has not been able to supply me with any additional information.&amp;nbsp; This is not the only repeated unhandled exception that occurs, though.&amp;nbsp; Several others&amp;nbsp;have done&amp;nbsp;this, too (all fixed at this point).&amp;nbsp; When I run into one, again, I will reproduce, set a breakpoint&amp;nbsp;and watch the method for any key info.&lt;/P&gt;&lt;P&gt;Thanks,&lt;BR&gt;Bill</description><pubDate>Mon, 23 Jun 2008 10:29:09 GMT</pubDate><dc:creator>Bill Cunnien</dc:creator></item><item><title>RE: Multiple exceptions reported</title><link>http://forum.strataframe.net/FindPost17239.aspx</link><description>There is really no way for me to diagnose this over the forum like this.&amp;nbsp; In the two stack traces that you provided, you have two errors.&amp;nbsp; One from the BO and another straight from the DAL on the SQL side.&amp;nbsp; If you want to know where this is coming from, put a break point at the top of your unhandled exception code, and then look at tha Call Stack when you get there.&amp;nbsp; This will at least clue you in as to why you are getting here more than once.&amp;nbsp; It appears that there are 4 exceptions being raised...if you look at the Call Stack then you might be clued in as to why you are ending up here 4 times.</description><pubDate>Mon, 23 Jun 2008 09:20:01 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item><item><title>RE: Multiple exceptions reported</title><link>http://forum.strataframe.net/FindPost17238.aspx</link><description>Thanks for answering.&amp;nbsp; Below is all of the data that I could provide.&amp;nbsp; I have a form with an SF BO.&amp;nbsp; The user clicks new, enters data, then clicks save.&amp;nbsp; Normal, so far.&amp;nbsp; The save routine (not extended by me in any way) detects that the date on the form is invalid (MicroFour.StrataFrame.Data.DataLayerSavingException: SqlDateTime overflow).&amp;nbsp; An exception occurs and is reported to the form.&amp;nbsp; Since it is not handled, the exception gets bubbled up to the program.cs and is handled there.&amp;nbsp; Four times, the exact same inner exception and stack trace&amp;nbsp;are reported:&lt;/P&gt;&lt;P&gt;Inner Exception: MicroFour.StrataFrame.Data.DataLayerSavingException: SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM. ---&amp;gt; System.Data.SqlTypes.SqlTypeException: SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.&lt;BR&gt;at System.Data.SqlTypes.SqlDateTime.FromTimeSpan(TimeSpan value)&lt;BR&gt;at System.Data.SqlTypes.SqlDateTime.FromDateTime(DateTime value)&lt;BR&gt;at System.Data.SqlTypes.SqlDateTime..ctor(DateTime value)&lt;BR&gt;at System.Data.SqlClient.MetaType.FromDateTime(DateTime dateTime, Byte cb)&lt;BR&gt;at System.Data.SqlClient.TdsParser.WriteValue(Object value, MetaType type, Int32 actualLength, Int32 encodingByteSize, Int32 offset, TdsParserStateObject stateObj)&lt;BR&gt;at System.Data.SqlClient.TdsParser.TdsExecuteRPC(_SqlRPC[] rpcArray, Int32 timeout, Boolean inSchema, SqlNotificationRequest notificationRequest, TdsParserStateObject stateObj)&lt;BR&gt;at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)&lt;BR&gt;at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)&lt;BR&gt;at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)&lt;BR&gt;at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)&lt;BR&gt;at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)&lt;BR&gt;at System.Data.Common.DbCommand.ExecuteReader()&lt;BR&gt;at MicroFour.StrataFrame.Data.DbDataSourceItem.InternalExecuteReader(DbCommand Command, Boolean IsTransactional, String TransactionKey)&lt;BR&gt;at MicroFour.StrataFrame.Data.SqlDataSourceItem.UpdateRow(QueryInformation QueryInfo, DataRow RowToUpdate, ConcurrencyExceptionHandler ConcurrencyHandler, AddRowErrorHandler RowErrorHandler, Boolean RecreateCommand)&lt;BR&gt;at MicroFour.StrataFrame.Data.DbDataSourceItem.UpdateRow(QueryInformation QueryInfo, DataRow RowToUpdate, ConcurrencyExceptionHandler ConcurrencyHandler, AddRowErrorHandler RowErrorHandler)&lt;BR&gt;at MicroFour.StrataFrame.Data.DataLayer.UpdateDataTableThread(Object ThreadParams)&lt;BR&gt;--- End of inner exception stack trace ---&lt;BR&gt;at MicroFour.StrataFrame.Data.DataLayer.SaveByForm(DataTable TableToSave, Boolean Transactional, String TransactionKey)&lt;BR&gt;at MicroFour.StrataFrame.Business.BusinessLayer.SaveByForm(Boolean Transactional, String TransactionKey)&lt;BR&gt;&lt;BR&gt;The stack trace is the same, too:&lt;/P&gt;&lt;P&gt;Stack Trace: at MicroFour.StrataFrame.Business.BusinessLayer.SaveByForm(Boolean Transactional, String TransactionKey)&lt;BR&gt;at MicroFour.StrataFrame.UI.Windows.Forms.BaseForm.Save(Boolean Transactional, String TransactionKey)&lt;BR&gt;at MicroFour.StrataFrame.UI.Windows.Forms.BaseForm.Save()&lt;BR&gt;at MicroFour.StrataFrame.UI.Windows.Forms.MaintenanceFormToolStrip.cmdSave_Click(Object sender, EventArgs e)&lt;BR&gt;at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)&lt;BR&gt;at System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)&lt;BR&gt;at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)&lt;BR&gt;at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)&lt;BR&gt;at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)&lt;BR&gt;at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)&lt;BR&gt;at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)&lt;BR&gt;at System.Windows.Forms.Control.WmMouseUp(Message&amp;amp; m, MouseButtons button, Int32 clicks)&lt;BR&gt;at System.Windows.Forms.Control.WndProc(Message&amp;amp; m)&lt;BR&gt;at System.Windows.Forms.ScrollableControl.WndProc(Message&amp;amp; m)&lt;BR&gt;at System.Windows.Forms.ToolStrip.WndProc(Message&amp;amp; m)&lt;BR&gt;at System.Windows.Forms.Control.ControlNative&amp;#119;indow.OnMessage(Message&amp;amp; m)&lt;BR&gt;at System.Windows.Forms.Control.ControlNative&amp;#119;indow.WndProc(Message&amp;amp; m)&lt;BR&gt;at System.Windows.Forms.Native&amp;#119;indow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) &lt;/P&gt;&lt;P&gt;Here is my UnhandledExceptionFound method:&lt;/P&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;static&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;void&lt;/FONT&gt;&lt;FONT size=2&gt; UnhandledExceptionFound(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;UnhandledExceptionFoundEventArgs&lt;/FONT&gt;&lt;FONT size=2&gt; e)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.Handled = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;true&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; mUserData = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"No additional user information has been supplied."&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Aspire.SF.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;SPXExceptionData&lt;/FONT&gt;&lt;FONT size=2&gt; mNewForm = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; Aspire.SF.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;SPXExceptionData&lt;/FONT&gt;&lt;FONT size=2&gt;(e.UnhandledException);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;if&lt;/FONT&gt;&lt;FONT size=2&gt; (mNewForm.ShowDialog() == &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;DialogResult&lt;/FONT&gt;&lt;FONT size=2&gt;.OK)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mUserData = mNewForm._userinfo;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; mVersionString = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;""&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;if&lt;/FONT&gt;&lt;FONT size=2&gt; (System.Deployment.Application.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;ApplicationDeployment&lt;/FONT&gt;&lt;FONT size=2&gt;.IsNetworkDeployed)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.Deployment.Application.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;ApplicationDeployment&lt;/FONT&gt;&lt;FONT size=2&gt; ad = System.Deployment.Application.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;ApplicationDeployment&lt;/FONT&gt;&lt;FONT size=2&gt;.CurrentDeployment;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mVersionString = ad.CurrentVersion.ToString();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;else&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT size=2&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mVersionString = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"-: Debugging Mode :-"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;MailMessage&lt;/FONT&gt;&lt;FONT size=2&gt; mMail = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;MailMessage&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;SmtpClient&lt;/FONT&gt;&lt;FONT size=2&gt; mSmtp = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;SmtpClient&lt;/FONT&gt;&lt;FONT size=2&gt;(&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"MailServer"&lt;/FONT&gt;&lt;FONT size=2&gt;);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Aspire.Model.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;UserBO&lt;/FONT&gt;&lt;FONT size=2&gt; mUser = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; Aspire.Model.&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;UserBO&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mUser.FillByPrimaryKey(&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;SecurityBasics&lt;/FONT&gt;&lt;FONT size=2&gt;.CurrentUser.UserPK);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.From = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;MailAddress&lt;/FONT&gt;&lt;FONT size=2&gt;(mUser.EmailAddress, mUser.FullName);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.To.Add(&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;A href="mailto:ourhelpdeskemailaddress@spiratex.com"&gt;ourhelpdeskemailaddress@spiratex.com&lt;/A&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.Subject = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"Aspire v3.5 :: Unhandled Exception Report"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.Body = &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"User Information: "&lt;/FONT&gt;&lt;FONT size=2&gt; + mUserData + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt; + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.Body += &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"Version: "&lt;/FONT&gt;&lt;FONT size=2&gt; + mVersionString + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt; + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.Body += &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"Message: "&lt;/FONT&gt;&lt;FONT size=2&gt; + e.UnhandledException.Message + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt; + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.Body += &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"Source: "&lt;/FONT&gt;&lt;FONT size=2&gt; + e.UnhandledException.Source + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt; + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.Body += &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"Inner Exception: "&lt;/FONT&gt;&lt;FONT size=2&gt; + e.UnhandledException.InnerException + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt; + &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"\r"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mMail.Body += &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;"Stack Trace: "&lt;/FONT&gt;&lt;FONT size=2&gt; + e.UnhandledException.StackTrace;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mSmtp.Send(mMail);&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;If you could tell me where I am making this error report repeat itself, I would really appreciate it.&amp;nbsp; Thanks!&lt;BR&gt;Bill&lt;/P&gt;&lt;/FONT&gt;</description><pubDate>Mon, 23 Jun 2008 08:48:51 GMT</pubDate><dc:creator>Bill Cunnien</dc:creator></item><item><title>RE: Multiple exceptions reported</title><link>http://forum.strataframe.net/FindPost17237.aspx</link><description>[quote]Why do I get so many exception reports for one exception?[/quote]&lt;/P&gt;&lt;P&gt;I have no idea without looking at your code or you providing some additional information.&amp;nbsp; This could happen due to your code and logic.&amp;nbsp; For example, if an error occurs and there is subsequent logic referencing the same field, then this could happen.&amp;nbsp; There are literally a limitless number of scenarios in which this could happen.&amp;nbsp; You may need to take this into account within you app...but more than likely you have something that continues to reference that field and produce additional errors.</description><pubDate>Mon, 23 Jun 2008 08:24:28 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item></channel></rss>