В настоящее время у меня есть проблема, которую мне нужно решить, чтобы избежать дублирования кода в моем программном обеспечении.Мне бы хотелось, чтобы к моменту входа в систему система сохраняла некоторую информацию, чтобы мне не приходилось все время заходить в базу данных запросов.Мне нужно будет хранить, например, информацию из двух классов:
ПОЛЬЗОВАТЕЛЬ
public class User
{
public Guid Id { get; set; }
public String Name { get; set; }
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
[Required]
[DataType(DataType.Password)]
public string Password { get; set; }
}
ШКОЛА
public class School
{
public Guid Id { get; set; }
public String Name { get; set; }
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
public int Code { get; set; }
}
Я постоянно использую информацию от этих двух в своем программном обеспечении, и в настоящее время каждый раз, когда я загружаю их из базы данных.Поэтому я хотел бы знать, есть ли способ сохранить информацию во время входа в систему, чтобы мне не приходилось запрашивать базу данных.Мой код входа в систему:
if (user != null)
{
Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName,
FormsAuthentication.Encrypt(new FormsAuthenticationTicket(login.Email.ToLower(), false, 60))));
//Store school and user information here.
return RedirectToAction("Dashboard", "Home", new { area = "" });
}
Можно ли как-нибудь сохранить эту информацию и получить ее, например, User.Identity.Name
?