Так что я объясню, у меня есть контроллер, который сохраняет две информации в базе данных. И идентификатор берется из одного документа в другой. Я этого добиться, но мой идентификатор сохраняется таким образом:Как сделать правильный выбор значения элемента из BsonDocument
_id=57629cb900a09432b8b3ada4
Но я хочу это так:
57629cb900a09432b8b3ada4
Я не могу видеть, как это сделать, потому что я беру кулак элемент документ bson с методом first().
Если кто-то может помочь я кладу контроллер только здесь:
EDIT: ДОБАВЛЕНО КОДА Предоставлено @ P57 (спасибо ему):
var id = objDocument[_id];
Становится
string id = objDocument.GetElement("_id").Value.ToString();
Так мы имеем:
public ActionResult LancerComparaison(ResultViewModel resultViewModel)
{
if (resultViewModel!= null)
{
UserInformationViewModel info = resultViewModel.UserInformationViewModel;
var client = new MongoClient("mongodb://localhost:27017");
var objDatabase = client.GetDatabase("Test");
var collection = objDatabase.GetCollection<BsonDocument>("UsersInformations");
BsonDocument objDocument = new BsonDocument {
{"Nom",info.NomUser},
{"Prenom",info.PrenomUser},
{"Email",info.EmailUser},
};
collection.InsertOne(objDocument);
string id = objDocument.GetElement("_id").Value.ToString();
Session["IdentifiantUserInformation"] = id;
List<ObjetTransfert> listePrestationsObjetsTransferts = new List<ObjetTransfert>();
ResultatComparaison resultatComparaison;
ConvertGViewModelToGBd(resultViewModel, listePrestationsObjetsTransferts);
_compaSBT.ComparerP(listePrestationsObjetsTransferts, out resultatComparaison,
Enums.E.T);
//Enregistrer d'abord le resultat en Bd
resultatComparaison.IdentifiantResultatComparaison = new Guid().ToString();
resultatComparaison.IdentifiantUserInformation = id.ToString();
_resultatComparaisonService.Create(resultatComparaison);
Session["IdentifiantResultatComparaison"] = resultatComparaison.Id;
return View();
}
return null;
}
Это кажется хорошим, но я сделал это var id = objDocument ["_ id"], но похоже, что это был неправильный путь, i Я получаю плохой идентификатор, но с вашим GetElement это нормально :) так спасибо! –
Рад, что это помогло.Вы можете перефразировать название своего вопроса, потому что оно вводит в заблуждение. @SurenSrapyan предоставил то, что он запрашивает, то есть обратное действие concatenate, которое является «split», но вам действительно нужен был правильный выбор значения элемента из BsonDocument. – u8it
Вы правы, я сделал изменения, возможно, это поможет некоторым другим людям –