草庐IT

BROADCAST_ACTION

全部标签

c# - 通过反射订阅任何事件类型的 Action

考虑:someControl.Click+=delegate{Foo();};事件的参数无关紧要,我不需要它们,我对它们也不感兴趣。我只是想让Foo()被调用。没有明显的方法可以通过反射来做同样的事情。我想把上面的内容翻译成类似的东西voidFoo(){/*launchmissilesetc*/}voidBar(objectobj,EventInfoinfo){ActioncallFoo=Foo;info.AddEventHandler(obj,callFoo);}此外,我不想假设传递给Bar的对象类型严格遵守对事件使用EventHander(TArgs)签名的准则。简而言之,我正在寻

c# - 封装 Action<T> 和 Func<T>?

我正在尝试为某种IExecutable接口(interface)进行设计。我不会详细介绍,但重点是我有几个需要从基类执行的操作。它们可能采用不同的参数(没什么大不了的),并且它们可能会/可能不会返回值。到目前为止,这是我的设计:publicabstractclassActionBase{//...snip...}publicabstractclassActionWithResultBase:ActionBase{publicabstractTExecute();}publicabstractclassActionWithoutResultBase:ActionBase{publicab

c# - 如何从 DEV_BROADCAST_DEVICEINTERFACE 和设备实例 ID 获取友好的设备名称

我已经用RegisterDeviceNotification注册了一个窗口并能成功收到DEV_BROADCAST_DEVICEINTERFACE消息。但是,返回的结构中的dbcc_name字段始终为空。我的结构是这样定义的:[StructLayout(LayoutKind.Sequential)]publicstructDEV_BROADCAST_DEVICEINTERFACE{publicintdbcc_size;publicintdbcc_devicetype;publicintdbcc_reserved;publicGuiddbcc_classguid;[MarshalAs(Un

c# - 使用传递给 ActionResult 的参数的 MVC Action 过滤器?

我创建了一个自定义ActionFilter没问题。但我想修改ActionFilter以使用实际传递给我的方法的一些参数。所以如果我有以下方法:[HttpPost][MyAttribute]publicActionResultViewUserDetails(GuiduserId){//Dosomething}如何从MyAttribute中访问userId?有什么方法可以直接传入吗? 最佳答案 您可以尝试覆盖OnActionExecuting,您可以在其中访问操作参数。publicclassMyAttribute:ActionFilte

c# - 路由 : How to hide action name in url?

在MVC默认路由中routes.MapRoute("Default",//Routename"{controller}/{action}/{id}",//URLwithparametersnew{controller="Home",action="Index",id=UrlParameter.Optional}//Parameterdefaults);每当访问索引操作时,当访问“索引”操作时,url不会显示操作名称。我想在另一个Controller上获得该行为,该Controller正在检索单个项目的数据。我希望将默认操作命名为“get”,对于此操作,我希望url不显示操作名称,只显示

c# - 在 MVC 中处理多个角色 - 基于 Action 的辅助功能

我目前有一个项目,我似乎遇到了一个关于角色的问题,我想我会就如何最好地处理这个问题征求一些意见。系统将需要可编辑、灵活的角色,不仅控制特定区域的访问,还控制系统功能的使用(添加用户、编辑用户、查看报告等)系统目前允许用户拥有多个角色,每个角色都有明确定义的访问/操作区域,例如:角色A可以访问区域1、2、3并可以添加用户。角色B可以访问区域1、5、7并可以修改用户。角色C可以访问区域4,6并且只能查看用户。因此用户可以处于角色A和C,因此可以访问:1、2、3、4和6,并且可以添加和查看用户。我的第一个解决方案是创建一个字典,将所有可能的访问/访问选项区域存储到字典中,如下所示:Dicti

c# - 通过 C# Action 手动将 SASS 编译为 CSS 以实现可自定义的前端布局

我尝试构建一个可由我的用户自定义的Web前端。我的用户没有任何webDev技能,我在内部使用SCSS文件所以我想给他们我的sass变量进行定制。(您之前可能在一些著名的CSS框架的themeRollers中看到过类似的东西。)所以我的工作流程是这样的:用户获取我的SASS变量进行编辑他们将这些变量发布到Controller操作神奇:我的.SCSS文件变成了.CSS文件我保存.CSS文件以供以后的网络请求使用我需要你的帮助,因为我不知道第3步应该是什么样子。也许您已经实现了这个或者您有一个有用的想法。非常感谢任何建议 最佳答案 所以我

c# - 确定 Action 返回正确 View 的单元测试

您如何测试像这样的操作方法是否会返回正确的View,因为Viewname是一个空字符串?我应该费心测试这个吗?我不确定要进行多少单元测试,我认为您可以创建很多单元测试!publicActionResultIndex(){returnView();}[TestMethod]publicvoidDetermineIndexReturnsCorrectView(){HomeControllercontroller=newHomeController();ViewResultresult=controller.Index()asViewResult;//****result.ViewNamei

c# - 如何将 Action<string> 添加到界面?

正如问题标题所暗示的,我想添加一个Action到一个界面。这可能吗?目前它说Interfacescannotcontainfields 最佳答案 您需要将其添加为属性:publicinterfaceIYourInterface{ActionYourAction{get;set;}}没有get/set它只是一个字段,正如编译器指出的那样,接口(interface)不能包含字段。这确实意味着当您实现此接口(interface)时,您还需要提供实际属性(尽管很明显它可以是一个简单的自动属性):publicclassFoo:IYourInt

c# - UrlHelper.Action 包含不需要的附加参数

我在ControllerApplicationsController中有一个方法,我需要在其中获取操作方法的基本URL:publicActionResultMyAction(stringid){varurl=Url.Action("MyAction","Applications");...}问题是这包括当前路由数据中的stringid,当我需要没有URL时(该URL用于在基于URL的查找中从CMS获取内容)。我尝试将null和new{}作为routeValues参数传递,但没有成功。匹配的路由如下(在所有其他路由之上):routes.MapLowercaseRoute(name:"Ap