Add * or + after the expression, because now it will show you that the string is valid only if it's one letter/number long. To make it works you have two options:
[RegularExpression("[A-Za-z0-9]+")]
or
[RegularExpression("[A-Za-z0-9]*")]
The first one will not allow empty string and the second will allow empty string.