Вывод список информации для определенного пользователя
Всем доброго времени суток. У меня есть небольшой вопрос касательно asp.net mvc. Суть задачи такая: есть медицинский портал, врачи могут регистрировать пациентов на портале и в дальнейшем редактировать данные о них. При регистрации пациента врачом, пациенту автоматически присваивается id врача, чтобы в дальнейшем врач мог просматривать только тех пациентов, которых он сам зарегистрировал. Присваивание id врача к пациенту:
_pacient.DoctorId = System.Web.HttpContext.Current.User.Identity.GetUserId();
В методе ListPacients я хочу вывести только тот список пациентов, которые были зарегистрированы врачом:
public ActionResult ListPacients(Pacient _pacient)
{
var check = _db.pacients.FirstOrDefault(s => s.IndividualIdentificationNumber == _pacient.IndividualIdentificationNumber);
if (check!=null)
{
return View(_pacient.IndividualIdentificationNumber);
}
if (_pacient.DoctorId == System.Web.HttpContext.Current.User.Identity.GetUserId())
{
using (DB_Entities dB_Entities = new DB_Entities())
{
return View(dB_Entities.pacients.ToList());
}
}
return HttpNotFound();
}
Но в итоге условие не выполняется и выполняется HttpNotFound, подскажите пожалуйста как правильно реализовать мою идею, так-как в asp.net я совсем новичок. Модель Пациента:
public class Pacient : Persons
{
public string DoctorId { get; set; }
[Key, Column(Order = 1)]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int idUser { get; set; }
[Display(Name = "История болезни")]
public string DocSRC { get; set; }
[Required]
[Display(Name ="Город")]
public string CityPacient { get; set; }
}
Так же модель Врача:
public class RegisterViewModel
{
[DataType(DataType.Date)]
public DateTime dateRegister {get; set;}
[Required]
[DataType(DataType.Date)]
[Display(Name ="Дата рождения")]
public DateTime dateTime { get; set; }
[Required]
[EmailAddress]
[Display(Name = "Адрес электронной почты")]
public string Email { get; set; }
[Required]
[StringLength(100, ErrorMessage = "Значение {0} должно содержать не менее {2} символов.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Пароль")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Подтверждение пароля")]
[System.ComponentModel.DataAnnotations.Compare("Password", ErrorMessage = "Пароль и его подтверждение не совпадают.")]
public string ConfirmPassword { get; set; }
[Display(Name ="Имя")]
public string FirstName { get; set; }
[Display(Name ="Фамилия")]
public string LastName { get; set; }
[Display(Name ="Город")]
public string City { get; set; }
}