合同.要求在异常函数中失败,错误CC1027:畸形契约



我正试图编写一个异常,并在角色上添加了一个合约。需要声明。由于某些原因,编译失败错误CC1027:畸形合同我正在使用最新版本(1.4.60317.12)的代码合同插件到VS2012

Public NotInheritable Class ValidationException
    Inherits Exception
    Public Property Result() As FluentValidation.Results.ValidationResult
    Public Sub New(ByVal ValidateResult As FluentValidation.Results.ValidationResult)
        Contract.Requires(Of ArgumentNullException)(ValidateResult IsNot Nothing, "ValidateResult is nothing.")

        Me.Result = ValidateResult
    End Sub
End Class

如果我删除联系人。require和put

        If ValidateResult Is Nothing Then
            Throw New ArgumentNullException("ValidateResult", "ValidateResult is nothing.")
        End If
        Contract.EndContractBlock()

编译工作,但我得到一个警告CC1057:方法' windowsapplication1 . data . validate . validationexception .#ctor(fluentvalidate . results . validationresult)'具有自定义参数验证,但汇编模式未设置为支持此功能。它将被视为要求。

表示支持require

这是一个错误还是我错过了什么?

我看到相同的行为-在方法中工作正常,但在构造函数中导致畸形契约异常。我看到其他人也有同样的问题(一年前),并发表在MSDN上。Mike Barnett太棒了,如果他能重新创造它,他应该能修复它。

最新更新