Тип не может быть разрешен в UnitTest после переноса Project с vs2005 на vs2010 (MSTest) - PullRequest
2 голосов
/ 24 сентября 2011

Мы на самом деле анализируем, что нам нужно делать, если мы переносим наше приложение с VS2005 на VS2010.


Что я сделал:

Iоткрыл все решения в VS2010 и позволил конвертировать против проектов.

На данный момент производственные сборки не получают обновления .NET Framework, они должны быть ориентированы на каркас 2.

Каркасверсия модульных тестов сборок ( MSTest ) автоматически переключается на версию 4 с помощью VS2010, и это нормально.


Проблема: Некоторые модульные тесты не выполняются, поскольку они не могут получить доступ к файлу конфигурации с помощью вызова ConfigurationMananger.OpenExeConfiguration(ConfigurationUserLevel.None).

Выдается следующее исключение:

System.Configuration.ConfigurationErrorsException: при загрузке файла конфигурации произошла ошибка: тип не разрешен для элемента X ... System.Runtime.Serialization.SerializationException: тип не разрешен для элемента X

член X является производным отм GenericIdentity и помечен как [Serializable].Все необходимые файлы (конфигурация, сборки) обновлены и правильно развернуты в выходной папке.

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

Я нашел эти ресурсы, но они не помогли мне. сообщение из стека

У кого-нибудь есть идея, почему я получаю описанное поведение?

1 Ответ

2 голосов
/ 19 ноября 2011

Если я изменю свою личность с

public MyIdentity : GenericIdentity
{ }

до

public MyIdentity : MarshalByRefObject, IIdentity
{ }

все мои тесты становятся зелеными.

...