草庐IT

action_type

全部标签

c# - 如何以编程方式在 powerpoint 幻灯片放映期间调用 Action ?

我正在使用编码的UI和VSTO自动化Powerpoint场景。在我的powerpoint演示文稿中,我在形状上创建了一个“Action”设置以启动记事本。在幻灯片放映期间,我需要通过单击“文本/形状”来调用此操作,以便它打开notepad.exe。谁能帮助我如何实现这一目标。我写了下面的代码。//TolaunchPowepointPowerPoint.ApplicationobjPPT=newPowerPoint.Application();objPPT.Visible=Office.MsoTriState.msoTrue;//AddnewpresentationPowerPoint.

c# - Entity Framework 表拆分 : not in the same type hierarchy/do not have a valid one to one foreign key relationship

我正在使用EntityFramework6和代码优先方法,我希望将两个实体放在同一个表中。我做错了什么?[Table("Review")]publicclassReview{publicintId{get;set;}publicPictureInfoPictureInfo{get;set;}publicintPictureInfoId{get;set;}}[Table("Review")]publicclassPictureInfo{[Key,ForeignKey("Review")]publicintReviewId{get;set;}publicReviewReview{get;s

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# - 是否可以将 Type.GetType 与动态加载的程序集一起使用?

假设我有这么一小段代码:publicstaticvoidLoadSomething(Typet){vart1=Type.GetType(t.AssemblyQualifiedName);vart2=t.Assembly.GetTypes().First(ta=>ta.AssemblyQualifiedName==t.AssemblyQualifiedName);}发生的情况是t1为null而t2为notnull。我很困惑,因为如果我这样调用它......LoadSomething(typeof(SomeObject));然后两者都为空,但我实际做的更像是这样(不是真的,这被大大简化了,

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

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

c# - 过滤掉 Type.GetMethods() 返回的自动生成的方法(getter/setter/add/remove/.etc)

我使用Type.GetMethods(BindingFlags.Instance|BindingFlags.Static|BindingFlags.Public|BindingFlags.NonPublic)检索给定类型的方法数组。问题是返回的MethodInfo可能包含编译器生成的方法,而我不想要这些方法。例如:propertyboolEnabled{get;将得到boolget_Enabled()事件SomethingChanged会得到add_SomethingChanged(事件处理程序)和remove_SomethingChanged(事件处理程序)我或许可以添加一些过滤逻辑

c# - 如何使用局部变量作为类型?编译器说 "it is a variable but is used like a type"

在运行时,我不知道什么类型的变量v1是。为此,我写了很多ifelse声明:if(v1isShellProperty){v2=(v1asShellProperty).Value;}elseif(v1isShellProperty){v2=(v1asShellProperty).Value;}elseif(v1isShellProperty){v2=(v1asShellProperty).Value;}elseif(v1isShellProperty){v2=(v1asShellProperty).Value;}唯一的区别在于ShellProperty.所以不要用很多ifelse来写这篇文

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

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

c# - PropertyInfo 实例上的 SetValue 错误 "Object does not match target type"c#

在以前的项目中的不同地方使用了带有这段代码的Copy方法(处理具有相同命名属性但不派生自公共(public)基类或实现公共(public)接口(interface)的对象)。新的工作地点,新的代码库-现在即使在非常简单的示例中,它也会在SetValue处失败并显示“对象与目标类型不匹配”......并且它在上周工作......publicstaticvoidCopy(objectfromObj,objecttoObj){TypefromObjectType=fromObj.GetType();TypetoObjectType=toObj.GetType();foreach(System