Debug.Assert is a debug aid that throws asserts behind the scenes, but only in debug mode.
The intention being that you can add them liberally throughout your code to check parameters, expected values etc then have them all removed to improve performance in the release builds.
If you are using them as shortcuts to generate asserts then it is likely you are not using them for their original purpose as well. I would strongly recommend not re-using a debug aid as a coding shortcut but instead find/create another more acceptable coding pattern like using app-specific exceptions (or adding your own shortcuts if you really must).
Being a professional coder is often more about learning how to do things to make life easier for fellow developers rather than saving a few lines of code.
manpreet
Best Answer
2 years ago
I'm just playing around with Windows Phone and trying to write an app for it.
I can't seem to find a Trace.Assert in System.Diagnostics. This exists in .NET for the PC and lets me throw assertions in Release builds.
I'm guessing that this is just something that's not a part of the silverlight toolkit.
What is the correct way of enabling assertions in a release build? Debug.Assert does not do anything in the Release build ... I think it gets compiled out.