2015-03-13 20 views
17

Sono in grado di salvare la mia classe in mongo ma sto ricevendo un errore di deserializzazione.Valore discriminatore sconosciuto C# Mongo

sto ottenendo un errore:

'MongoDB.Bson.BsonSerializationException : Unknown discriminator value 'ProductPropertyDefinition'.'

ho bisogno di aiuto. Come dire a mongo di deserializzare questo correttamente?

public class Product 
{ 
    [BsonId] 
    [BsonRepresentation(BsonType.ObjectId)] 
    public string Id { get; set; } 

    public ProductPropertyDefinitionCollection ProductProperties { get; set; } 
} 

public class ProductPropertyDefinitionCollection : CollectionBase 
{ 
    public ProductPropertyDefinition this[int index] 
    { 
     get 
     { 
      return (ProductPropertyDefinition)List[index]; 
     } 
     set 
     { 
      List[index] = value; 
     } 
    } 

    public ProductPropertyDefinition this[string name] 
    { 
     get 
     { 
      return GetByName(name); 
     } 
    } 

    public int Add(ProductPropertyDefinition value) 
    { 
     return List.Add(value); 
    } 

    public void Remove(ProductPropertyDefinition value) 
    { 
     List.Remove(value); 
    } 

    public bool Contains(ProductPropertyDefinition value) 
    { 
     return List.Contains(value); 
    } 

    private ProductPropertyDefinition GetByName(string propertyName) 
    { 
     ProductPropertyDefinition profileItem = null; 

     foreach (ProductPropertyDefinition profileProperty in InnerList) 
     { 
      if (profileProperty.PropertyName == propertyName) 
      { 
       profileItem = profileProperty; 
      } 
     } 
     return profileItem; 
    } 
} 

risposta

28

Capito. Ho solo bisogno di aggiungere una classmap:

BsonClassMap.RegisterClassMap<ProductPropertyDefinition>(); 
Problemi correlati