Проблема с Visual Studio и типизированным набором данных

Я задаю аналогичный вопрос, но по-другому. В моей среде test / dev у меня есть новое веб-приложение решения / проекта VS2012 C # .NET 3.5, которое попадает в мой локальный экземпляр SQL Server 2012 Express на моем компьютере test / dev.

Новый проект представляет собой перезапись старого проекта, а старый проект был написан на VS2008 и попал в наш производственный экземпляр SQL Server 2008 Express.

Я скопировал файлы Typed DataSet (.xsd, .xss, .xsx, .xsc, .Designer.cs и т. Д.) Из старого проекта VS2008 в новый проект VS2012.

Я могу использовать эти типизированные наборы данных для взаимодействия с моей локальной тестовой базой данных (извлекать, сохранять, обновлять и т.д.), но мне нужно обновить их, чтобы они знали о вновь созданных столбцах в одной из тестовых таблиц базы данных.

Как мне это сделать? Я читал, что один из способов - дважды щелкнуть .xsd, затем щелкнуть правой кнопкой мыши по таблице и нажать «Настроить ...». Этот пункт меню отключен. Я создал новое подключение данных в обозревателе серверов к тестовой базе данных, но это не помогает, поскольку я думаю, что существует разрыв между типизированными наборами данных и базой данных ...

Еще одна вещь, мне также нужно было скопировать из старого проекта в новый эти файлы DataConnection (.cs и .resx), чтобы использовать типизированные наборы данных.

Спасибо


person Kershaw    schedule 23.09.2015    source источник
comment
Я предполагаю, что проект 2008 года тоже был веб-проектом? Как насчет того, чтобы скопировать проект ВСЕГО 2008 года, открыть новую Visual Studio, которая принудительно выполнить обновление, а затем удалить то, что вам не нужно? Я делал это с 2008 по 2013 год, и я мог настроить наборы данных в своем новом проекте.   -  person Jeremy    schedule 23.09.2015
comment
Возможно, стоит попробовать. Вернусь к вам ...   -  person Kershaw    schedule 23.09.2015
comment
так сколько переписываний вы делаете? Если вы переделываете уровень доступа к данным, почему бы не отойти от типизированных наборов данных и перейти к чему-то более современному?   -  person Jeremy    schedule 24.09.2015
comment
Я согласен, предпочтительнее перейти на Entity framework или что-то еще. Но, как это часто бывает, это займет слишком много времени, а клиент хочет этого вчера.   -  person Kershaw    schedule 24.09.2015
comment
Боюсь, вам придется продираться через это. Я не думаю, что типизированные наборы данных использовались много с самого начала, а теперь, когда проблемы с обновлением, возможно, не будет много людей, способных помочь. Вам придется потратить время, чтобы понять это, или переделать кучу вещей. Вам решать, сколько времени вы потратите, прежде чем считать это потерянным усилием.   -  person Jeremy    schedule 24.09.2015
comment
Я нашел решение вчера вечером и сегодня. И это заключалось в том, чтобы вручную добавить столбцы в сами таблицы данных на поверхности типизированного набора данных! Просто щелкните правой кнопкой мыши, добавьте столбец, дайте ему то же имя, что и новый столбец в таблице db, и в свойствах установите тип данных и значение по умолчанию. Мне также нужно было обновить класс DataConnection.cs, добавив SqlParameters для новых столбцов. Кроме того, операторы sql для операций выбора, вставки, обновления и удаления хранятся в файле DataConnection.resx, и мне нужно было добавить новые столбцы в операторы обновления и выбора.   -  person Kershaw    schedule 24.09.2015
comment
Я скажу, что, хотя эта реализация взаимодействия с базами данных работает, я не думаю, что когда-либо буду использовать ее в новом проекте. Я потратил 3 дня на раскручивание колес, чтобы понять это, и это только что задержало этот проект и немного расстроило меня. Спасибо за комментарии и попытки помочь.   -  person Kershaw    schedule 24.09.2015
comment
нп. Спасибо за обновления! Я рад, что у тебя все получилось.   -  person Jeremy    schedule 24.09.2015


Ответы (1)


Я нашел решение вчера вечером и сегодня. И это заключалось в том, чтобы вручную добавить столбцы в сами таблицы данных на поверхности типизированного набора данных! Просто щелкните правой кнопкой мыши, добавьте столбец, дайте ему то же имя, что и новый столбец в таблице db, и в свойствах установите тип данных и значение по умолчанию. Мне также нужно было обновить класс DataConnection.cs, добавив SqlParameters для новых столбцов. Кроме того, операторы sql для операций выбора, вставки, обновления и удаления хранятся в файле DataConnection.resx, и мне нужно было добавить новые столбцы в операторы обновления и выбора.

Я скажу, что, хотя эта реализация взаимодействия с базами данных работает, я не думаю, что когда-либо буду использовать ее в новом проекте.

person Kershaw    schedule 24.09.2015