i am fetching data in strigify json format
"[{\"ApplytoAllYesNo\":\"\",\"PartNumber\":\"\",\"Description\":\"\",\"LotNumber\":\"\",\"Revision\":\"\",\"Comment\":\"\",\"QualStatus\":\"\",\"Upload\":\"\",\"buildID\":\"62161d4fee3776fba3d8b83e\"},{\"ApplytoAllYesNo\":\"\",\"PartNumber\":\"\",\"Description\":\"\",\"LotNumber\":\"\",\"Revision\":\"\",\"Comment\":\"\",\"QualStatus\":\"\",\"Upload\":\"\",\"buildID\":\"62161d4fee3776fba3d8b83e\"},{\"ApplytoAllYesNo\":\"\",\"PartNumber\":\"\",\"Description\":\"\",\"LotNumber\":\"\",\"Revision\":\"\",\"Comment\":\"\",\"QualStatus\":\"\",\"Upload\":\"\",\"buildID\":\"62161d4fee3776fba3d8b83e\"},{\"ApplytoAllYesNo\":\"\",\"PartNumber\":\"\",\"Description\":\"\",\"LotNumber\":\"\",\"Revision\":\"\",\"Comment\":\"\",\"QualStatus\":\"\",\"Upload\":\"\",\"buildID\":\"62161d4fee3776fba3d8b83e\"},{\"ApplytoAllYesNo\":\"\",\"PartNumber\":\"\",\"Description\":\"\",\"LotNumber\":\"\",\"Revision\":\"\",\"Comment\":\"\",\"QualStatus\":\"\",\"Upload\":\"\",\"buildID\":\"62161d4fee3776fba3d8b83e\"}]"
every time this data will change, that's why I am unable to use fixed model hear as my object won't have fixed number of columns, and number columns will change in each request, these columns created in front end.
I just want to insert json strigify data into mongoDB whatever it comes in that object.
[HttpPost("saveBuildData")]
public async void saveBuildData(BuildSchema data)
{
await _buildsService.insertBuildConfigData(data.buildData);
}
public async Task insertBuildConfigData(dynamic obj)
{
var connectionString = _configuration["DatabaseSettings:ConnectionString"];
var client = new MongoClient(connectionString);
var database = client.GetDatabase("cascade");
var collection = database.GetCollection<BsonDocument>("buildconfig_MATERIAL");
var q = BsonSerializer.Deserialize<BsonDocument>(obj);
await collection.InsertOneAsync(q);
}
above code is not working and I am unable to insert the data into mongoDB.
This might help someone looking for a solution to this problem. It worked for me when I changed
collection.InsertOne(q)instead ofawait collection.InsertOneAsync(q);I am not claiming this is the best solution but it worked in my case, where I am only interested in uploading a json file to Mongodb collection using c#.