1
Я использовал «» идентификатор пользователя в SQL является тип данных INT и в интерфейсе (.cs) также используется тот же тип данных INT, то почему бросать эту ошибку: «указанный литой не является допустимым»Зачем бросать сообщение об ошибке: указанный прилив недействителен?
var userRowsCustId = dsCustReg.Tables[0]
.AsEnumerable()
.Select(r => r.Field<int>("AccountNo"));
var allRowsCustId = dsAllTables.Tables[0]
.AsEnumerable()
.Select(r => r.Field<int>("UserId"));
IEnumerable<int> allIntersectingCustIds = userRowsCustId.Except(allRowsCustId);
if (allIntersectingCustIds.Any())
{
}
что такое решение эта ошибка?
ошибка метание в r => r.Field<int>("AccountNo")
Вы использовали в 'SqlDataAdapter' заполнить таблицу или как вы заполнили' DataTable'? Является ли 'AccountNo' также' int'-column? Посмотрите на 'dsCustReg.Columns' в отладчике. –
Какие типы данных являются 'AccountNo' и' UserId' в базе данных? –
Кроме того, ваш код, похоже, имеет именование или логическую проблему. Пересечение обычно означает, что они имеют одни и те же значения, но 'Except' возвращает все пользовательские строки, которые не существуют в строках cust. Возможно, вы хотите использовать 'Intersect'. –