我正在编写一个语句,它检查我的数据库以查看是否存在值,以便它不会将记录插入数据库(如果它具有相同的唯一ID)。我有其他字段的异常工作但是我无法从数据库中检索数据以与我从数据库中捕获的值进行比较。下面是我的代码示例。
int EmployeeIDCatched = int.Parse(employeeIDTextBox.Text);
var EmployeeIDQuery = from EmployeeID in EmployeeDataSet.Employee select EmployeeIDCatched;
if (EmployeeIDQuery.Equals(EmployeeIDCatched))
我非常希望有人可以为我纠正这个问题。
数据集名为EmployeeDataSet
,该表名为Employee,我搜索的行称为EmployeeID
如果有人能提供帮助,我将非常感激!
答案 0 :(得分:1)
我假设您只想要一次点击,并且您希望返回员工对象:
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));
答案 1 :(得分:0)
您可以使用Any
方法检查是否存在行。
var selectedEmployeeId = int.Parse(employeeIDTextBox.Text);
if (EmployeeDataSet.Employee.Any(e => e.EmployeeID == selectedEmployeeId))