Есть ли способ «переопределить» метод с помощью отражения?
Без наследования, но только с отражением возможно ли динамически изменять код метода в C #?
что-то вроде :
nameSpaceA.Foo.method1 = aDelegate;
Я не могу изменить / отредактировать класс Foo.
namespace nameSpaceA
{
class Foo
{
private void method1()
{
// ... some Code
}
}
}
Моя конечная цель - динамически изменить код:
public static IList<XPathNavigator> EnsureNodeSet(IList<XPathItem> listItems);
В System.Xml.Xsl.Runtime.XslConvert.cs
превратить :
if (!item.IsNode)
throw new XslTransformException(Res.XPath_NodeSetExpected, string.Empty);
в:
if (!item.IsNode)
throw new XslTransformException(Res.XPath_NodeSetExpected, item.value);