string
type is a reference type, therefore it is nullable by default. You can only use Nullable<T>
with value types.
public struct Nullable<T> where T : struct
Which means that whatever type is replaced for the generic parameter, it must be a value type.