草庐IT

invoke-expression

全部标签

c# - WPF Dispatcher.Invoke 'hanging'

我有一个有点复杂的WPF应用程序,当尝试使用调度程序调用UI线程时,它似乎“挂起”或卡在Wait调用中。一般流程是:处理按钮的点击事件创建一个新线程(STA),它:创建演示者和UI的新实例,然后调用方法Disconnect断开连接然后在UI上设置一个名为Name的属性Name的setter然后使用以下代码设置属性:if(this.Dispatcher.Thread!=Thread.CurrentThread){this.Dispatcher.Invoke(DispatcherPriority.Normal,(ThreadStart)delegate{this.Name=value;//

c# - 单元测试错误 : This function can only be invoked from LINQ to Entities

我正在编写一个MVC5互联网应用程序,我的表达式如下:publicExpression>IsExpiresDateTimeLessThanMinimumDaysLeftInFreeTrialSubscription(intminimumDaysLeftInSubscriptionForEmail){returnAccount=>System.Data.Entity.DbFunctions.DiffHours(Account.freeTrialEndDate,DateTime.UtcNow)从数据库中检索数据时,上述表达式正确完成。但是,在编写使用上述表达式的单元测试时,出现以下错误:T

c# - 如何使用 Expression 构建匿名类型?

在C#3.0中,您可以使用Expression创建具有以下语法的类:varexp=Expression.New(typeof(MyClass));varlambda=LambdaExpression.Lambda(exp);objectmyObj=lambda.Compile().DynamicInvoke();但是如何使用Expression创建匿名类呢?//anonymousType=typeof(new{Name="abc",Num=123});TypeanonymousType=Expression.NewAnonymousType??? 最佳答案

c# - 理解 Expression.Invoke() 方法

我一直在理解PredicateBuilderJosephAlbahari编写的扩展方法,我看到了这个Expression.Invoke老实说,我无法通过以下方法理解它的原因:publicstaticExpression>Or(thisExpression>expr1,Expression>expr2){varinvokedExpr=Expression.Invoke(expr2,expr1.Parameters.Cast());returnExpression.Lambda>(Expression.OrElse(expr1.Body,invokedExpr),expr1.Paramet

c# - 收到 'Expression being assigned must be constant' 时

有没有办法使用这样的东西:privateconstintMaxTextLength="Textiwanttouse".Length;我认为它比使用类似的东西更具可读性并且更不容易出错:privateconstintMaxTextLength=18;有什么方法可以让文本的长度成为常量变量的来源吗? 最佳答案 privatereadonlystaticintMaxTextLength="Textiwanttouse".Length; 关于c#-收到'Expressionbeingassign

c# - 以编程方式确定代码是否在 IIS Express 下运行

我不确定这是否可行,但我希望能找到一条线索来确定当前正在执行的代码是否在IISExpress下运行。到目前为止我最好的近似值,这是令人难以置信的hackish,并且肯定会在某个时候失败/中断:boolIsExpress=Request.ServerVariables["SERVER_SOFTWARE"]=="Microsoft-IIS/7.5"&&Int32.Parse(Request.ServerVariables["INSTANCE_ID"])>1000000000;肯定有更好的方法。我对Application、Server和Request对象的检查似乎没有揭示任何可能提供更好洞察

c# - Invoke Method (Delegate) 和直接调用有什么区别?

这个问题在这里已经有了答案:DifferencebetweenDelegate.InvokeandDelegate()(4个答案)关闭9年前。可能是之前有人问过这个问题,我用谷歌搜索但没有得到答案。委托(delegate)原型(prototype)delegatevoidmethod1(stringstr);添加回调方法method1objDel2;objDel2=newmethod1(TestMethod1);objDel2("test");objDel2.Invoke("Invoke");在上面的代码中,objDel2("test");和objDel2.Invoke("Invoke

c# - 我无法在未安装 SqlServer Express 的计算机上建立 Sql Server localdb 连接

我有一个使用VisualStudio2012编写的C#控制台应用程序。在该应用程序中,我使用SqlServerlocaldb连接到数据库来存储信息。这在多台计算机上运行良好,所有计算机都安装了VisualStudio。我想部署一个只需要安装SqlServerExpressLocalDB而不是更大的SqlServerExpress的程序。但是,我的应用程序没有在目标计算机上运行。我在目标计算机上安装了SqlServerExpressLocalDB2014。我可以使用命令行,使用sqllocaldb运行命令来验证它是否已安装并正在运行。C:\Users\someuser\Desktop\D

c# - 为什么从 Expression<Func<>> 创建的 Func<> 比直接声明的 Func<> 慢?

为什么是Func从Expression>创建通过.Compile()比仅使用Func慢得多直接声明?我刚从使用Func更改为直接声明为从Expression>创建的一个在我正在开发的应用程序中,我注意到性能下降了。我刚刚做了一个小测试,Func从表达式创建的时间“几乎”是Func的两倍直接声明。在我的机器上直接Func大约需要7.5秒,Expression>大约需要12.6秒。这里是我使用的测试代码(运行Net4.0)//DirectFunctest1=x=>newFoo(x*2);intcounter1=0;Stopwatchs1=newStopwatch();s1.Start();

c# - 如何设置属性选择器的值 Expression<Func<T,TResult>>

我需要使用模式工厂的想法将我的Person类实体中的实体属性地址与我的FactoryEntities类中的表达式linq相关联,看看这就是我拥有的并且我想做的:Addressaddress=newAddress();address.Country="Chile";address.City="Santiago";address.ZipCode="43532";//Factoryinstancecreationobject//ThisisideaPersonperson=newFactoryEntity().AssociateWithEntity(p=>p.Address,address)