. net反射中的转换

本文关键字:转换 反射 net | 更新日期: 2023-09-27 18:04:57

我在哪里可以找到转换方法,如

    public static implicit operator MyType(OtherType d)
    public static implicit operator OtherType(MyType d)

Type对象?

. net反射中的转换

如果您询问一个类型的方法,您将找到操作符。该方法的IsSpecialName属性将返回true。例如:

using System;
public class Foo
{
    public static implicit operator int(Foo input)
    {
        return 0;
    }
}
class Test
{
    static void Main(string[] args)
    {
        foreach (var method in typeof(Foo).GetMethods())
        {
            Console.WriteLine(method + ": " + method.IsSpecialName);
        }
    }
}

你到底想达到什么目的?"Type"类的文档可以在这里找到:http://msdn.microsoft.com/en-us/library/system.type.aspx

但是Type对象中这些的默认实现是什么?在stringType之间没有合理的转换。

不确定,但根据http://www.codeproject.com/KB/cs/Csharp_implicit_operator.aspx编译器生成的IL方法具有特殊的名称op_Implicit和各自的参数类型/结果类型。

所以在类型上调用GetMethods应该会得到你想要的。