草庐IT

when_start

全部标签

c# - 我必须处理 Process.Start(url) 吗?

简单问题:我想使用默认浏览器打开一个URL,所以我只执行Process.Start(url)。但是,我注意到这会返回一个IDisposable对象。所以现在我想知道我是否必须处理它?或者,就此而言,如果我的应用程序以任何方式负责此过程?预期的功能只是“即发即忘”,我不想让我的应用程序成为新进程的父进程,也不需要与之交互。我在SO上看到了一些类似但不相关的问题,这些问题似乎在说简单地在URL上调用Process.Start就可以了,但我不想遇到一些难以调试的内存泄漏/资源耗尽问题导致我我的程序保留对长期死掉的浏览器进程的引用。 最佳答案

c# - 带有 TPH 和枚举的 Entity Framework 中的多个 CASE WHEN

在EF6.1.3上使用TPH时,我有一个非常奇怪的行为。这是一个基本的重现示例:publicclassBaseType{publicintId{get;set;}}publicclassTypeA:BaseType{publicstringPropA{get;set;}}publicclassTypeB:BaseType{publicdecimalPropB{get;set;}publicOneEnumPropEnum{get;set;}}publicclassTypeC:TypeB{publicintPropC{get;set;}}publicenumOneEnum{Foo,Bar}

c# - Hangfire 禁用并发执行 : What happens when the timeout expires?

根据Hangfire0.8.2announcementpost,Hangfire有一个DisableConcurrentExecution过滤器,当应用于一个方法时,它会阻止该方法的多个实例同时执行。DisableConcurrentExecution过滤器采用timeoutInSecondsint参数。来自链接文章中的示例:[DisableConcurrentExecution(timeoutInSeconds:10*60)]publicvoidSomeMethod(){//Operationsperformedinsideadistributedlock}我的问题是:给定一个正在等

c# - 公约问题: When do you use a Getter/Setter function rather than using a Property

令我印象深刻的是,在尝试操作类中的字段时应该使用C#中的属性。但是当涉及到复杂的计算或数据库时,我们应该使用getter/setter。这是正确的吗?什么时候对属性使用s/getter? 最佳答案 .NET设计指南在Propertiesvs.Methods中提供了这个问题的一些答案。部分。基本上,属性与字段具有相同的语义。你不应该让一个属性抛出异常,属性不应该有副作用,顺序不重要,属性应该相对快速地返回。如果这些事情中的任何一个可能发生,最好使用一种方法。该准则还建议使用返回数组的方法。在决定是使用属性还是方法时,如果我将其视为字段

c# - MVC : what code gets called when you click the "submit" button?

MVC新手问题;我通过玩耍而不是阅读手册来学习...:)我在创建“编辑”View时发现自动生成的View包含一个“提交”按钮:但是在幕后调用什么代码来执行此保存操作?具体来说,这个View的基础模型在我想要调用的代码中有自己的奇特保存逻辑。我如何让View调用我的代码,而不是在幕后无形地调用任何标准代码? 最佳答案 定义发生什么的不是按钮,而是表单本身。提交类型的按钮(每个表单一个)仅触发表单提交,由表单本身处理。一个表单有一个Action——例如:操作是一个URL,浏览器会收集表单中所有字段的值()并将它们发布到指定的url。在A

c# - TaskCompletionSource 抛出 "An attempt was made to transition a task to a final state when it had already completed"

我想使用TaskCompletionSource来包装MyService这是一个简单的服务:publicstaticTaskProcessAsync(MyServiceservice,intparameter){vartcs=newTaskCompletionSource();//EverytimeProccessAsynciscalledthisassignstoCompleted!service.Completed+=(sender,e)=>{tcs.SetResult(e.Result);};service.RunAsync(parameter);returntcs.Task;}

c# - 装箱和拆箱 : when does it come up?

所以我明白了什么是装箱和拆箱。它什么时候出现在现实世界的代码中,或者在什么例子中它是一个问题?我无法想象做这样的事情:inti=123;objecto=i;//Boxingintj=(int)o;//Unboxing...但这几乎可以肯定是过于简单化了,我什至可能在不知不觉中进行了装箱/拆箱。 最佳答案 与泛型之前相比,现在问题不大了。现在,例如,我们可以使用:Listx=newList();x.Add(10);inty=x[0];根本不需要装箱或拆箱。以前,我们有:ArrayListx=newArrayList();x.Add(1

c# - finally block when 后编译器生成无限循环

我使用的是针对.Net4.6.2的标准VS2015编译器。编译器在finallyblock失败后发出无限循环。一些例子:调试:IL_0000:nop.try{IL_0001:nopIL_0002:nopIL_0003:leave.sIL_000c}//end.tryfinally{IL_0005:nopIL_0006:br.sIL_000a//loopstart(head:IL_000a)IL_0008:nopIL_0009:nopIL_000a:br.sIL_0008//endloop}//endhandler//loopstart(head:IL_000c)IL_000c:br.s

c# - 为什么 EPPlus 告诉我 "Can' t set color when patterntype is not set"当我设置了 PatternType 时?

我有这段代码来尝试设置标题行的样式:worksheet.Cells["A32:D32"].Style.Font.Name="Georgia";worksheet.Cells["A32:D32"].Style.Font.Bold=true;worksheet.Cells["A32:D32"].Style.Font.Size=16;worksheet.Cells["A32:D32"].Style.Fill.PatternType=ExcelFillStyle.Solid;worksheet.Cells["A32:D33"].Style.Fill.BackgroundColor.SetCol

c# - Windows 服务作为本地系统帐户停留在 "starting"状态

我在C#中通过控制台应用程序开发了一个http服务器,并决定将它变成一个Windows服务,以便能够在无需登录机器的情况下对其进行初始化。我遵循了HowtocreateWindowsService中的所有步骤并将帐户选择为“本地系统”,但是当我在我的服务器机器上安装并按下开始按钮时,它需要一段时间并出现以下错误:Erro1053:Theservicedidnotrespondtothestartorcontrolrequestintimelyfashion.在那之后,服务状态停留在“正在启动”,应用程序无法运行,我什至无法停止服务。为了解决这个问题,我将其更改为“网络服务”,因此它正常