I am fighting to create a unique field EmailAddress
. I've already seen in forums that I have to create an index, but it didn't work out for me so far. Does anyone have a code example? Do I have to create the index on every save/call, or is it enough to create it only once?
I tried this code:
DB.GetCollection<User>(Dbname)
.EnsureIndex(new IndexKeysBuilder()
.Ascending("EmailAddress"), IndexOptions.SetUnique(true));
DB.GetCollection<User>(Dbname).Save(user, SafeMode.True);
My User
model looks like this:
public class User
{
[Required(ErrorMessage = "Email Required")]
public string EmailAddress { get; set; }
public ObjectId Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}