У меня есть модельный класс, мне нужно сохранить его в коллекции MongoDB.Как преобразовать список <T> в BsonArray для сохранения документа MongoDB
Мои модели Класс:
public Class Employee
{
public string EmpID { get; set; }
public string EmpName { get; set; }
public List<Mobile> EmpMobile { get; set; }
}
public Class Mobile
{
public string MobID { get; set; }
public string MobNumber { get; set; }
public bool IsPreferred { get; set; }
}
Значения
Employee EmpInfo = new Employee()
{
EmpID = "100",
EmpName = "John",
EmpMobile = new List<Mobile>()
{
{ MobNumber = "55566610", IsPreferred = true },
{ MobNumber = "55566611", IsPreferred = false },
}
}
BsonDocument _employee = new BsonDocument()
{
{ "Emp_ID", EmpInfo.EmpID },
{ "Emp_Name", EmpInfo.EmpName },
{ "Emp_Mobile", new BsonArray (EmpInfo.EmpMobile.Select(m => new
{
MobID = new ObjectId(),
MobNumber = m.MobNumber,
IsPreferred = m.IsPreferred
})) }
};
var collection = _database.GetCollection<BsonDocument>("EmployeeInfo");
collection.InsertOne(_employee);
Я хочу, чтобы сохранить выше EmpInfo
типа Employee
в MongoDB. Но я не могу создать BsonDocument. Пожалуйста, помогите мне в том, что в приведенном выше коде есть что-то не так. Если да, то помогите мне.
Что такое 'employee.Email'? Не могли бы вы изменить его на 'EmpInfo.EmpMobile.Select (...)'? –
извините, это EmpMobile. Опечатка. Теперь проверьте сообщение, я отредактировал ошибки. –
- это коллекция, посвященная хранению данных «Сотрудник»? – profesor79