Мне нужно проверить правильность ввода перед обновлением моей базы данных.
Я создал метод bool, чтобы проверить, действителен ли он.
private bool validProject(string ProjectID)
{
using (AXEntitiesDEV db = new AXEntitiesDEV())
{
return db.PROJTABLEs.Any(c => c.PROJID==ProjectID);
}
}
и проверяю егов моем методе обновления.
protected void Insert(object sender, EventArgs e)
{
using (GPSE2Entities entities = new GPSE2Entities())
{
TextBox txtEditTime = (TextBox)gvDailyGPS.FooterRow.FindControl("txtFooterTime");
DropDownList ddlEventDateOnly = (DropDownList)gvDailyGPS.FooterRow.FindControl("ddlFooterDateOnly");
DateTime EDT = DateTime.Now;
TextBox txtAddProjectID = (TextBox)gvDailyGPS.FooterRow.FindControl("txtAddProjectID");
validProject(txtAddProjectID.Text);
DailyGPSTable newLOB = new DailyGPSTable
{
EventDateTime = EDT,
Project = txtAddProjectID.Text,
};
entities.DailyGPSTables.Add(newLOB);
{
entities.SaveChanges();
BindGrid();
}
entities.SaveChanges();
}
}
Я пытался перехватить и сообщить об ошибке, но он допускает неправильный ввод через false.
try
{
validProject(txtAddProjectID.Text);
}
catch (ArgumentException)
{
addErr.Text = "";
addErr.Text = "Invalid Project ID.";
}
Как лучше всего поймать и сообщить об ошибкедо попытки вставки?