Частные _Accessors не строят с MSBUILD - PullRequest
1 голос
/ 27 сентября 2011

У меня есть скрипт сборки (.bat), который вызывает MSBUILD (C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\msbuild.exe), который раньше некоторое время работал , но перестал работать после установки VS11 Developer Preview.Теперь сборка не может перестраивать проекты, которые включают в себя модульные тесты MSTest с частными средствами доступа.

Я получаю

ошибка CS0246: Не удалось найти имя типа или пространства имен 'BaseViewModel_Accessor' (вы пропустили директиву using или ссылку на сборку?)

, что в значительной степени означает, что MSBuild отказывается автоматически генерировать сборку BaseViewModel_Accessor.Конечно, BaseViewModel является лишь примером - я получаю сообщение об ошибке для каждого тестового класса, для которого требуются средства доступа.

Эти самые одни и те же проекты прекрасно работают на одной машине из Visual Studio 2010 (но не VS11).

Мне известен по крайней мере один ответ на этот вопрос , но это несколько неудовлетворительно, поскольку VS явно установлен на моей машине, и я не использую NUnit, но Microsoft оченьсобственный модуль модульного тестирования.

Я подозреваю, что наблюдаемое поведение может быть связано с тем, что VS11 является «Предварительным просмотром разработчика» (мой VS10 - Ultimate), поэтому он может быть поврежден и не сможет генерировать средства доступа.Тем не менее, я явно использую .NET 4 MSBUILD.exe и поэтому ожидаю, что он сможет использовать то, что VS10 использует внутри ...

В любом случае, если у кого-то есть менее инвазивные решения, чем удалить обе установки Visual Studio и.NET 4.5, и переустановите все с нуля, они будут очень признательны.

Должен быть способ исправить все, что сломалось, установив VS11.Желательно, чтобы VS11/.NET 4.5 оставался установленным, и не нужно было переустанавливать VS10 с нуля ... Однако я уже пробовал "ремонтировать" VS10, и это не помогло.

1 Ответ

0 голосов
/ 09 ноября 2011

Чтобы положить эту проблему в порядок, мне пришлось удалить VS11 и .NET 4.5.Я также должен был переустановить .NET 4.0, так как он, похоже, был поврежден в процессе.

Кстати, это была не «производственная» машина, но было бы неплохо разделить проблемы.Установка .NET 4.5 и VS11 не должна - в принципе - уничтожать работающую комбинацию .NET 4.0 / VS2010.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...