草庐IT

action_mode_close_button

全部标签

c# - MVC4 + async/await + 在 Action 完成前返回响应

在我的MVC4应用程序中,我需要添加一个Controller来上传和处理大文件。文件上传后,我需要立即开始对该文件的异步处理,并在不等待处理完成的情况下将响应返回给浏览器。显然我可以启动一个新线程来手动处理文件,但我想知道我是否可以使用.net4.5引入的异步/等待机制来实现这种情况为了测试这个概念,我尝试了这样的事情:publicasyncTaskTest(){TestAsync();returnView("Test");}publicasyncvoidTestAsync(){awaitLongRunning();}privateTaskLongRunning(){returnTas

c# - 为什么以这种方式调用 Action 成员是无效语法?

以下代码会产生语法错误:classFoo{publicActiona=()=>{};}voiddoSomething(){varfoo=newFoo();(foo.a)();//errorCS1525:Invalidexpressionterm')'}但是,以下替代方案都有效:foo.a();//worksActiona=foo.a;a();//works为什么会这样?(foo.a)是一个Action;为什么我不能调用它? 最佳答案 会发生什么?那是因为这段代码(foo.a)();会评估为一个cast-expression,如foo

c# - 具有四个以上参数(方法参数)的 Action 委托(delegate)

我写了一个辅助类,它使用Action-delegate作为方法参数。像这样:publicvoidSomeMethod(ActionmethodToExecute,Targument);根据MSDN,您可以声明最大值。Action委托(delegate)的4个参数:Action.现在我想调用一个需要5个的方法!争论。我怎么能这样做?最好的解决方案是我可以使用动态数量的方法参数。谢谢 最佳答案 声明你需要的Action委托(delegate),这没什么神奇的:publicdelegatevoidAction(T1p1,T2p2,T3p3

c# - 如何在 C# 中将多个 Action<T> 合并为一个 Action<T>?

如何在循环中构建一个ActionAction?解释一下(抱歉太长了)我有以下内容:publicinterfaceISomeInterface{voidMethodOne();voidMethodTwo(stringfolder);}publicclassSomeFinder:ISomeInterface{//elided}和一个使用上面的类:publicMapBuilder.BuildMap(Actionaction,stringusedByISomeInterfaceMethods){varfinder=newSomeFinder();action(finder);}我可以用其中任何

C# Action lambda 限制

为什么这个lambda表达式不能编译?Actiona=()=>thrownewInvalidOperationException();猜想很好,但我非常感谢对C#语言规范或其他文档的引用。是的,我知道以下内容是有效的并且可以编译:Actiona=()=>{thrownewInvalidOperationException();};thisblogpost中描述了我将使用类似内容的上下文. 最佳答案 嗯。我有一个答案,但不是很好。我不相信有“throw”表达式。有一个throw语句,但不仅仅是一个表达式。将其与“Console.Wri

c# - 底层连接已关闭 : The connection was closed unexpectedly

此异常始终在SOAP请求上抛出,该请求需要将近三分钟的时间才能接收到,大小为2.25兆字节。在网上搜索时,我发现各种各样的帖子似乎都是关于在请求中设置header,有些希望我不要发送“Expect:”header,有些则希望我发送“Keep-Alive:”header,但不管我发送的header是什么,我仍然会收到这个讨厌的错误。我不认为设置任何header是我的答案,因为我可以使用“curl”重新创建完全相同的请求,并且响应最终会毫无问题地返回。我的.我觉得我已经没有选择了。如果有人可以提供任何帮助,我将不胜感激。其他一些需要注意的事情是,我从中请求数据的服务器不在我的手中,而且这些

c# - X 毫秒后触发一个 Action 开始

我正在开发一个XamarinForms移动应用程序,它有一个包含SearchBar、ListView和Map控件的页面。ListView包含一个地址列表,这些地址在map上显示为图钉。当用户在SearchBar中键入内容时,ListView会自动更新(通过ViewModel绑定(bind))。为列表过滤数据源的ViewModel方法看起来像这样......voidFilterList(){listDataSource=newObservableCollection(locationData.Where(l=>l.Address.Contains(searchBar.Text)));//

C#,NUnit : Is it possible to test that a DateTime is very close, 但不一定等于另一个?

假设我有这个测试:[Test]publicvoidSomeTest(){varmessage=newThing("foobar");Assert.That(thing.Created,Is.EqualTo(DateTime.Now));}例如,这可能会使Thing的构造函数失败,这会花费一些时间。是否有某种NUnit构造允许我指定Created时间不必完全等于DateTime.Now,只要它在一秒之内?是的,我知道构造函数不应该花费太多时间,但只是作为一个例子:p 最佳答案 没试过,但根据thedocs看起来这应该可行:Assert

c# - 如何删除 'Click' 的 'Button' 事件的所有事件处理程序?

我有一个按钮控件,我需要删除所有附加到其Clickevent的事件处理程序.这怎么可能?Buttonbutton=GetButton();button.Click.RemoveAllEventHandlers(); 最佳答案 Note:SincethequestiononwhichIpostedmyoriginalanswerwasclosedasaduplicateofthisquestion,I'mcross-postinganimprovedversionofmyanswerhere.Thisansweronlyapplies

c# - 如何使用 Action 过滤器和 HttpResponseMessage 在 Web API 中使用 ETag

我有一个ASP.NetWebAPIController,它只返回用户列表。publicsealedclassUserController:ApiController{[EnableTag]publicHttpResponseMessageGet(){varuserList=this.RetrieveUserList();//Thiswillreturnlistofusersthis.responseMessage=newHttpResponseMessage(HttpStatusCode.OK){Content=newObjectContent>(userList,newJsonMed