2016-12-16 8 views
1

Я использую AspNetCore.Identity.MongoDB nuget package, чтобы получить некоторые функции идентификации Asp.Net в my project.Cant deserialize унаследованный объект с драйвером Mongo C#

Тогда я хочу продлить MongoIdentityUser, который существует с типом пользователя я первоначально созданного для моего проекта, поэтому я попытался наследовать от этого класса и создать my User Class, который имеет MongoIdentityUser в качестве своего базового класса.

Если я попытаюсь запросить мою коллекцию, где у меня есть один MongoIdentityUser, и попытаться десериализовать ее в MongoIdentityUser Я получаю этот один элемент, так что успех.

Но если я пытаюсь десериализации его в My User, который просто унаследовал класс MongoDBUser я получаю это исключение: Exception

Разве это не возможно степени класс, как я хочу? Кроме того, исключение довольно бесполезно, не знаю, почему его не дает мне более подробную исключение

объект JSON выглядит следующим образом

{ 
    "_id": "[email protected]", 
    "userName": "[email protected]", 
    "normalizedUserName": "[email protected]", 
    "email": { 
     "value": "[email protected]", 
     "confirmationRecord": null, 
     "normalizedValue": "[email protected]" 
    }, 
    "phoneNumber": null, 
    "passwordHash": "xxx", 
    "securityStamp": "87242bb7-2a09-4905-ba61", 
    "isTwoFactorEnabled": false, 
    "claims": [], 
    "logins": [], 
    "accessFailedCount": 0, 
    "isLockoutEnabled": true, 
    "lockoutEndDate": null, 
    "createdOn": { 
     "instant": { 
      "$date": "2016-11-13T17:05:59.487Z" 
     } 
    }, 
    "deletedOn": null 
} 
+0

ИМХО, вы забыл зарегистрировать свой производный класс, используя что-то вроде 'BsonClassMap.LookupClassMap (typeof (User)) ;;). –

+0

@ shA.t, но не может ли это только дать мне только свойства MongoIdentityUser или свойства пользователей, а не свойства обоих классов? – Mech0z

+0

Речь идет не о свойствах, а о классах, которые MongoDB может сериализовать на основе их читать [это для большего] (http://mongodb.github.io/mongo-csharp-driver/2.0/reference/bson/mapping/);). –

ответ