code-contracts相关内容

Microsoft 代码合同和 CI 构建服务器

我们正在迁移到 .NET 4,并且对实现新的按合同设计功能非常感兴趣. 我们知道 代码合同 引擎需要安装 代码合同插件 和 VS Ultimate 或 Premium(用于静态检查). 这是我的问题: 我可以使用代码合约重写吗没有在 CI 构建服务器 (TeamCity) 上安装 VS? 有没有执行合同检查的 msbuild 任务? 您是否在 CI 构建中使用 Code C ..
发布时间:2022-01-12 19:35:34 C#/.NET

Visual Studio 2017 是否适用于代码合同?

我刚刚安装了新发布的 Visual Studio 2017 Enterprise (RC).我无法让它与 但是,代码合同.我在 Visual Studio 2015 中使用代码合同没有任何问题.我错过了什么吗? 解决方案 正如其他人所指出的,微软没有优先考虑代码合同及其 长期支持仍不清楚(尽管已经有一些通过 Roslyn 持续讨论语言级集成. 然而,截至 2017 年 3 月 11 ..
发布时间:2022-01-11 23:55:03 C#/.NET

由合同和建设者设计

我正在为学校目的实现我自己的 ArrayList,但为了让事情更有趣,我正在尝试使用 C# 4.0 代码合同.一切都很好,直到我需要向构造函数添加合同.我应该在空参数构造函数中添加 Contract.Ensures() 吗? public ArrayList(int capacity) {合同.要求(容量 > 0);合同.确保(大小==容量);_array = 新 T[容量];}公共 Arra ..
发布时间:2021-12-25 08:29:49 C#/.NET

Debug.Assert 与代码契约的使用

我什么时候应该对代码契约进行 debug.assert,反之亦然?我想检查一种方法的先决条件,我很困惑选择一个而不是另一个.我有单元测试,我想测试失败场景并期待异常. 在同一方法上使用 Debug.Assert 和 Code 契约是否是一个好习惯.如果是这样,代码的编写顺序是什么? Debug.Assert(parameter!= null);Contract.Requires(param ..
发布时间:2021-11-30 11:29:47 C#/.NET

.NET Core:代码契约方法暂时关闭?

几年前有很多关于代码契约的信息.我没有时间学习它,现在才发现这个:) 但是当我尝试使用它时,我发现 Visual Studio 2017 不支持它,CC 工具上次更新是在 3 年多前...... 那么,代码合同暂时关闭了? 解决方案 遗憾的是,不再支持代码契约. 好消息是 C#8 将包含一个新的可以为 null 的引用类型特性将处理大部分使用代码契约的不变量和前置和后置条 ..
发布时间:2021-11-26 12:43:20 其他开发

如何在 .NET Core 中正确使用代码契约

我想知道如何在 .NET Core 中正确使用代码契约,到目前为止我尝试将 CC 添加到我的项目中,编译和调试.我对使用 Contract.Requires 的每个调用中出现的消息以及通过谷歌搜索找到的信息感到困惑. 消息指出: 必须使用代码契约二进制重写器 (CCRewrite) 重写程序集,因为它正在调用 Contract.Requires 并且定义了 CONTRACTS_FULL ..
发布时间:2021-11-24 15:01:24 C#/.NET

.net core 是否支持代码契约?

在 .net 框架中有代码契约允许我在我的代码中指定前/后条件..net core/.net 5 是否支持它们? 解决方案 Namespace System.Diagnostics.Contracts 可用,但项目放弃. 替代 VS2019 https://softwarerecs.stackexchange.com/questions/47108/the-best-code-co ..
发布时间:2021-11-24 14:39:12 C#/.NET

.NET Core:代码契约方法暂时关闭?

几年前有很多关于代码契约的信息.我没有时间学习它,现在才发现这个:) 但是当我尝试使用它时,我发现 Visual Studio 2017 不支持它,CC 工具上次更新是在 3 年多前...... 那么,代码合同暂时关闭了? 解决方案 遗憾的是,不再支持代码契约. 好消息是 C#8 将包含一个新的可以为 null 的引用类型特性将处理大部分使用代码契约的不变量和前置和后置条 ..
发布时间:2021-11-24 12:28:43 C#

