其实有更快的方法,很可能这种方法内部遍历效率太慢导致。...); Console.WriteLine(GetCpuID()); sw.Stop(); Console.WriteLine("获取
故障现象 最近在 Web 部署百度 AI 图像识别 AipSdk.dll 封装库的时候,在调用OCR图像识别 API 的时候,显示为 “ 基础连接已经关闭: 接收时发生错误。”...System.Net.SecurityProtocolType 指定 Schannel 安全包支持的安全协议的可选择项见下表: 序号 值 说明 1 Ssl3 指定安全套接字层 (SSL) 3.0 安全协议...view=netcore-2.0 其它 解决该问题是由于百度封装的库,则需要在Page_Load事件进行外围处理即可,在运行中为保险起见还是要对调用进行异常处理。...现其已经开源,有C#版本,详情可访问如下网址: https://ai.baidu.com/ai-doc/IMAGERECOGNITION/2k3bcxhqb 如果对于可直接访问的 API URL ,可参阅我的文章...: 《C# 关于“您与该网站的连接不是私密连接...”的问题》 《C# 实现访问 Web API Url 提交数据并获取处理结果》 通过 GetResponseResult 方法可完美解决此问题。
Visual Studio 2012已经正式发布,有很多花哨的新特性,也有很多方便使用者的新功能,当然也有负面声音。对于我们程序员,最关心的还是如何快速掌握VS2012,用于平时的工作中。...您还可以结合 C++、 C# 和 Visual Basic 项目完成特定的解决方案,使其编译在一个单一的应用程序中。 ? 单元测试 我们总是希望能快速的为已初步完成的项目建立单元测试。...对于 C++ 项目,这些规则可帮助检测常见的编码错误,如缓冲区溢出、 空指针取消引用、 使用未初始化的变量,或滥用的 Api。如果不修复错误,这些错误有可能导致安全漏洞或应用程序崩溃。...VS2012还包括团队资源管理器(Team Explorer),它允许您 TFS 的服务器集成到所有的 Visual Studio 2012 版本产品,通过它我们可以更方便的使用源代码管理、 工作项跟踪和自动编译...TFS 项目。
现代网站越来越多的使用前后端分离架构,先用前端 MVC 框架快速堆砌出 SPA,再用 API 获取动态数据也已经成为日常的开发内容;而用来连接前后端的 API,其重要性也自然言而喻。..."> 不支持其他方法,在传统网站中可能会用 POST 处里除了获取数据之外的所有事情。...目前讲的都是在规范中提到且建议的一般用法,实际服务器的 API 怎么开发依然是看实现的人;但通过语意化的方法去设计 API,绝对可以让 API 对开发者更加友好。...例如假设有一个视频网站:myku.com,它的的 API 有可能就会是这样: [GET] http://myku.com/v1/videos/ -> 获取 video 列表 [POST] http://...查询语句即文件 查询语句即响应的数据结构,不会有冗余的内容 统一的对外入口 可以多查询合并,一起返回 这些特性有效的解决了 RESTful API 在复杂架构下的问题,使 GraphQL 充满弹性、非常好用
在《C#开发BIMFACE系列3 服务端API之获取应用访问凭证AccessToken》中详细介绍了应用程序访问API的令牌凭证。...我们知道 Access token 代表自身应用的身份,使用应用的 appkey, secret,通过调用/oauth2/token接口获取。...请求地址:GET https://api.bimface.com/view/token 说明:通过fileId, integrateId, compareId 获取View token, 然后把View...C#实现方法: 1 /// 2 /// 获取模型的 ViewToken 3 /// 4 /// 令牌..., ex); 37 } 38 } 其中调用到的 httpManager.Get() 方法,请参考《C# HTTP系列》 其中 ModelType 枚举,是为了区分不同模型的种类 1
本篇介绍获取一个文件/模型中可能包含多个楼层信息的详细方法。...请求地址:GET https://api.bimface.com/data/v2/files/{fileId}/floors 说明:获取单个模型的所有楼层信息 参数: ?...,封装成对应的C#类如下: /// /// 获取单个模型的楼层信息返回的结果类 /// [Serializable] public class SingleModelFloors...开发BIMFACE系列18 服务端API之获取模型数据3:获取构件属性》 中有使用过,请查看其详细定义。...C#实现方法: 1 /// 2 /// 获取单个模型的楼层信息 3 /// 4 /// 【必填】令牌
系列目录 【已更新最新开发文章,点击查看详细】 在《C#开发BIMFACE系列21 服务端API之获取模型数据6:获取单模型的楼层信息》中介绍获取单个模型的所有楼层信息。...某些场景下根据需要也可以一次性获取多个模型的楼层信息。...封装成对应的 C# MultipleModelsFloors.cs 类 : /// /// 获取多个模型的楼层信息 /// public class MultipleModelsFloors...Floor 类,请参考《C#开发BIMFACE系列21 服务端API之获取模型数据6:获取单模型的楼层信息》。...C#实现方法: 1 /// 2 /// 获取多个模型的楼层信息 3 /// 4 /// 【必填】令牌
不同的构建也有可能包含相同的属性。 ? 上图中可以看到构建1与构建2拥有相同的属性2,构建2与构建n拥有相同的属性1。 本文主要介绍如何获取多个构建的共同属性。...实现方法: 1 /// 2 /// 获取单个模型的多个构件的共同属性 3 /// 4 /// 令牌..., ex); 49 } 50 } 其中调用到的 httpManager.Get() 方法,请参考《C# HTTP系列》 响应结果对应的实体类 SingleModelMultipleElementsCommonProperties...18 服务端API之获取模型数据3:获取构件属性》 返回的结构类 SingleModelSingleElementProperty 完全相同。...衍生出的一个重载方法: /// /// 获取单个模型的多个构件的共同属性 /// /// 令牌</param
下面详细介绍如何获取应用支持的文件类型。...请求地址:GET https://file.bimface.com/support 说明:获取当前应用支持转换的文件类型,如上传的文件格式不在列表里,BIMFACE不支持对其发起转换。 参数: ?...实现方法: 1 /// 2 /// 获取应用支持的文件类型 3 /// 4 /// 令牌</param..., ex); 35 } 36 } 其中引用的 httpManager.Get() 方法,请参考《C#开发BIMFACE系列6 服务端API之获取文件信息》,方法完全一样。 测试 ?...可以看到获取应用支撑的文件类型成功,返回了以下信息:数据长度、支持的类型。
农行个人网银评级项目基于本行自研 EBF 框架开发,属于C#技术栈,在 DevOps 评估过程中单元测试覆盖率这个能力项上,项目组结合自身系统实际,探索出了适用该系统的单元测试代码覆盖率收集工具,分别实现了依赖...TFS生成定义的Agent的任务中执行。...2、对覆盖率的结果文件进行格式转换,导出为TFS支持的格式,并将下图覆盖率结果上传到TFS配置库中。 3、最终收集到覆盖率数据文件,可以直接映射到本地,用户可在VS中查看详细信息。 ?...,从而在系统早起就能够发现一些编码问题。...作者简介 陈辉,中国农业银行个人网银系统 DevOps 技术经理,从事个人网银开发工作多年,负责个人网银 DevOps 三级贯标工作,具备扎实的 DevOps 领域实践经验。
---- 原则 和办公软件略有区别,原则上我们应该略有改动: 统一的环境、工具和软件 善用工具 符合自身情况 ---- 说明 除非是存在特定的开发环境和要求,开发的环境、工具和软件必须统一,否则各种杂七杂八的问题足够开发团队头疼的了...---- 功能重磅推荐 ---- C#交互窗口 推荐理由:快速敲出代码段快速验证 ---- Nuget包管理器 推荐理由:妈妈再也不担心我乱放包了。...而且配套Git工作流可以极好的协助产品研发。 ---- TFS 推荐指数:四星 推荐理由:支持Git源代码管理,包含敏捷流程和面板。尤其对于小团队来说,试用期过了也没有任何影响,也就是等同于免费。...TFS的敏捷模板也可以用于开发管理,但是相比TFS,其更为简单灵活。...---- PostMan 推荐指数:五星 推荐理由:非常强大的 API调试、Http请求的工具,尤其适合团队使用,允许团队共享API设置。
,否则各种杂七杂八的问题足够开发团队头疼的了。...---- 功能重磅推荐 ---- C#交互窗口 推荐理由:快速敲出代码段快速验证 ? ---- Nuget包管理器 推荐理由:妈妈再也不担心我乱放包了。...而且配套Git工作流可以极好的协助产品研发。 ---- TFS 推荐指数:四星???? 推荐理由:支持Git源代码管理,包含敏捷流程和面板。...TFS的敏捷模板也可以用于开发管理,但是相比TFS,其更为简单灵活。...推荐理由:最强大最好用的Web请求监控工具! ---- PostMan 推荐指数:五星????? 推荐理由:非常强大的 API调试、Http请求的工具,尤其适合团队使用,允许团队共享API设置。
在调用时首先抛出异常——无法在 DLL“hid.dll”中找到名为“HidD_GetHidGuid”的入口点。...有时候报这种错 一切的一切都是DLL的库名引起的 一开始我一直用HID作为库名,怎样改都有错 后面改成USBHID 神奇的就可以了 初步怀疑是系统有了这个库名,但应该也不影响呀。
目录 配置项目构建 添加任务 添加源代码地址和登录凭据 添加构建触发器 TFS添加WebHook 添加构建步骤 后端UI API端 配置项目构建 1、添加任务...(比如TFS)添加WebHook(如果服务器不支持添加WebHook,可以考虑使用“轮询SCM”,此处未作尝试) 4、TFS添加WebHook 打开TFS 选中项目 右边设置 选择服务挂钩 ?...该类型事件的触发器=>选择 “已推送代码” 筛选器 存储库=>选择对应的存储库 分支=>选择要推送的分支 下一步 ?...设置和身份验证用户名和密码 填写Jenkins访问地址和用户名、密码 集成级别=>选择“Jenkins的TFS插件” 点击测试按钮: ?...site=站点名',UserName='WebDeploy用户',Password='WebDeploy用户密码',AuthType='Basic' %WORKSPACE%:Jenkins中当前编译项工作目录
第一步是我们将停止做代码炸弹,这是我们以前用MEF做的。代码炸弹本质上是团队实际工作的内部系统对公共源代码的半定期更新。这个问题有几个原因。...至少您可以期待基于Markdown的文档,类似于Mad的C#设计说明。我们的另一个想法是记录我们的设计会议并在Channel 9上分享。我们需要弄清楚如何才能以一定的节奏进行此操作。...我们计划主要使用GitHub问题来跟踪错误。棘手的是,我们还有其他的来源,特别是用户语音、连接和内部TFS。我们对这项工作的看法如下: 用户语音。...内部TFS。虽然我们不再将TF版本控制用于.NET Core,但大块的DevDiv仍然可以使用。为了进行跨小组的协作,我们可能会继续允许团队在TFS中向我们提交错误。...我们还想到了将GitHub问题标记为待办事项,以便在宣传中表明我们希望您在特定工作项上提供帮助。 通常,所有贡献都将使用GitHub的pull request模型完成。
系列目录 【已更新最新开发文章,点击查看详细】 源文件/模型转换完成之后,可以获取模型的具体数据。本篇介绍根据文件ID查询满足条件的构件ID列表。...请求地址:GET https://api.bimface.com/data/v2/files/{fileId}/elementIds 说明:根据六个维度(专业,系统类型,楼层,构件类型,族,族类型)获取对应的构件..."1109329", "1107236", "1109325", "1107238", "1109328" ] } C#..., ex); 45 } 46 } 其中调用到的 httpManager.Get() 方法,请参考《C# HTTP系列》 封装的其他请求参数类 FileElementsGetRequest...ID项 61 /// 62 [JsonProperty("paginationNo", NullValueHandling = NullValueHandling.Ignore
目录 配置项目构建 添加任务 添加源代码地址和登录凭据 添加构建触发器 TFS添加WebHook 添加构建步骤 后端UI API端 配置项目构建 1 添加任务 ?...(比如TFS)添加WebHook(如果服务器不支持添加WebHook,可以考虑使用“轮询SCM”,此处未作尝试) 4 TFS添加WebHook 打开TFS 选中项目 右边设置 选择服务挂钩 ?...该类型事件的触发器=>选择 “已推送代码” 筛选器 存储库=>选择对应的存储库 分支=>选择要推送的分支 下一步 ?...设置和身份验证用户名和密码 填写Jenkins访问地址和用户名、密码 集成级别=>选择“Jenkins的TFS插件” 点击测试按钮: ?...site=站点名',UserName='WebDeploy用户',Password='WebDeploy用户密码',AuthType='Basic' %WORKSPACE%:Jenkins中当前编译项工作目录
另外,Installutil.exe也是用的这个方法 此前我一直用的就是InstallHelper法,但最近需要安装一个服务时却遇到问题,就是承载该服务的程序文件(exe),同时又是个带用户界面的桌面程序...另外有关如何让一个exe即是服务又是桌面程序的问题,请参看园子里其它猿友的文章,或者有闲心我也会写一篇),这就需要安装该服务时,给映像文件路径带上参数,但InstallHelper不支持带参数,勉强带上参数的话...而ServiceInstaller.Install内部正是调用CreateService这个系统API来执行服务的安装。...回到正题,弄清InstallHelper最终是调用CreateService后,直接看后者支不支持带参数安装就行了,答案显然是支持的(该API文档在此),遂写了个基于API的操作类,问题解决。...,由API返回 int numEnumerated = 0; //从属服务数,由API返回 //先尝试以空结构获取,如获取成功说明从属服务为空,否则拿到上述俩值
工作项管理 TFS中的工作项一旦创建了,则不可删除。其主要考虑应该是微软觉得既然有计划要新增工作项就一定是存在的,可以提供修改,但不再UI页面提供删除的方法。...IDNum:要删除的ID序号。 3. 模板定制 3.1. 方法 TFS支持工作项、过程模板的自定义。...工作项 定制工作项,可以定制BUG、任务等,或者新建一个工作项。本文以修改默认的任务工作项为例说明如何操作。 ...是定义任务工作项出现的字段。 ...Layout是定义创建工作项弹出的对话框的字段布局。 Workflow是定义工作项状态变化和操作的工作流。 3.2.1.
C# extension for Visual Studio Code 这个插件最重要的功能: Lightweight development tools for .NET Core....C# Extensions 这个插件最有用的功能是可以右键新建C#类和C#接口,同时支持各种code snippets,例如 ctor 、prop等,具体功能特性,可以查看插件的说明。 ? 3....Auto-Using for C# 这个插件自动添加using引用。 ?...其他的还需要配置GitHub、TFS类似的源代码管理,TFS搞了两个插件,都不好使,后续搞定后再更新一次。...解决方案有了,很熟悉的感觉。 我们可以继续创建工程:右键sln,Add new project: ? 此时会弹出工程模板,此时我们选择ASP.NET Core Web API工程 ? 选择C# ?