Я работаю над проектом, который позволит сотруднику отмечать свой рабочий день, включая обед. Сотрудник вводил свое имя пользователя и пароль и нажимал кнопку включения часов. Затем он проверит, совпадают ли имя пользователя и пароль в базе данных.
У меня работает проверка имени пользователя, но у меня проблемы с паролем. Он всегда возвращает null
.
Затем, после проверки имени пользователя и пароля, он создает событие, которое будет отображаться, когда вы вошли в систему. Теперь мне нужно выяснить, как проверить, не указано ли в этом событии время окончания, чтобы отредактировать это событие и добавить конец время, когда они выходят на обед. Если есть время начала и окончания, необходимо создать новое событие.
модель:
[Key]
public Guid EventID { get; set; }
public DateTime Start { get; set; }
public DateTime? End { get; set; }
public string Note { get; set; }
[Timestamp]
public byte[] Timestamp { get; set; }
public string Title { get; set; }
public bool ActiveSchedule { get; set; }
[Column("UserId")]
public string Id { get; set; }
[ForeignKey("Id")]
public virtual ApplicationUser User { get; set; }
}
контроллер:
public ActionResult Create(LoginViewModel workTimeEvent)
{
PasswordHasher ph = new PasswordHasher();
ApplicationUser user = new ApplicationUser
{
Email = workTimeEvent.Email
};
if (db.Users.Where(x => x.Email == workTimeEvent.Email).Count() == 1)
{
var result = ph.VerifyHashedPassword(user.PasswordHash, workTimeEvent.Password);
if (result == PasswordVerificationResult.Success)
WorkTimeEvent work = new WorkTimeEvent() { };
if (work.Start==null)
{
WorkTimeEvent clockIn = new WorkTimeEvent()
{
User = db.Users.Where(e => e.Email == workTimeEvent.Email).First(),
Start = DateTime.Now,
EventID = Guid.NewGuid()
};
db.WorkTimeEvents.Add(clockIn);
db.SaveChanges();
return View();
}
else if (work.End == null)
{
}
db.WorkTimeEvents.Add(work);
db.SaveChanges();
return View();
}
else
{
return View("inValid");
}
}
bull
— это меня рассмешило :) - person MickyD   schedule 19.04.2018