tech·nic·al·ly agile

TFS Gotcha (Exception Handling)

Learn how to effectively handle non-serializable exceptions in Team Foundation Server with custom solutions for Windows Communication Foundation. Enhance your coding skills!

Published on
1 minute read
Image
https://nkdagility.com/resources/OMGmyApgm0G

When coding against team foundation server you must be aware that some of the exceptions thrown by Team Foundation Server  are not Serilisable! I think that this was an oversite by Microsoft, but it is there none the less.

An example of this is; TeamFoundationServerUnauthorizedException

If you want to handle this exception accross Windows Communication Foundation   you will need to create a custom exception of the same name and re-throw this accross your services.

<DataContract()> _
Public Class TeamFoundationServerUnauthorizedException

Public Sub New()
    …
  End Sub

End Class

Make sure that you mark it as a data contract and then you can throw it when you encounter the Team Foundation Server  exception:

Try
  ’ Team Foundation Server  Connection Code
Catch ex As TeamFoundationServerUnauthorizedException
  Throw New FaultException(Of FaultContracts.TeamFoundationServerUnauthorizedException)(New FaultContracts.TeamFoundationServerUnauthorizedException())
Catch ex As System.Exception
  Throw New FaultException(Of System.Exception)(ex, “Failed to do team server thing”, New FaultCode(" Team Foundation Server  :EH:S:0001"))
End Try

This will allow you to handle Team Foundation Server  exceptions for your Windows Communication Foundation  service application on the client.

Technorati Tags: ALM    TFS 

Software Development Troubleshooting
Comments

Related blog posts

No related videos found.

Connect with Martin Hinshelwood

If you've made it this far, it's worth connecting with our principal consultant and coach, Martin Hinshelwood, for a 30-minute 'ask me anything' call.

Our Happy Clients​

We partner with businesses across diverse industries, including finance, insurance, healthcare, pharmaceuticals, technology, engineering, transportation, hospitality, entertainment, legal, government, and military sectors.​

Lean SA Logo
Teleplan Logo
Alignment Healthcare Logo
Higher Education Statistics Agency Logo
Workday Logo
Boeing Logo
Trayport Logo
Schlumberger Logo
Kongsberg Maritime Logo
New Signature Logo
Jack Links Logo
Emerson Process Management Logo
DFDS Logo
Epic Games Logo
Genus Breeding Ltd Logo
Brandes Investment Partners L.P. Logo
Healthgrades Logo
Cognizant Microsoft Business Group (MBG) Logo
Washington Department of Transport Logo
New Hampshire Supreme Court Logo
Department of Work and Pensions (UK) Logo
Ghana Police Service Logo
Royal Air Force Logo
Washington Department of Enterprise Services Logo
Higher Education Statistics Agency Logo
Workday Logo
Slaughter and May Logo
Akaditi Logo
Ericson Logo
Microsoft Logo