Не удается запустить проекты модульного тестирования .NET 3.5 из-за VS2012?

1

Вопрос:

В настоящее время у меня есть два проекта. Оба они были созданы в Visual Studio 2012. Оба проекта имеют проект Unit Test в своих соответствующих решениях. Один из них предназначен для платформы.NET 4, а для других целей -.NET 3.5.

Проблема:

Оба этих проекта отлично работают в VS. Когда я пытаюсь запустить проект.NET 3.5 в MSTest.exe из командной строки через пакетный файл, я получаю следующее сообщение:

To be able to target your project to .NET Framework 3.5, you must use the steps
documented at the following Microsoft Web site: http://go.microsoft.com/fwlink/
?LinkId=201405

Информация о ссылке просто предлагает перенаправить проект на.NET 3.5, но поскольку проект уже нацелен на.NET 3.5, я не вижу, как это поможет!

Я могу запустить свой другой целевой проект.NET 4 через пакетный файл без проблем.

Реальные вопросы у меня есть:

1. По мере того как я построил свои проекты в VS2012, будет ли он работать только с модульными тестами, настроенными на платформу.NET 4 и выше?

2. Если бы я был - ради аргументов - запустил это из VS2008, это сработало бы?

Теги:
unit-testing
batch-file
visual-studio-2012

1 ответ

0
Лучший ответ

Структура 4. 0+ установлена с VS 2012. Если вы хотите использовать.net 3.5 и low, вы должны загрузить и установить его.

  • 0
    Таким образом, как стандарт, даже если я нацелил проект на .NET 3.5, он будет работать на .NET 4, как он был построен в VS2012?
  • 0
    Если вы устанавливаете VS 2012 только с платформой 4.x, глобальный кэш сборок (GAC) помещается в C: \ Windows \ Microsoft.NET \ assembly \ GAC_MSIL. Когда вы создаете проект с использованием .NET 4.0, путь для всех общих сборок устанавливается на этот GAC. Поэтому, если вы используете .NET 4.5.1 для проектов .NET 4.0, он будет работать хорошо, поскольку путь к GAC одинаков и приложение будет иметь доступ к ним везде с .NET 4. +. Но .NEt 3.5 GAC помещается в C: \ Windows \ assembly \. При сборке проекта, созданного с помощью .Net 3.5, компилятор изменяет путь к GAC .NET 4. +, и это приложение будет работать только на ПК с .NET. 4. +

Ещё вопросы

Сообщество Overcoder
Наверх
Меню