草庐IT

cargo-contract

全部标签

c# - 检测 WCF 双工契约(Contract)中的客户端死亡

我正在尝试构建一个SOA,其中客户端可以在服务器上执行长时间运行的查询,并且服务器使用回调进行响应。我希望能够检测客户端是否断开连接(通过用户启动的关闭、未处理的异常或网络连接丢失),以便服务器可以选择取消昂贵的请求。我正在测试各种失败案例,但我似乎无法触发某些事件处理程序。测试失败案例:请求后杀死客户端进程。使用像CurrPorts这样的程序来关闭TCP连接。测试代码:usingSystem;usingSystem.ServiceModel;usingSystem.Threading;namespaceWCFICommunicationObjectExperiments{classP

c# - 如何获取服务引用以使用基于第 3 方 WSDL 的消息契约(Contract)正确生成,或者在 WF 服务项目中强制不使用消息契约(Contract)

我有一个问题,给定第3方WSDL,我可以从控制台应用程序轻松创建一个可用的服务代理,但我不能从WF4WF服务。后一种情况下生成的代理显然有问题,具体涉及2个问题:a)消息合约总是在没有请求或不需要时生成b)使用了不正确的响应消息和xml包装器名称,导致空响应对象和反序列化失败我面临的问题是在第3方WSDL的基础上实际生成Reference.cs类。在WSDL中有很多操作,按照出现的顺序,其中2个是这样的:Check-responseserviceTheservicehandles(cutout)...InstructioninserttoMatchingSystemThisservic

c# - Microsoft Code Contracts 和 CI 构建服务器

我们正在迁移到.NET4,并且对实现新的按契约(Contract)设计功能非常感兴趣。据我们所知CodeContract引擎需要安装CodeContractaddin和VSUltimate或Premium(用于静态检查)。这是我的问题:我可以使用代码契约重写吗没有在CI构建服务器(TeamCity)上安装VS?有没有msbuild任务来执行契约(Contract)检查?您是否将CodeContract的验证用于CI构建? 最佳答案 CanIusecodecontractrewritingwithoutinstallingVSonCI

c# - C# 中的“按契约(Contract)设计”

我想在我最新的C#应用程序中尝试一些按契约(Contract)设计,并希望语法类似于:publicstringFoo(){set{Assert.IsNotNull(value);Assert.IsTrue(value.Contains("bar"));_foo=value;}}我知道我可以从单元测试框架中获得这样的静态方法,但我想知道这样的东西是否已经内置到语言中,或者是否已经有某种框架在流动。我可以编写自己的Assert函数,只是不想重新发明轮子。 最佳答案 C#4.0CodeContractsMicrosoft在.netFram

c# - Debug.Assert 与代码契约(Contract)用法

我应该在什么时候对代码契约进行调试断言,反之亦然?我想检查一种方法的先决条件,但我很困惑要选择一个而不是另一个。我有单元测试,我想在其中测试失败场景并期望出现异常。在同一个方法上使用Debug.Assert和Code契约是一种好的做法吗?如果是这样,代码的编写顺序应该是怎样的?Debug.Assert(parameter!=null);Contract.Requires(parameter!=null,"parameter");或Contract.Requires(parameter!=null,"parameter");Debug.Assert(parameter!=null);背后

c# - async/await 是否适契约(Contract)时受 IO 和 CPU 限制的方法?

MSDN文档似乎指出async和await适用于IO绑定(bind)任务,而Task.Run应该用于CPU-绑定(bind)任务。我正在开发一个应用程序,该应用程序执行HTTP请求以检索HTML文档,然后对其进行解析。我有一个看起来像这样的方法:publicasyncTaskLoadPage(Uriaddress){using(varhttpResponse=awaitnewHttpClient().GetAsync(address))//IO-boundusing(varresponseContent=httpResponse.Content)using(varcontentStre

c# - lock(new object()) -- cargo 崇拜或一些疯狂的 "language special case"?

我正在审查一位顾问编写的一些代码,虽然已经出现了数十个危险信号,但我无法理解以下代码片段:privatevoidfoo(){if(InvokeRequired){lock(newobject()){if(m_bar!=null)Invoke(newfooDelegate(foo),newobject[]{});}}else{if(OnBazChanged!=null)OnBazChanged();}}lock(newobject())在这里做什么?应该没有任何影响,因为它总是锁定另一个对象,但这种锁定在整个代码中都是持久的,即使在非复制和粘贴的部分也是如此。这是C#语言中的一些特殊情况

c# - WCF 错误 - 找不到引用契约(Contract) 'UserService.UserService' 的默认终结点元素

有什么办法解决这个问题吗?UserService.UserServiceClientuserServiceClient=newUserServiceClient();userServiceClient.GetUsersCompleted+=newEventHandler(userServiceClient_GetUsersCompleted);userServiceClient.GetUsersAsync(searchString);.在ServiceModel客户端配置部分找不到引用契约(Contract)“UserService.UserService”的默认端点元素。这可能是因为

linux - 有没有办法重命名 Cargo 项目?

我使用以下方法创建了一个项目:cargonewprojectname--bin。如何将projectname更改为其他名称?我检查了manpage和Cargodocumentation.我也跑了:cargo帮助cargo--list人货在元数据文件(Cargo.toml、Cargo.lock、...)中,有“名称”和“路径”。我想我可以手动更改它们,但我不知道这是否会破坏任何东西。执行此操作的最佳方法是什么? 最佳答案 我认为您应该手动更改它。没那么难,真的。我运行这段代码:$cargonewsmurf--binCreatedbin

java - 什么是契约(Contract)类以及如何使用它

在最近更新的Android开发指南中,内容提供程序的文档包含标题为ContractClasses的部分.虽然有一个联系人示例的链接,但目前尚不清楚什么是契约(Contract)类以及如何为我的自定义内容提供程序创建一个不胜感激。谢谢! 最佳答案 什么是契约(Contract)类?契约类是一个publicfinal类,它包含URI、列名、MIME类型和其他关于ContentProvider的元数据的常量定义。它还可以包含static辅助方法来操作URI。为什么使用它?契约(Contract)类在内容之间建立契约(Contract)提供