Сведения о вопросе

krutoi

15:56, 3rd August, 2020

Что заставляет Visual Studio не загружать assembly неправильно?

Просмотров: 476   Ответов: 4

Я с удовольствием кодировал решение приличного размера (чуть более 13k LOC, 5 проектов), которое использует Linq to Sql для доступа к данным. Внезапно я выполнил нормальную сборку, и я получил сладкое, сладкое двусмысленное сообщение:

Ошибка 1 построение не удалось из-за ошибок проверки в C:\xxx\xxx.dbml. Откройте файл и устраните проблемы в списке ошибок, а затем попробуйте восстановить проект. C:\xxx\xxx.dbml

Я не прикасался к своему уровню доступа к данным в течение нескольких недель, и никакие изменения не были внесены в файл DBML. Я пробовал множество безрассудных трюков, таких как повторное создание файла макета, создание копий и повторное добавление существующих файлов обратно в проект после перезапуска Visual Studio (в случае повреждения на уровне файла); все безрезультатно.

Я забыл надеть свои талисманы Visual Studio Skills +5, поэтому я начал искать вокруг, и единственным ответом, который я нашел, который имел смысл, был сброс моих пакетов, потому что Visual Studio не загружала assembly правильно. После запуска "devenv.exe /resetskippkgs" я фактически смог добавить файл dbml обратно в проект DAL и перестроить решение.

Я рад, что это исправлено, но я бы предпочел также получить более глубокое понимание из этого опыта. Кто-нибудь знает, как и почему это происходит в Visual Studio 2008?

Новое редактирование: 10/30/2008 это было не то, что просто случилось со мной. Рич Штраль недавно написал на своем "web log" о том же опыте . Он ссылается на другой блог с той же проблемой и использовал то же действие .

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



  Сведения об ответе

VCe znayu

03:40, 26th August, 2020

Я также получаю эту ошибку при попытке скомпилировать уровень доступа к данным во втором решении (установщик). Что я делаю, так это Запускаю пользовательский инструмент на dbml-файле, и это делает его.

В файле dbml действительно нет ошибок, которые необходимо исправить.

Моя теория заключается в том, что Visual Studio кэширует скомпилированную версию файла dbml и что кэш недопустим для других решений. Я думаю, что запуск /resetskippkgs делает то же самое, что и перекомпиляция файла dbml.

В любом случае, пока нет никаких решений для этого?


  Сведения об ответе

PAGE

19:30, 14th August, 2020

После установки Phalanger для Visual Studio 2008 я попытался создать новое приложение PHP WinForms. Создание проекта завершилось неудачей с аналогичным сообщением об ошибке, указывающим, что не удалось загрузить DLL required (Failed to load file или assembly...). Запуск команды devenv.exe /resetskippkgs в Visual Studio 2008 Command Promtp немедленно решил эту проблему.

Спасибо за информацию.


  Сведения об ответе

dump

15:33, 7th August, 2020

TBH, у меня было несколько подобных случаев, когда файлы "seemed to go crazy".. Однако при расследовании оказалось, что файлы изменились каким-то образом, форма или форма.. (например, иногда изменения могут быть внесены в файл, случайно изменив свойство где-то, что кажется несвязанным).

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


  Сведения об ответе

lourence

14:34, 26th August, 2020

У меня была такая же проблема в VS 2010 (сборка не удалась из-за ошибок проверки в файле dbml). Я решил это, просмотрев представление конструктора файла dbml и слегка перетащив таблицу в другое место, чтобы она обновила файлы dbml layout etc. Это, казалось, делало трюк, но было немного странной проблемой.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться