public class FooController
public string? foo { get; set; }
public virtual string DoSomethingWithFoo()
return $"I did something with \"{foo}\"";
public class BarController : FooController
public new int? DoSomethingWithFoo()
public static void Main()
var x = new BarController();
var y = x.DoSomethingWithFoo();