Как восстановить (обновить) LINQ to SQL DataContext?

Я использую LINQ to SQL в проекте WPF. Я внес небольшие изменения в базу данных (изменил тип данных полей, которые не содержат данных).

Теперь я хочу восстановить (обновить) LINQ to SQL DataContext этого проекта (я использую VS 2008). Я пытаюсь щелкнуть правой кнопкой мыши на элементе.dbml в обозревателе решений и выбрать "Обновить", но ничего не происходит.

Как я могу обновить DataContext в проекте Visual Studio 2008 WPF?

4 ответа

Решение

Не прибегая к каким-либо сторонним инструментам, самый простой способ - просто удалить измененные таблицы из конструктора и перетащить их обратно из обозревателя сервера.

К сожалению, если вы внесли какие-либо изменения в конструктор L2S вручную, они не будут сохранены, и вам придется снова вносить изменения вручную.

У huagati есть инструмент, который утверждает, что может обновлять изменения, но я сам не пробовал.

Как уже говорилось в других ответах, это можно сделать только путем удаления и повторного добавления таблицы. Однако если вы позже перейдете на Entity Framework, появится возможность делать именно то, что вы ищете (в контекстном меню [щелчок правой кнопкой мыши] будет опция "Обновить модель из базы данных").

  1. Удалить файл класса Designer
  2. Перенесите таблицы из обозревателя серверов в конструктор.

Есть инструмент командной строки sqlmetal.exe который автоматически генерирует .dbml файл.

SQLMetalplus - это проект, который добавляет расширение к Visual Studio, чтобы Create/Refresh

https://github.com/thedemz/dotnet-sqlmetal-plus

Другие вопросы по тегам