У меня есть проект MVC с классом User
, который обозначен [Serializable]
.MongoRepository Entity в StateServer
Этот класс User
наследует от MongoRepository's «Entity
», как указано в документации.
Однако, когда я пытаюсь сохранить экземпляр класса User
для сеанса, через StateServer, я получаю сообщение об ошибке, что объект не является сериализуемым.
Я новичок в MongoDB и MongoRepository, поэтому я не уверен, есть ли что-то, что я могу сделать здесь, чтобы сделать экземпляр класса пользователя сериализуемым.
Пример кода:
[Serializable]
public class SiteUser : Entity
{
public string username { get; set; }
}
public ActionResult Index()
{
MongoRepository<SiteUser> userRepo = new MongoRepository<SiteUser>();
SiteUser user = userRepo.First(m => m.username == "myusername");
Session["MyUser"] = user; // This won't work due to the "Entity" link.
return View();
}
Почему бы просто не сохранить имя пользователя и не кешировать экземпляр 'SiteUser'? – WiredPrairie
Базовый класс не 'Serializable.' Все классы должны быть отнесены. – WiredPrairie