草庐IT

Build-in

全部标签

c# - 在带有 Project.Build 的程序中使用 2013 msbuild

我们的测试使用Microsoft.Build.Evaluation.Project.Build构建项目。适用于VS2010和2012。问题出在VS2013,它从msbuild中获取C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exever4.0.30319.18408而不是来自VS2013C:\ProgramFiles(x86)\MSBuild\12.0\Bin\MSBuild.exever12.0.21005.1有什么方法可以让它获取VS2013msbuild?可能是在调用构建方法之前添加到.proj文件或设置环境值?

c# - Entity Framework Linq 查询 : runs instantly in SSMS and 8-10s in EF LINQ 出现问题

我在SQL中得到了以下查询(混淆了变量名),它试图获取值(Ch、Wa、Bu、Hi),从而导致最大数量(cnt)的Pi条目。selecttop1Pi.Ch,Pi.Wa,Pi.Bu,Pi.Hi,COUNT(1)ascntfromProduct,Si,PiwhereProduct.Id=Si.ProductIdandSi.Id=Pi.SiIdandProduct.Code=@CodeParametergroupbyPi.Ch,Pi.Wa,Pi.Bu,Pi.Hiorderbycntdesc它在我们的生产数据库上的SQL管理工作室中立即运行。我已经在C#LINQ和EntityFramework中

c# - 微软报告 : Setting subreport parameters in code

如何设置子报表的参数?我已成功连接到SubreportProcessing事件,我可以通过e.ReportPath找到正确的子报表,并且可以通过e.DataSources.Add添加数据源。但是我找不到添加报告参数的方法??我发现有人建议将它们添加到主报告中,但我真的不想那样做,因为主报告根本不需要连接到子报告,除此之外正在包装子报表。我使用一份报告作为主模板,打印报告名称、页码等。子报告将成为报告本身。如果我只能找到一种方法来设置子报告的那些报告参数,我会很高兴...澄清:创建/定义参数不是问题。问题是设置它们的值。我认为自然而然的事情就是在SubreportProcessing事件

c# - 抑制 xsi :nil but still show Empty Element when Serializing in . 网络

我有一个包含20多个字符串属性的C#类。我将其中大约四分之一设置为实际值。我想序列化该类并获得的输出属性publicstringEmptyAttribute{get;set;}我不希望输出是我正在使用下面的类publicclassXmlTextWriterFull:XmlTextWriter{publicXmlTextWriterFull(stringfilename):base(filename,Encoding.UTF8){}publicoverridevoidWriteEndElement(){base.WriteFullEndElement();base.WriteRaw(En

c# - 由契约(Contract)和 build 者设计

我正在为学校目的实现我自己的ArrayList,但为了让事情更有趣,我正在尝试使用C#4.0代码契约。一切都很好,直到我需要将Contracts添加到构造函数中。我应该在空参数构造函数中添加Contract.Ensures()吗?publicArrayList(intcapacity){Contract.Requires(capacity>0);Contract.Ensures(Size==capacity);_array=newT[capacity];}publicArrayList():this(32){Contract.Ensures(Size==32);}我会说是的,每个方法都

c# - VS 2017即时窗口显示 "Internal error in the C# compiler"

我使用VisualStudio2017(15.6.6)。调试时,我尝试在即时窗口中计算简单的表达式,如inta=2;。一个错误InternalerrorintheC#compiler被抛出。我尝试按照thisquestion中的提示启用UseManagedCompatibilityMode但它没有帮助。感谢您的帮助。 最佳答案 进一步搜索我发现thisissueonGitHub答案建议还检查UsethelegacyC#andVBexpressionevaluators。VisualStudio会发出有关选中此选项的警告,但启用此选项

c# - 一对一关系导致异常 : AssociationSet is in the 'Deleted' state. 给定多重约束

我首先按照此处规定的方法使用EF代码建立了一对一的关系:UnidirectionalOne-To-OnerelationshipinEntityFramework我的映射看起来像这样......protectedoverridevoidOnModelCreating(DbModelBuildermodelBuilder){modelBuilder.Entity().HasRequired(i=>i.NewsItem).WithOptional(e=>e.Asset).Map(m=>m.MapKey("NewsItemId"));}但是当我得到这个异常时......Arelationsh

c# - 错误 : Can't choose dates on a DatePicker that fall outside a floating VSTO Add-In

我在这里记录了Microsoft的问题-Repro可供下载:https://connect.microsoft.com/VisualStudio/feedback/details/741454/value-change-event-doesnt-fire-for-datetimepicker-controls-used-in-vsto-add-ins如果您将DateTimePicker放在ExcelVSTOfloat加载项中并将其放置在日历下拉时,它位于加载项的边缘之外,请参见此处:选择绿色圆圈中的任何日期都按预期工作,但是当单击红色圆圈中的任何日期时,它只会关闭日历下拉菜单并且不会设

c# - 为什么 Console.In.ReadLineAsync 会阻塞?

使用以下代码启动一个新的控制台应用程序-classProgram{staticvoidMain(string[]args){while(true){TaskreadLineTask=Console.In.ReadLineAsync();Debug.WriteLine("hi");}}}Console.In.ReadLineAsync处于阻塞状态,直到在控制台中输入一行后才会返回。因此“Hi”永远不会写入控制台。在Console.In.ReadLineAsync上使用await也会阻塞。据我了解,新的AsyncCTP方法不会阻塞。这是什么原因?还有一个例子staticvoidMain(s

c# - 为什么 foreach(var i in array2D) 适用于多维数组?

给定以下C#代码:int[,]array2D=newint[10,10];intsum=0;foreach(variinarray2D){sum+=i;}问题是:是什么导致了i的类型?被正确推断为int?这一点都不明显,因为array2D是一个矩形数组。它没有实现IEnumerable.它还实现了一个GetEnumerator()方法,返回System.Collections.IEnumerator.因此,我希望i类型为object.我的代码使用的是.net4.03。相关问题:WhydoC#MultidimensionalarraysnotimplementIEnumerable?.