问题标签 [methodbase]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1050 浏览

c# - 异步函数的 MethodBase 对象

在我的应用程序中,我有一个小动作日志。在那里,我将某些方法的最后几次调用保存在我的应用程序中,如下所示:

它允许我浏览和刷新我的最后一个动作

在我将调用 saveLastAction 的方法之一更改为异步之前,我工作得很好。从那时起MethodBase.GetCurrentMethod()只返回 MoveNext 函数,而不是我调用的实际函数。

有没有办法获得被调用函数的实际 MethodBase 对象,无论是在保存还是调用时都没有关系。

最好的问候 lolsharp

0 投票
2 回答
81 浏览

c# - 如何知道静态方法的类名

我有一个类,它有一些静态方法。我还有另一个类继承了我的第一个类,如下所示;

我像下面这样使用它;

在 Do 方法中,我尝试捕获 Model 类的类型。我可以在 Do 方法中捕获如下所示的业务类类型;

但我无法捕捉模型类类型。我怎样才能做到这一点?

注意: Business 类中的 Get 方法选择从哪个类调用它的列。这就是为什么我需要模型类的名称。因为模型类的名称将是表的名称,它将从表模型中选择列。

注2:通常我使用它;

我可以从模型表中获取所有数据。但我尝试使用它;

0 投票
1 回答
154 浏览

c# - MethodBase 作为哈希表键

我想将派生类中声明的属性的一些支持字段存储在基类中包含的受保护哈希表中。在派生类中使用这种机制必须尽可能简单。

那么,我可以MethodBase.GetCurrentMethod()用来提供有关调用属性的信息(getter - 属性是只读的),因此它可以被识别为唯一可以访问此特定支持字段的属性?

编辑:

基本上,我想实现模式:

看起来像这样:

在基类中

我想这样做的原因是为了简化属性的使用。我使用私有属性来创建一些对象并在类中使用它们。但是当我将它们的支持字段存储在同一个类中时,我对它们的访问权限与对属性的访问权限相同,因此我(意味着将来会创建一些派生类的用户)可能会意外使用支持字段而不是属性,所以我想限制对支持字段的访问,同时允许创建对象并使用它。

我尝试在支持字段上使用 ObsoleteAttribute,如下所示:

但是,首先,我不能强迫用户使用这种模式,其次,在派生类中编写的代码太多,正如我上面提到的,我希望尽可能简单。

0 投票
1 回答
1136 浏览

c# - System.Reflection.MethodBase.GetCurrentMethod(); 给“.ctor”

统计数据:Visual Studio 2015 C# Selenium Webdriver 2.53.1 Internet Explorer 11

为了清楚起见,尝试将方法名称添加到我的报告中。我在用

然后我打电话

期望看到方法名称,但在我的报告中它调用“.ctor()”

关于如何调用实际方法名称的任何建议?

0 投票
2 回答
64 浏览

c# - 循环和访问方法的参数值

我有以下方法(我在方法的注释中举例说明了我需要什么):

我必须知道参数的一个或多个bool是否为真。由于它们是四个,想象一下if我必须做的组合来检查是否只有一个是真的,或者如果不止一个,这是真的。

那么,如何在不使用参数变量本身的情况下循环传入 Method 参数的当前值呢?

0 投票
1 回答
119 浏览

c# - 在 C# 中,我如何评估一个类的任何成员是否包含 switch case 或 if else 构造?

在 C# 中,我如何评估一个类的任何成员是否包含 switch case 或 if else 构造?我想检查一个单元测试,如果一个类是用 anyswitch...case或 chained编写的if....else

我知道如何使用反射获取类的成员,但在互联网上找不到如何获取实际代码的示例。从这个SO 帖子我发现你可以MethodBase.GetMethodBody()这里使用。这似乎很适合返回MethodBody以获取变量,但无法找到如何获取 a switch...caseor是否if...else存在的信息。

有什么可用的解决方案吗?

0 投票
2 回答
225 浏览

c# - 获取 MethodBase.GetCurrentMethod() 但没有参数

我有一个功能

预期的输出是

但我希望输出的方法名中没有参数。