code-contracts相关内容
我们正在迁移到 .NET 4,并且对实现新的按合同设计功能非常感兴趣. 我们知道 代码合同 引擎需要安装 代码合同插件 和 VS Ultimate 或 Premium(用于静态检查). 这是我的问题: 我可以使用代码合约重写吗没有在 CI 构建服务器 (TeamCity) 上安装 VS? 有没有执行合同检查的 msbuild 任务? 您是否在 CI 构建中使用 Code C
..
我刚刚安装了新发布的 Visual Studio 2017 Enterprise (RC).我无法让它与 但是,代码合同.我在 Visual Studio 2015 中使用代码合同没有任何问题.我错过了什么吗? 解决方案 正如其他人所指出的,微软没有优先考虑代码合同及其 长期支持仍不清楚(尽管已经有一些通过 Roslyn 持续讨论语言级集成. 然而,截至 2017 年 3 月 11
..
我想为这个通用接口指定一个契约,使用代码契约: interface IRandomWriteAccessible;{T this[uint index] { set;}单位长度{得到;}} 文档说在为接口指定契约时使用 ContractClass 属性.但是,编译器会抱怨这个: [ContractClass(typeof(IRandomWriteAccessibleContract))]//
..
我想知道是应该抛出异常还是调用合同.需要 例如: public static void Function(String str){if (str == null) throw new ArgumentNullException("str", "输入字符串不能为空.");//...} 对比 public static void Function(String str){Contract.
..
我正在为学校目的实现我自己的 ArrayList,但为了让事情更有趣,我正在尝试使用 C# 4.0 代码合同.一切都很好,直到我需要向构造函数添加合同.我应该在空参数构造函数中添加 Contract.Ensures() 吗? public ArrayList(int capacity) {合同.要求(容量 > 0);合同.确保(大小==容量);_array = 新 T[容量];}公共 Arra
..
我什么时候应该对代码契约进行 debug.assert,反之亦然?我想检查一种方法的先决条件,我很困惑选择一个而不是另一个.我有单元测试,我想测试失败场景并期待异常. 在同一方法上使用 Debug.Assert 和 Code 契约是否是一个好习惯.如果是这样,代码的编写顺序是什么? Debug.Assert(parameter!= null);Contract.Requires(param
..
几年前有很多关于代码契约的信息.我没有时间学习它,现在才发现这个:) 但是当我尝试使用它时,我发现 Visual Studio 2017 不支持它,CC 工具上次更新是在 3 年多前...... 那么,代码合同暂时关闭了? 解决方案 遗憾的是,不再支持代码契约. 好消息是 C#8 将包含一个新的可以为 null 的引用类型特性将处理大部分使用代码契约的不变量和前置和后置条
..
我想知道如何在 .NET Core 中正确使用代码契约,到目前为止我尝试将 CC 添加到我的项目中,编译和调试.我对使用 Contract.Requires 的每个调用中出现的消息以及通过谷歌搜索找到的信息感到困惑. 消息指出: 必须使用代码契约二进制重写器 (CCRewrite) 重写程序集,因为它正在调用 Contract.Requires 并且定义了 CONTRACTS_FULL
..
在 .net 框架中有代码契约允许我在我的代码中指定前/后条件..net core/.net 5 是否支持它们? 解决方案 Namespace System.Diagnostics.Contracts 可用,但项目放弃. 替代 VS2019 https://softwarerecs.stackexchange.com/questions/47108/the-best-code-co
..
几年前有很多关于代码契约的信息.我没有时间学习它,现在才发现这个:) 但是当我尝试使用它时,我发现 Visual Studio 2017 不支持它,CC 工具上次更新是在 3 年多前...... 那么,代码合同暂时关闭了? 解决方案 遗憾的是,不再支持代码契约. 好消息是 C#8 将包含一个新的可以为 null 的引用类型特性将处理大部分使用代码契约的不变量和前置和后置条
..
在过去的几个月里,我一直在为我的公司开发一个副项目,但高层现在认为它非常适合现有产品. 我一直在使用 Microsoft 的 Code Contracts 进行静态类型检查来开发副项目(部分原因是我之前没有使用过它们并且渴望学习). 我的问题是,如果我将我的代码签入到代码库中,并且合同就位,其他所有开发人员是否都需要安装代码合同工具才能继续开发?我知道他们都没有安装它,而且我是这里的大
..
我希望以最优雅的方式验证我的代码中的方法参数.Code Contracts 在 2015 年似乎不起作用.有人使用任何替代方案吗? 解决方案 他们正在努力:https://github.com/Microsoft/CodeContracts/pull/36 如果您迫不及待,可以采取一些措施来解决此问题:https://github.com/Microsoft/CodeContract
..
你好我有一个关于 CodeContracts 的小问题.我有一个类库项目,它作为一个带有方法 foo(string s1, string s2); 的类.在 foo 方法中,我有一个 Contract.Requires(s1 != null).因此,如果我理解我的代码的含义(是的,我刚刚安装了 CodeContracts 并玩了 :),合约将在构建过程和运行时检查 s1 != null 表达式,抛
..
问题: Visual Studio 2015 不断因此错误而崩溃: 无法为堆栈创建新的保护页 背景: 在其他上下文中已经有一些关于此错误的问题,但它们似乎都与在 Visual Studio 中与遗留 COM 代码或设计器工具的互操作有关.我只是想编辑一个 C# 源文件. Windows 服务/一个新的无法为堆栈创建保护页 不能为堆栈创建新的保护页创建 以前
..
我知道这种问题已经被问过数百万次,即使不是数十亿次,但我仍找不到答案:) 此 compare()方法没有 Long , Double , Float ,...,它只有 Date , boolean 和 Null 检查器,但是它告诉我合同违约错误,可以一个帮助PLZ? Collections.sort(用户,新的Comparator(){@Overridepublic
..
由于没有针对此功能的api,我正在尝试使用python在Web上刮除etherscan站点的特定部分.基本上要转到此链接,然后需要验证,然后弹出一个弹出窗口.您可以在此处中看到.我需要抓的是这部分 0x0882477e7895bdc5cea7cb1552ed914ab157fe56 ,以防消息以图片中的消息开头. 我已经编写了下面的python脚本,以开始此操作,但是我不知道如何与该站点进行
..
.net框架中有代码契约,可让我在代码中指定前置/后置条件..net core/.net 5是否支持它们? 解决方案 命名空间 System.Diagnostics.Contracts 可用,但项目不兑现. 替代VS2019 https://softwarerecs.stackexchange.com/questions/47108/the-best-code-contracts-
..
发现代码合同有点奇怪,我想知道是否有人知道原因... 好了,现在就来一些代码示例: 程序集1: [ContractClass(typeof(IServiceCodeContract))) ] 公共接口IService其中T:class {...} [ContractClassFor(typeof(IService)))] 公共抽象类IServiceC
..
我正在使用代码协定(实际上是在学习使用它)。 我正面临着一些奇怪的事情……我覆盖了一种方法,该方法定义于第三党集会。我想添加一个 Contract.Require 语句,像这样: public class MyClass:MyParentClass { 受保护的重写void DoIt(MyParameter param) { Contract.Requires
..
好的,我还有另一个代码合同问题。我在接口方法上有一个合同,看起来像这样(为清晰起见,省略了其他方法): [ContractClassFor(typeof(IUnboundTagGroup ))] 公共抽象类ContractForIUnboundTagGroup:IUnboundTagGroup { public IUnboundTagGroup [] GetAllGroups()
..