草庐IT

read_actions

全部标签

c# - 创建一个 Action<T> 到 "set"属性,当我为 "get"提供 LINQ 表达式时

我希望能够生成编译表达式来设置属性,给定为属性提供“get”方法的lambda表达式。这是我正在寻找的:publicActionCreateSetter(Expression>getter){//returnsacompiledactionusingthedetailsofthegetterexpressiontree,ornull//ifthewritepropertyisnotdefined.}我仍在努力理解各种类型的Expression类,因此,如果您能为我指明正确的方向,那就太好了。 最佳答案 以@Ani的回答为起点,您可以

c# - 如何在 ASP.NET CORE 中使用具有依赖注入(inject)的 Action 过滤器?

我在我的ASP.NETCORE应用程序中到处使用基于构造函数的依赖注入(inject),我还需要在我的操作过滤器中解析依赖关系:publicclassMyAttribute:ActionFilterAttribute{publicintLimit{get;set;}//somecustomparameterspassedfromActionprivateICustomServiceCustomService{get;}//thismustberesolvedpublicMyAttribute(){}publicoverrideasyncTaskOnActionExecutionAsyn

c# - 我可以简单地 'read' 一个正在使用的文件吗?

我正在尝试使用StreamReader读取文件,但它总是被另一个进程使用,所以我收到此错误:Theprocesscannotaccessthefile'\arfjwknasgmed17\C$\FLAGCONDITION\CP-ARFJN-FLAG.XLS'becauseitisbeingusedbyanotherprocess.有没有一种方法我可以在不复制的情况下阅读它?或者这是我唯一的选择? 最佳答案 只有当打开文件的程序首先指定对该文件的读取共享权限时,您才能读取该文件。如果该文件确实没有读取共享权限,您将无法首先复制它。如果您

c# - 为什么 Asp.net MVC 不能区分具有不同参数的两个 Action ?

我正在尝试在我的Asp.netMVC应用程序中使用两种不同的帐户注册方法,一种供一般用户注册,另一种供使用特定注册token注册的用户使用。因此,我的AccountController中有以下方法签名:publicvirtualActionResultRegister(){...}publicvirtualActionResultRegister(GuidregistrationToken){...}但是,当我转到http://localhost/Account/Register时,我得到一个异常,即当前请求在这两个操作之间不明确。我的印象是,如果没有传入registrationTok

c# - 什么都不做的最优雅的 lambda 表达式( Action )是什么?

所以我目前有以下代码:BCLThreadbclThread=newBCLThread(()=>Thread.Sleep(0));因为我想不出另一种方式来说明我实际上不希望该方法做某事。有没有其他更优雅的方法来实现这一目标?谢谢 最佳答案 为什么不BCLThreadbclThread=newBCLThread(()=>{});? 关于c#-什么都不做的最优雅的lambda表达式(Action)是什么?,我们在StackOverflow上找到一个类似的问题: ht

c# - 如何使用 ajax 调用将 formcollection 传递给一个 Action ?

我正在尝试用ajax调用替换表单提交。该操作需要formcollection,我不想创建新模型。所以我需要通过ajax调用传递整个表单(就像表单提交一样)。我尝试序列化并使用Json,但formcollection为空。这是我的Action签名:publicActionResultCompleteRegisteration(FormCollectionformCollection)这是我的提交按钮点击:varform=$("#onlineform").serialize();$.ajax({url:"/Register/CompleteRegisteration",datatype:'

c# - 为什么在使用异步方法时会捕获类作用域变量,而在使用 Action<T> 时却不会(内部代码示例)?

遛狗的时候我在想Action,Func,Task,async/await(是的,Nerd,我知道……)并在脑海中构建了一个小测试程序,想知道答案是什么。我注意到我不确定结果,所以我创建了两个简单的测试。这是设置:我有一个类作用域变量(字符串)。它被分配了一个初始值。变量作为参数传递给类方法。该方法不会直接执行,而是分配给“Action”。在Action执行之前,我更改了变量的值。输出结果是什么?初始值,还是更改后的值?有点意外但可以理解,输出是改变后的值。我的解释是:在Action执行之前,变量不会被压入堆栈,所以它将是被改变的。publicclassfoo{stringtoken;p

C# Action 、闭包和垃圾收集

我是否需要将MyAction设置为null以便垃圾回收能够继续处理这些类中的任何一个?当两个类的生命周期几乎相同时,我就不那么担心了。当Class1的生命周期比Class2长得多或Class2的生命周期比Class1长得多时,我的问题更合适。这里的代码被精简了。假设Class1和Class2都包含其他可能影响其生命周期的成员和方法。publicclassClass1:IDisposable{publicActionMyAction{get;set;}//Isthisnecessary?publicvoidDispose(){MyAction=null;}}publicclassClas

c# - 带有参数的 Dispatch.Invoke( new Action...)

以前我有Dispatcher.Invoke(newAction(()=>colorManager.Update()));从另一个线程更新显示到WPF。由于设计原因,我不得不更改程序,并且我必须将ColorImageFrame参数传递到我的ColorStreamManager.Update()方法中。正在关注this链接,我将调度程序修改为:Dispatcher.Invoke(newAction((p,v)=>p.Update(v)));它编译正常,但根本无法运行。VS2010说“参数计数不匹配。”在我的ColorStreamManager.Update()方法中我有RaisePrope

c# - SMTP 异常 : Unable to read data from the transport connection: net_io_connectionclosed

我知道这个问题看起来像是许多其他问题的重复,但事实并非如此。每当我尝试通过我的Web应用程序在我的本地计算机上发送电子邮件时,都会抛出SMTPException,异常是://onthisline:SmtpServer.Send(mail);Unabletoreaddatafromthetransportconnection:net_io_connectionclosed.虽然生产代码运行良好,相同的代码、相同的连接、相同的凭据,我使用的是IP而不是别名,我试图关闭本地机器上的防火墙,但没有任何帮助解决这个问题。虽然以前在我的本地机器上工作过,但任何人都可以提示引发此问题的可能是什么问题