Я не знаю, правильно ли это сделать, но я пытаюсь получить все номера заданий из таблицы базы данных и проверять, что входные данные пользователя находятся в базе данных , Я делаю это, отправляя все данные в массив и проверяя, существует ли он там. Однако я уверен, что будет более простой способ. Это код, который я до сих пор:Проверка наличия int в массиве C#
public class IDNo
{
public int Col1 { get; set; }
}
private void button3_Click(object sender, EventArgs e)
{
String check = "SELECT * FROM Job";
using (SqlConnection con = new SqlConnection(str))
{
using (SqlCommand cmd = new SqlCommand(check, con))
{
con.Open();
var listOfId = new List<IDNo>();
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
var id = new IDNo();
id.Col1 = Convert.ToInt32(reader["JobNo"]);
listOfId.Add(id);
}
}
string JN = textBox10.Text;
int JoNo = Int32.Parse(JN);
if (JoNo == IDNo)
{
MessageBox.Show("No job number found, please try again!");
}
else
{
DO SOMETHING HERE WHEN CORRECT
}
}
}
}
Я бы так же, как некоторая помощь о том, как проверить, если количество вводимого пользователя существует в массиве.
Почему вы не запрашиваете у вас базу данных, если запись с напечатанным заданием номер существует или нет? Они созданы для такого рода задач не только для хранения всех ваших данных задания. – Steve
Почему бы просто не запросить * базу данных * выполнить поиск? ('SELECT * FROM Job, где JobNo = @ JobNo' и добавление '@ JobNo' для вашего объекта команды) –
Если вы собираетесь запрашивать базу данных, почему бы вам просто не отправить SQL-запрос, который вычисляет в одной строке, есть ли запись? Не забудьте параметризовать запрос. – Carlos