我可以在与非代码合同开发人员使用的代码库合并的代码中保留合同吗?

在过去的几个月里,我一直在为我的公司开发一个副项目,但高层现在认为它非常适合现有产品. 我一直在使用 Microsoft 的 Code Contracts 进行静态类型检查来开发副项目(部分原因是我之前没有使用过它们并且渴望学习). 我的问题是,如果我将我的代码签入到代码库中,并且合同就位,其他所有开发人员是否都需要安装代码合同工具才能继续开发?我知道他们都没有安装它,而且我是这里的大 ..
发布时间:2021-11-24 09:34:47 C#/.NET

代码合同问题

你好我有一个关于 CodeContracts 的小问题.我有一个类库项目,它作为一个带有方法 foo(string s1, string s2); 的类.在 foo 方法中,我有一个 Contract.Requires(s1 != null).因此,如果我理解我的代码的含义(是的,我刚刚安装了 CodeContracts 并玩了 :),合约将在构建过程和运行时检查 s1 != null 表达式,抛 ..
发布时间:2021-09-18 19:45:54 C#/.NET

VS2015 因“A new guard page..."崩溃刚编辑源代码时

问题: Visual Studio 2015 不断因此错误而崩溃: 无法为堆栈创建新的保护页 背景: 在其他上下文中已经有一些关于此错误的问题,但它们似乎都与在 Visual Studio 中与遗留 COM 代码或设计器工具的互操作有关.我只是想编辑一个 C# 源文件. Windows 服务/一个新的无法为堆栈创建保护页 不能为堆栈创建新的保护页创建 以前 ..
发布时间:2021-07-10 19:33:11 其他开发

如何“网络抓取"一个使用python的包含弹出窗口的网站?

由于没有针对此功能的api,我正在尝试使用python在Web上刮除etherscan站点的特定部分.基本上要转到此链接,然后需要验证,然后弹出一个弹出窗口.您可以在此处中看到.我需要抓的是这部分 0x0882477e7895bdc5cea7cb1552ed914ab157fe56 ,以防消息以图片中的消息开头. 我已经编写了下面的python脚本,以开始此操作,但是我不知道如何与该站点进行 ..
发布时间:2021-04-15 19:02:24 Python

.net核心是否支持代码合同?

.net框架中有代码契约,可让我在代码中指定前置/后置条件..net core/.net 5是否支持它们? 解决方案 命名空间 System.Diagnostics.Contracts 可用,但项目不兑现. 替代VS2019 https://softwarerecs.stackexchange.com/questions/47108/the-best-code-contracts- ..
发布时间:2021-04-01 21:40:14 C#/.NET

代码合同继承

发现代码合同有点奇怪,我想知道是否有人知道原因... 好了,现在就来一些代码示例: 程序集1: [ContractClass(typeof(IServiceCodeContract))) ] 公共接口IService其中T:class {...} [ContractClassFor(typeof(IService)))] 公共抽象类IServiceC ..
发布时间:2020-09-26 20:22:29 C#/.NET

为什么不能在重写方法中添加Contract.Requires?

我正在使用代码协定(实际上是在学习使用它)。 我正面临着一些奇怪的事情……我覆盖了一种方法,该方法定义于第三党集会。我想添加一个 Contract.Require 语句,像这样: public class MyClass:MyParentClass { 受保护的重写void DoIt(MyParameter param) { Contract.Requires ..
发布时间:2020-09-26 19:33:56 其他开发

在代码合同中使用Contract.ForAll

好的,我还有另一个代码合同问题。我在接口方法上有一个合同,看起来像这样(为清晰起见,省略了其他方法): [ContractClassFor(typeof(IUnboundTagGroup ))] 公共抽象类ContractForIUnboundTagGroup:IUnboundTagGroup { public IUnboundTagGroup [] GetAllGroups() ..
发布时间:2020-09-26 00:32:04 C#/.NET