草庐IT

dynamic-method

全部标签

C# 4.0 : casting dynamic to static

这是一个分支问题,与我问的另一个问题有关here.我把它分开是因为它真的是一个子问题:我在转换dynamic类型的对象时遇到困难到另一个(已知的)静态类型。我有一个用于执行此操作的IronPython脚本:importclrclr.AddReference("System")fromSystemimport*defGetBclUri():returnUri("http://google.com")请注意,它只是更新BCLSystem.Uri类型并返回它.所以我知道静态类型返回的对象。现在在C#领域,我正在更新脚本托管内容并调用这个getter来返回Uri对象:dynamicuri=sc

c# - 如何关闭 resharper 中的 "Convert Extension Method to Plain Static"自动重构?

在使用Resharper时,由于某些原因,当我调用扩展方法时,它会自动将其转换为静态方法调用。这就是所谓的ConvertExtensionMethodtoPlainStatic重构。foo.Bar()成为MyStaticExtensions.Bar(foo);具有讽刺意味的是,它随后将此标记为代码异味。我该如何关闭它? 最佳答案 Resharper的IntelliSense中嵌入了此功能。我经常使用Linq-to-sql扩展,所以我禁用了这个功能:Resharper-选项-IntelliSense-启用RadiobuttonVisu

c# - 为什么 'dynamic' ExpandoObject 抛出 RuntimeBinderException,即使它包含属性的定义?

使用以下示例代码:(VS2013,更新3)dynamicdemo=newExpandoObject();demo.Test=10;varj=demo.Test;//throwsexception调试此代码时,在VS中检查“当异常为:‘抛出’时中断”,然后尝试访问现有属性“测试”抛出RuntimeBinderException:System.Dynamic.ExpandoObject'doesnotcontainadefinitionfor'Test'注意:跳到下一行,变量j已正确设置为10。Q1:当Test属性肯定存在且值为10时,事实变量j证明成功设置该值,为什么会抛出异常?当我尝试

C# 使用 Dynamic 关键字通过字符串访问属性而无需反射

我想写类似下面的东西://Iwillpassinanumberof"properties"specifiedasstringsthatIwantmodifiedstring[]properties=new[]{"AllowEdit","AllowDelete"};//CastingthecomponentI'musingtoadynamicobjectofsomesort?dynamicd=myGridComponent;//Iterateoverthestringsandsetthepropertiesforeach(varsinproperties){//d.s=true;////

c# - 依赖注入(inject)与大规模 ORM : dynamic trouble

我已经开始处理一个MVC3项目,该项目需要来自现有庞大数据库的数据。我的第一个想法是继续使用EF4.1并创建一堆POCO来表示我需要的表,但我开始认为映射会变得过于复杂,因为我只需要一些一些表格中的列。(感谢Steven在评论中的澄清。所以我想我会给MassiveORM一试。我通常使用工作单元实现,这样我就可以很好地解耦所有内容并可以使用依赖注入(inject)。这是我对Massive的一部分:publicinterfaceISession{DynamicModelCreateTable()whereT:DynamicModel,new();dynamicSingle(stringwh

c# - LINQ to Dynamics CRM 在本地查询过滤记录

我使用CRM2011RC(v5)LINQ-to-CRM提供程序编写了一个LinqtoCRM查询。我有一个本地声明的List,我想将其加入CRM实体,并且我希望在CRM服务器上执行查询。一个示例可能会有所帮助:MyObjectmyObject=newMyObject();ListmyAccountsList=newList();myAccountsList.Add(newmyAccount(){AccountNumber="123"};myAccountsList.Add(newmyAccount(){AccountNumber="456"};myObject.ListOfAccount

c# - 如何修复 'compiler error - cannot convert from method group to System.Delegate' ?

publicMainWindow(){CommandManager.AddExecutedHandler(this,ExecuteHandler);}voidExecuteHandler(objectsender,ExecutedRoutedEventArgse){}错误1​​参数2:无法从“方法组”转换为“System.Delegate” 最佳答案 我猜有多个具有不同签名的ExecuteHandler。只需将您的处理程序转换为您想要的版本:CommandManager.AddExecuteHandler(this,(Action)

c# - 类型为 ‘dynamic’ 的表达式在运行时的行为方式是否应与相同运行类型时间的非动态表达式相同?

考虑以下示例程序:usingSystem;publicdelegatestringMyDelegateType(intinteger);partialclassProgram{staticstringMyMethod(intinteger){returninteger.ToString();}staticvoidMain(){Funcfunc=MyMethod;//Scenario1:worksvarnewDelegate1=newMyDelegateType(func);newDelegate1(47);//Scenario2:doesn’tworkdynamicdyn=func;v

c# - The non-generic method cannot be used with type arguments in this context 是什么意思?

我有以下类和方法:publicclassUserManager:IDisposablewhereTUser:class,global::Microsoft.AspNet.Identity.IUserwhereTKey:global::System.IEquatable{publicvirtualTaskFindByIdAsync(TKeyuserId);和:privateApplicationUserManager_userManager;publicApplicationUserManagerUserManager{get{return_userManager??Request.Ge

C# "Method not found"未使用反射的运行时异常

我在获取上述异常时遇到问题。我有一个相对简单的结构,分为两个dll。第一个包含一个IEntityService,IEntity,具有基本的实现。第二个包含实际的实现和接口(interface)。所以有一个实现IEntityService的IMachine服务和实现IEntityService和EntityService的MachineService。结果集合(实体加服务)也会发生类似的情况。此外,服务(机器和结果)是部分类/接口(interface),其中一个类是自动生成的。现在,在其中一台ResultMachine中,我试图获得一台机器,如果它不存在,我将创建它并保存。但是,当我尝试