C# 代码合同+;Sandcastle--有没有办法自定义例外部分? 我使用的代码契约版本为:1.4.40602.0 我复制了必要的内容并转换了文件 Sandcastle根据我的合同要求输出例外情况

C# 代码合同+;Sandcastle--有没有办法自定义例外部分? 我使用的代码契约版本为:1.4.40602.0 我复制了必要的内容并转换了文件 Sandcastle根据我的合同要求输出例外情况,c#,documentation,code-contracts,sandcastle,xml-documentation,C#,Documentation,Code Contracts,Sandcastle,Xml Documentation,示例代码: public class MyClass { public MyClass(Object obj) { Contract.Requires<ArgumentNullException>(obj != null); } } 这并不是那么糟糕,但是我想知道是否有一种方法可以自定义条件的文本?我试图添加一条用户消息Contract.Requires(obj!=null,“obj为null”),但这并没有解决任何问题 在过去,我必须为例外

示例代码:

public class MyClass
{
    public MyClass(Object obj)
    {
        Contract.Requires<ArgumentNullException>(obj != null);
    }
}
这并不是那么糟糕,但是我想知道是否有一种方法可以自定义条件的文本?我试图添加一条用户消息
Contract.Requires(obj!=null,“obj为null”),但这并没有解决任何问题

在过去,我必须为例外情况编写自己的xml文档部分。为了得到我需要的东西,我还要再做一次吗



免责声明:由于代码契约(目前)是一个Devlab项目,这可能会改变,但我想知道它现在是否已经可用。。。如果没有,我一定会提出建议。

对于代码契约1.4.51019.0,您可以使用重载:

Requires(bool条件,字符串userMessage)

但是,您的消息将附加在“前提条件失败”之后,后跟不匹配的条件。如果Sandcastle没有识别出它,我相信这不是代码契约中的错误,因为消息在我看来是正确的

| Exception                       | Condition                       |
|---------------------------------|---------------------------------|
| System.ArgumentNullException    | obj == null                     |