草庐IT

c# - 在构建服务器上注册 COM 引用的 DLL

我们正在开发引用一些COM库(例如AutoIT)的C#应用程序。我在第3方“Libs”文件夹中包含了源代码管理下的所有引用组件。问题是COMdll在.csproj文件中没有HintPath属性,我认为这些必须使用regsvr32(或使用某种脚本)手动注册。我目前正在研究创建一个将在每次构建之前运行的MSBuild脚本,但是我不知道我是应该手动调用regsvr32.exe还是使用一些预定义的MSBuild任务?目前,这是我尝试进行的测试:这会产生错误,指出我放置在给定文件夹中的DLL不是有效的DLL。这个问题有什么好的解决方案?编辑:引用COMdll的项目在.csproj文件中有类似的内

c# - TeamCity 无法使用 C# 7 构建项目

当我在我们最新的代码更新中添加新的输出变量语法时,TeamCity抛出错误:if(Enum.TryParse(input,outMyProject.ClassificationTypeclassification)){result.Classification=classification;}TeamCity抛出此错误:[Csc]MyProject\MyCode.cs(125,111):错误CS1003:语法错误,','expected代码在VisualStudio中构建并运行良好。 最佳答案 TeamCityAgent机器上的MS

c# - 引用在调试/构建时消失(C#、VB.NET、VS2010)

我正在为一些组件使用MagicLibrary。我知道它是用VisualStudio2003编写的,并在VisualC#Express2010中重新编译了它。它编译得很好,我可以在文件夹中看到该库。然后,我在VisualC#Express2010中创建了一个新项目,并将组件MagicalLocalLibrary.dll添加到工具箱中。他们看起来很好,没有错误。我将工具箱中的一个控件放入我的窗体中,看起来不错。然后我调试(看看是否会发生任何错误),我看到引用MagicalLibrary消失了,我得到了错误:Thetypeornamespacename'Crownwood'couldnotb

c# - 如何使用 AutoFixture 在保留类型自定义的同时使用自定义属性进行构建?

我正在尝试使用autofixture来创建一个对象,但我希望某些属性始终为默认属性(而其余属性可以自动生成)。但是,每当我设置自定义项时,它都会在我使用自定义项构建时被覆盖。voidMain(){varfixture=newFixture();fixture.Customize(composer=>composer.With(p=>p.Name,"Ben"));varperson=fixture.Build().With(p=>p.DateOfBirth,newDateTime(1900,1,1)).Create();/*RESULTOFpersonbelowNamenullDateO

c# - 使用 TFS 2017 BuildAgent 构建解决方案时出现错误 CS0234

在尝试使用TFS构建定义进行构建时,我遇到了以下问题。执行构建时,代理会记录以下错误:ErrorCS0234:Thetypeornamespacename'VisualStudio'doesnotexistinthenamespace'Microsoft'(areyoumissinganassemblyreference?)ErrorCS0246:Thetypeornamespacename'TestInitializeAttribute'couldnotbefound(areyoumissingausingdirectiveoranassemblyreference?)ErrorCS

c# - web.config 转换未应用于发布或构建安装包

今天我开始使用VS2010中的web.config转换。首先,我尝试了很多关于这个主题的博客文章中的相同的helloworld示例-更新一个连接字符串。我创建了如下所示的最小示例(类似于thisblog中的示例)。问题是,每当我对.csproj文件执行右键单击->“发布”或右键单击->“构建部署包”时,我都没有得到正确的输出。我得到的不是转换后的web.config,而是noweb.config,而是包含两个转换文件。我做错了什么?非常感谢收到任何帮助!网络配置:网络调试配置:Web.release.config: 最佳答案 不可避

c# - 如何从 XmlReader 构建 XmlNode

我正在解析大量大文件,分析后我的瓶颈是:XmlDocumentdoc=newXmlDocument();doc.Load(filename);这种方法非常方便,因为我可以像这样提取节点:XmlNodeListnodeList=doc.SelectNodes("myXPath");我正在切换到XmlReader,但是当我找到我需要提取的元素时,我对如何从中构建XmlNode感到困惑,因为我对XmlReader不太熟悉:XmlReaderxmlReader=XmlReader.Create(fileName);while(xmlReader.Read()){//keepreadingunt

c# - Visual Studio 单元测试在 TFS 构建上运行速度较慢

我的项目有1000多个单元测试,在本地机器上,所有测试都在不到10秒的时间内完成。但是,当它们在TFSBuild上运行时,某些测试的运行速度明显低于其他测试。其中3个在大约1-2分钟内运行,其他4个在5-30秒内运行,而其他则在几分之一秒内运行。我注意到所有那些较慢的测试都使用来自MicrosoftFakes的假货,并且每个测试都是同类中第一个运行的。但是很多其他测试也使用假货(有些更密集)并定期运行。我想知道是什么导致了这种放缓,我该如何解决。编辑:我注意到每个较慢的测试都在无模拟测试之后运行。也许这种减速是由ShimsContext的初始化引起的。在我的测试类中,ShimsCont

c# - 是否有用于 C# 的 pretty-print /代码格式化程序(作为构建系统的一部分)?

是否有用于C#的pretty-print/代码格式化程序(作为构建系统的一部分)?读作:“生活在VisualStudio之外”。对于Java、C++/C、Go似乎有很多这样的东西——所以C#也应该有一些位于IDE之外的代码格式化程序似乎是非常合理的?(我实际上想将格式化程序与StyleCop之类的东西结合起来,并让开发人员在提交之前将其作为流程的一部分运行)。注意:不是语法高亮显示,就像网页中的代码一样。相反,代码美化器,或代码pretty-print,它将获取代码并将其格式化为样式/标准编码格式......StyleCop会进行样式检查以查看代码是否符合格式。

c# - 无法在 Visual Studio 2015 中构建通用应用程序

我无法在VisualStudio2015中构建Windows通用应用程序。应用程序无法启动并显示此JIT调试器窗口:StackOverflow上有一个类似的问题,我找不到但会继续寻找。一种可能的修复方法是切换到目标8.1然后切换回来,但我无法为任何通用应用程序定位8.1。调试程序会显示以下详细信息:APP_NAME.exe中的0x7523DAD8(KernelBase.dll)抛出异常:0x04242420(参数:0x31415927、0x558B0000、0x004FF1D0)。Unhandledexceptionat0x00007FFF60BB1F28(KernelBase.dll