草庐IT

代码雨

全部标签

c# - 避免用户代码调用 C# 中的反射

我正在为我目前正在教授的类(class)实现一个自动“评估器”。总体思路是每个学生都提供一个实现了一些算法的DLL。我的评估员使用反射加载所有这些DLL,找到学生实现并在锦标赛中评估它们。所有这些算法都是黑盒优化器,实现了以下接口(interface)publicinterfaceIContinuousMetaheuristic{//...SomeunimportantpropertiesVectorEvaluate(Functionfunction,intmaxEvaluations,...);}Function的类定义(至少是相关部分)是:publicclassFunction:{

c# - 使用 Task.Factory.StartNew().ContinueWith() 的单元测试代码

所以我有一些代码Task.Factory.StartNew(()=>this.listener.Start()).ContinueWith((task)=>{if(task.IsCompleted){this.status=WorkerStatus.Started;this.RaiseStatusChanged();this.LogInformationMessage("WorkerStarted.");}});当我测试时,我正在模拟所有依赖对象(namleythis.listener.Start())。问题是测试在调用ContinueWith之前完成执行。当我调试时,由于我单步执行代

c# - 代码契约-ForAll-静态验证支持什么

Contract.ForAll的静态检查有很多信息只有有限的支持或没有支持。我做了很多实验,发现它可以用于:Contract.ForAll(items,i=>i!=null)Contract.ForAll(items,p)其中p类型为Predicate它不能用于:实地考察属性(property)访问权方法组(反正我觉得delegate是分配在这里的)实例方法调用我的问题是:还有哪些其他类型的代码ForAll可以一起工作吗?代码契约(Contract)是否在Contract.ForAll(items,i=>i!=null)之后promise已证明,当稍后在代码中从列表中取出一项时(即通过

c# - 如何通过 C# 读取 PowerShell 退出代码

我正在使用System.Management.Automation.Runspaces来执行PowerShell脚本。有没有我可以读取给定脚本的退出代码的选项?usingSystem.IO;usingSystem.Management.Automation.Runspaces;usingSystem.Collections.ObjectModel;usingSystem.Management.Automation;namespacePowerShell{publicclassPowerShellExecuter{publicCollectionRunPsScript(stringpsS

c# - 创建 ADO.NET 模型时如何在应用程序代码中设置敏感数据?d 一些标记 a

我正在为数据库创建一个模型,并且对ADO.NET实体模型向导中的以下语句感到好奇,您可以在其中选择是或否作为存储敏感数据的位置-"No,excludesensitivedatafromtheconnectionstring.Iwillsetitinmyapplicationcode."我从来没有使用过这个选项,只是想知道我是否在必须指定我的敏感数据的地方使用过。有什么想法吗? 最佳答案 设置模型构造函数的连接字符串参数:MyEntities1db=newMyEntities1("metadata=res://*/Model1.csd

c# - 我可以将契约(Contract)留在代码中,以便与非代码契约(Contract)开发人员使用的代码库合并吗?

在过去的几个月里,我一直在为我的公司开发一个副项目,但现在上级决定它非常适合现有产品。我一直在使用Microsoft的CodeContracts开发用于静态类型检查的辅助项目(部分原因是我以前没有使用过它们并且渴望学习)。我的问题是,如果我将我的代码checkin到代码库中并使用Contracts,是否所有其他开发人员都需要安装CodeContracts工具才能继续开发?我知道他们都没有安装它,而且我是这里的初级人员,所以我怀疑我能否说服他们所有人都安装它。我使用的是.Net4.5,因此包含了代码契约库,但我想知道VisualStudio是否会提示它们没有使用CONTRACTS_FUL

c# - 获取使用 C#/ASP.NET 创建的脚手架代码的最快方法

在任何项目的开始,一旦您获得了您的对象模型,就会有一段时间单调乏味,因为您需要编写所需的框架代码。是否有任何工具可以帮助我完成这项任务(如果可能,包括单元测试框架),有点像Rails中的脚手架功能?谢谢。 最佳答案 这实际上取决于您使用的框架堆栈:ScaffoldingforMonorail+ActiveRecordASP.NETMVC+LinqtoSQLWebforms+dynamicdataASP.NETMVC+Subsonic除此之外,您始终可以使用CodeSmith编写自己的“脚手架”代码或MyGeneration另见thi

c# - 是否有用于 .net 的序列化程序将输出 c# 代码?

我正在寻找一个序列化程序,它可以接受一个实例,并将其序列化为一个包含c#代码的字符串,代表图形的内容。该类的功能类似于JSON.NET中的SerializeObject。我知道只有一小部分结构可以工作,但我感兴趣的结构非常简单而且它们会起作用。如果有人知Prop有类似功能的VisualStudioVisualizer,可加分。编辑:输出将在编译时用于不同的应用程序。我不需要在运行时反序列化输出(c#代码),它会保存到文件中以供分析。varfoo=newFoo(){Number=1,Bar=newBar(){Str="Bar"}};stringsourceCode=Magic.Seria

c# - 如何自动化测试中等信任代码

我想编写以中等信任度运行并在需要完全信任度时失败的自动化测试。我正在编写一个库,其中某些功能仅在完全信任的情况下可用,我想验证我希望在中等信任情况下运行的代码是否可以正常工作。如果还想知道如果我更改需要完全信任的类,我的测试将失败。我已尝试创建另一个AppDomain并加载中等信任PolicyLevel,但在尝试运行跨AppDomain回调时,我总是遇到程序集错误或其依赖项无法加载。有办法解决这个问题吗?更新:基于回复,这是我所拥有的。请注意,您正在测试的类必须扩展MarshalByRefObject。这是非常有限的,但我看不到解决方法。usingSystem;usingSystem.

使用 HashSet(pluralsight 代码)的假数据库上下文的 C# 单元测试(新 Q)

简短版:在此视频中,ScottAllen先生explainshowtotestacontroller.但是他没有展示类的完整代码:FakeDbContext。有没有人可以帮我完成它?他在“测试Controller”视频的06分15分展示了类(class)。长版在学校,我有一门选修课,我们学习C#。我的考试项目是一个使用MVC3的ASP站点。为了快速学习,我看过PluralSight的视频。我的问题是关于thisvideo中的一些代码他解释了如何测试Controller。所以我试过:我制作了一个具有简单索引方法的Controller:publicclassRound1Controller