public class TestBase
{
// implementation
}
public class Test : ICollection<TestBase>
{
// implementation
}
在其他地方,我有一个测试类型的属性:
public Test Test {get;set;}
如何获取Test继承的ICollection的基础类型?
答案 0 :(得分:3)
您可能正在寻找的是 freq dBm
0 2000000000 -62.689350
1 2040000000 -64.152839
2 2080000000 -63.775190
3 2120000000 -63.663057
4 2160000000 -64.227156
5 2200000000 -63.874805
defaultdict(<class 'list'>,
{'FIRMWARE_VERSION': 'A.08.05',
'MODEL': 'N9917A',
'NAME': 'Keysight Technologies',
'SERIAL': 'US52240515',
'TIMESTAMP': 'Friday 15 April 2016 04:50:05',
'TIMEZONE': '(GMT+08:00) Kuala Lumpur Singapore'})
。
GetGenericArguments()
答案 1 :(得分:0)
设x是实现接口的类的实例。您可以按如下方式获取其iterface类型:
var type = x.GetType();
var interfaces = type.GetInterfaces();
编辑:我的问题出错:跟进&#34; GetGenericArguments()&#34;如建议的那样。
答案 2 :(得分:0)
SELECT ReportId
,Status
,SurveyDate
,S.CorrelationId
,S.ObjectId
,S.VersionNumber
,S.CreateDateTime
,S.LastUpdateDateTime
,S.IsDeleted
FROM Reports R
INNER JOIN SyncMetadata S
ON R.ReportId=S.ObjectId
方法返回当前类型的所有已实现接口,其GetInterfaces
方法返回通用参数列表,您可以通过GetGenericArguments
属性获取其基类型。
此示例返回基接口的泛型参数的类层次结构
在当前类中实现:
var myType = this.GetType()。GetInterfaces()。First()。GetGenericArguments()。First();
while(myType!= null)
{
Console.WriteLine(myType.Name);
myType = myType.BaseType;
}
答案 3 :(得分:-1)
Type t = typeof(Test);
MethodInfo mi = t.GetMethod("MyMethod");
Type returnvalue = mi.ReturnType;
Type answer = Nullable.GetUnderlyingType(returnvalue);
我希望它有所帮助。