Я пытаюсь заполнить таблицу данных с помощью SqlDataAdapter в C #. Я не очень знаком с объектами, и в основном работаю над шаблоном чужого кода, чтобы попытаться выяснить, как он работает. Вот основная форма.
SqlCommand command = new SqlCommand(@"SELECT * FROM tblEmployees WHERE Name = " + firstSSN,connection);
SqlDataAdapter adapter = new SqlDataAdapter(command.CommandText.ToString(), connection.ConnectionString.ToString());
SqlCommandBuilder cmdBuilder = new SqlCommandBuilder(adapter);
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
adapter.Fill(table);
И это прекрасно работает на их форме. Я попытался сделать то же самое с моим, но получил ошибку при попытке преобразовать nvarchar в столбец типа данных int. Я просмотрел MSDN и попробовал следующее: 1) Добавление столбцов в DataTable с соответствующими именами / типами / первичными ключами из tblEmployees. 2) Добавление TableMapping в DataAdapter, хотя я не уверен на 100%, что у меня есть правильный синтаксис в этой части. Я делаю:
adapter.TableMappings.Add("work", "dbo.tblEmployees");
за это. DataTable называется «работа», но я не уверен, что у меня есть правильный синтаксис, я добавляю имя таблицы, как оно отображается в SQL Server Management Studio, но не знаю, как мне проверить, правильно ли он связывается.
Спасибо за любую помощь, которую вы можете оказать. Я бьюсь над этим до такой степени, что нахожусь на грани того, чтобы приблизиться к своей цели совершенно другим способом и выбросить то, что у меня есть.