Próbuję napisać ogólnego kontrolera Web Api, który pozwoli mi zapisać dokument JSON do kolekcji BEZ określania typu C#. Starałem się skraplać kod w dół do minimum:MongoDB C# - jak zapisać dowolny dokument JSON jako typ dynamiczny?
public class PassThroughController : ApiController
{
[Route("api/mongodb/{collection}")]
public void Post(string collection, dynamic document)
{
const string connectionString = "mongodb://localhost";
var client = new MongoClient(connectionString);
var db = client.GetServer().GetDatabase("SampleDb");
var mongoCollection = db.GetCollection(collection);
mongoCollection.Save(document,
new MongoInsertOptions
{
WriteConcern = WriteConcern.Acknowledged
});
}
}
Próbuję napisać prosty dokument:
{ id: "2112", name: "Rush" }
ale bez względu na to, co wysłać do sposobu, otrzymuję podobny do następującego: "Zapisz można używać tylko z dokumentami, które mają identyfikator".
Podjęliśmy próbę szeregu różnych właściwości dla Id (Id, id, _id), ale wszystkie prowadzą do podobnego problemu.
Wszelkie pomysły?
Dzięki