在Visual Studio中抛出调试器警告

时间:2013-10-31 11:35:57

标签: c# visual-studio-2010

我想在方法的参数列表中的某个条件失败时创建一种编译器警告。我之所以不抛出异常的原因是,用户可能只是将“坏”参数放到方法中,但是方法结果有点不可预测。 Si我只是想给他一个提示,即给定的参数可能无效,例如Visual Studio中通常的调试警告,表示“检测到无法访问的代码”或“未使用的变量”等。

有办法做到这一点吗?

编辑:只是一段示例代码:

void main() {
    MyObject m = new MyObject();
    this.doSomething<MyObject>(m);
}

T doSomething(object m) {
    // put a message to the compiler-warnings that states the used object should derive from type T
}

2 个答案:

答案 0 :(得分:1)

您可以使用

System.Diagnostics.Debug.WriteLine(message)

其中message是您要编写的调试消息。

可能在语法上方便调试的替代方法是

System.Diagnostics.Debug.Assert(condition, message)

其中condition是布尔条件,仅当条件的计算结果为false时才显示消息。

答案 1 :(得分:0)

C#编译器不公开这种事物的可扩展性机制。但是,这听起来像是自定义FxCop / Visual Studio代码分析规则的非常好的候选者。