Запрос проверки уникального идентификатора - PullRequest
1 голос
/ 07 марта 2012

Я пишу заявление, которое проверяет мою базу данных, чтобы увидеть, существует ли значение, чтобы оно не вставляло запись в базу данных, если у нее такой же уникальный идентификатор.Мои исключения работают для остальных полей, но у меня возникают проблемы с извлечением данных из базы данных для сравнения со значением, полученным из базы данных.Ниже приведен пример моего кода.

int EmployeeIDCatched = int.Parse(employeeIDTextBox.Text);
var EmployeeIDQuery = from EmployeeID in EmployeeDataSet.Employee select EmployeeIDCatched;
if (EmployeeIDQuery.Equals(EmployeeIDCatched))

Я надеялся, что кто-то сможет исправить это для меня.

Набор данных называется EmployeeDataSet, таблица называется Employeeи строка, которую я ищу, называется EmployeeID

Если кто-то может помочь, я был бы очень благодарен!

Ответы [ 2 ]

1 голос
/ 07 марта 2012

Я предполагаю, что вы хотите только одно попадание и хотите, чтобы объект сотрудника был возвращен:

int employeeIDCatched = int.Parse(employeeIDTextBox.Text);

var matchingEmployee = (from employee in EmployeeDataSet.Employee
                        where employee.ID.Equals(employeeIDCatched)
                        select employee).FirstOrDefault();

Обновление : Не уверен, что я не прочитал вопрос достаточно близко или детали изменились, но теперь нужно просто получить bool -результат:

int employeeIDCatched = int.Parse(employeeIDTextBox.Text);

bool hasMatchingEmployee = EmployeeDataSet.Employee.Any(employee =>
    employee.ID.Equals(employeeIDCatched));
0 голосов
/ 07 марта 2012

Вы можете использовать метод Any, чтобы проверить, существует ли строка.

var selectedEmployeeId = int.Parse(employeeIDTextBox.Text);
if (EmployeeDataSet.Employee.Any(e => e.EmployeeID == selectedEmployeeId))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...