2017-10-11 2 views
0

をCosmoDBを使用するようにMongoDBを取ったときに私が持っている:私は取得トラブルC#のドットに代わりCosmoDBでネット

public class Patient_test 
{ 
    public ObjectId _id { get; set; } 
    public string name { get; set; } 
    public string id { get; set; } 
} 

:私は次のモデルを持っているC#.NETで

{ 
"_id" : ObjectId("59de66a5e0f53d0d78e3d176"), 
"id" : "replace_with_new_document_id", 
"name" : "patientx" 
} 

を次のエラー:

"MongoDB.Bson.BsonSerializationException occurred 
    HResult=0x80131500 
    Message=The property 'id' of type 'EMR.Models.Patient.Patient_test' cannot use element name '_id' because it is already being used by property '_id'. 
    Source=<Cannot evaluate the exception source> 
    StackTrace: 
    at MongoDB.Bson.Serialization.BsonClassMap.Freeze() 
    at MongoDB.Bson.Serialization.BsonClassMap.LookupClassMap(Type classType) 
    at MongoDB.Bson.Serialization.BsonClassMapSerializationProvider.GetSerializer(Type type, IBsonSerializerRegistry serializerRegistry) 
    at MongoDB.Bson.Serialization.BsonSerializerRegistry.CreateSerializer(Type type) 
    at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory) 
    at MongoDB.Bson.Serialization.BsonSerializerRegistry.GetSerializer(Type type) 
    at MongoDB.Bson.Serialization.BsonSerializer.LookupSerializer[T]() 
    at MongoDB.Bson.Serialization.BsonSerializer.Deserialize[TNominalType](IBsonReader bsonReader, Action`1 configurator) 
    at MongoDB.Bson.Serialization.BsonSerializer.Deserialize[TNominalType](BsonDocument document, Action`1 configurator) 
    at EMR.Controllers.PatientController.Index(Patient p) in C:\Users\devin\Desktop\SE\WK8DELIVERABLE\EMR\EMR\Controllers\PatientController.cs:line 35 
    at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeActionMethodAsync>d__27.MoveNext() 

答えて

1

_idは自動的にcosmos DBに設定されます。あなたがそれを読もうとしない場合は、宣言または宣言自体から「セット」を除外してみてください(独自のIDをいつでも紹介できます、BTW、[email protected]でリクエストできるユニークなインデックスのプレビューがあります)。 )

関連する問題