Yes, in general, any reference type may be null. The F# compiler prevents null assignment to F#-specific types such as records and discriminated unions in F# code. However, it is still possible to assign null to variables of these types from C#.
String is a reference type and may be null, even from F#. Your C# code is slightly inaccurate in that the type sample
would have userId
in the constructor:
var samp = new sample(null);
If you annotate the sample
type is CLIMutable attribute then it will also have a parameterless constructor.