C#覆盖对象.ToString()在运行时使用反射



我想覆盖对象。在运行时使用反射为结构执行ToString()?我需要在一些我没有代码的.dll中更改一个结构,添加新的或修改现有的覆盖。所以我想在运行时做这件事。

有可能吗?这方面的教程会很好吗?若答案为"否",那个么:答案对班级不同吗?

不能使用反射更改现有类或结构的实现。很抱歉

只使用扩展方法ToStringNew()不是更容易吗?

public static class ExtensionMethods
{
    public static string ToStringNew(MyStruct str)
    {
        return ...;
    }
}

我以为这就是扩展方法的设计目的。。。

最新更新