c# +何时使用断言

本文关键字:断言 何时使 | 更新日期: 2023-09-27 18:14:52

我看过几个关于Debug用法的帖子。c#中的断言。但我仍有一个疑问,可能是它的重复,但我需要问。

是否有严格的规则来调试。Assert应该只用于检查类的成员,还是用于检查公共方法的参数?

或Can i Use Debug。在我想要的任何地方断言,并检查任何条件?

谢谢sandeep

c# +何时使用断言

是否有严格的规则来调试。Assert应该只用于检查类的成员,还是用于检查公共方法的参数?

Do not使用Debug.Assert()检查公共方法的参数。在调试发布版本中都应该检查参数。

您应该使用显式的if,然后使用无效参数的ArgumentNullException, ArgumentOutOfRangeExceptionArgumentException

也可以使用Code Contracts,使用Contract.Requires()来表示参数的前提条件。

进一步参考,参见这个线程:什么时候我应该使用Debug.Assert()?

除此之外,你可以在任何你想要的地方使用Debug.Assert(),但要注意,它可能需要更多的设置Asp。Net:是否值得使用Debug ?在ASP.NET中断言?

参见:http://gregbeech.com/blog/how-to-integrate-debug-assert-with-your-asp-net-web-application

您可以在任何需要的地方使用它。请注意,这是一个调试检查。所以在开发时测试时,只检查。如果你需要你的程序根据条件改变行为,你仍然需要额外的if s。

阅读微软的编码指南,并尝试使用静态代码分析或Visual Studio(以前的FxCop)和StyleCop等工具来自动检查代码质量和常见错误。