Acessando uma propriedade estática de um filho em um método pai

Digamos que eu tenha o seguinte código:

class Parent
{

    static string MyField = "ParentField";

    public virtual string DoSomething()
    {
        return MyField;
    }
}

class Child : Parent
{
    static new string MyField = "ChildField";
}

Agora eu quero poder fazer o seguinte:

Console.WriteLine(Parent.MyField);
Console.WriteLine(Child.MyField);

Eles funcionam como esperado, mas eu também gostaria de fazer isso:

Child c = new Child();
Console.WriteLine(c.DoSomething());

Como DoSomething () não está definido para a classe Child, é o MyField do pai que é retornado, mas o que eu quero é o MyField do Child.

Então, minha pergunta é: existe alguma maneira de fazer isso?

NOTA: Substituir o método na classe Child é uma opção, mas como terei muitas classes Child herdadas do Parent e o método deve fazer o mesmo em todas elas, alterar alguma coisa nesse método traria muitas problema.

questionAnswers(9)

yourAnswerToTheQuestion