ho creato una classe C# in questo modo:System.FormatException' si è verificato in MongoDB.Bson.dll - XXX non è un 24 cifre stringa valida esadecimale
public class Employee
{
[BsonRepresentation(BsonType.ObjectId)]
public string Name { get; set; }
public int Age { get; set; }
public List<string> Address { get; set; }
}
Quando cerco di salvare queste informazioni (usando MongoDB) in questo modo:
var e = new Employee();
e.Address = new List<string>();
e.Address.Add("Address 1");
e.Address.Add("Address 2");
e.Age = 333;
e.Name = "Some Name";
context.Employees.Insert(e);
sto ottenendo seguente errore:
An unhandled exception of type 'System.FormatException' occurred in MongoDB.Bson.dll
Additional information: 'Some Name' is not a valid 24 digit hex string.
Come posso rendere un campo stringa come ObjectID
in MongoDB?
Grazie per la risposta rapida. Ho rimosso lo spazio bianco e ho cambiato il codice in 'e.Name =" SomeName ";', ma sto ottenendo lo stesso errore. – SharpCoder
@SharpCoder Cosa diminuisce quando si cambia '[BsonRepresentation (BsonType.ObjectId)]' a '[BsonId]'? – BendEg
Sì. Questo aiuta !!! aggiungendo l'attributo '[BsonId]' invece di '[BsonRepresentation (BsonType.ObjectId)]' sulla proprietà 'userId' ha risolto il problema. Puoi aggiornare la tua risposta, questo aiuterà altri utenti in futuro !! Grazie !! – SharpCoder