VS 2010. NET Framework проблема с сборкой, нацеленной на 3.5 жалуется, что ему нужна более поздняя версия .NET Framework - PullRequest
4 голосов
/ 04 июня 2010

У меня странная проблема со сборкой, ориентированной на .NET 3.5.При включении этой сборки через Добавить ссылки / Обзор в DLL - он жалуется:

"MyAssembly.dll" или одна из его зависимостей требует более поздней версии .NET Framework, чем та, которая указана в проекте.Вы можете изменить цель .NET Framework, щелкнув «Свойства» в меню «Проект», а затем выбрав новую цель в раскрывающемся списке «.NET Framework».(В Visual BVasic это находится на вкладке «Компиляция», нажав кнопку «Дополнительные параметры компилятора ...».) Вы все еще хотите добавить ссылку на «MyAssembly.dll» в проект?

Кажется, что нет никакой причины или причины этой ошибки - мы попробовали «очевидные» вещи.

Сборка, которая использует DLL, - это .NET 3.5. DLL - это .NET 3.5.Все сборки, которые каждая использует - это .NET 3.5. Ничто не использует .NET 4.0 [AFAIK]

Что можно проверить / сделать? В DLL есть какое-то COM-взаимодействие - может ли это бытьЭтот проект был перенесен с VS 08 на VS 10, но, опять же, он по-прежнему нацелен на .NET 3.5. Я убедился, что все сборки, перечисленные в Справочном руководстве, предназначены для правильной версии CLR [2].

Обновление целевого проектав .NET 4 действительно устраняет проблему - но это не то, что мы можем сделать в настоящее время.

  • Я должен также отметить, что включение этого через References / Project [то же решение] делаеткажется, работает - когда downgrдобавление DLL в .NET 3.0.[это может быть не совсем точно - тестировал довольно много вещей]

У меня нет идей на данный момент.

Ответы [ 2 ]

2 голосов
/ 05 июня 2010

Оказывается, проблема в том, что ... как ни странно ... с компонентами Janus Controls .NET 3.5.

На сегодняшний день элементы управления Janus [GridEX] не работают с VS 10 и .NET 3.5, ... только с проектами .NET 4, даже если решение было встроено в .NET 3.5 и VS 2008.

1 голос
/ 04 июня 2010

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

Один из возможных вариантов - игнорировать сообщение и в любом случае добавить ссылку. Затем попробуйте использовать любой тип в сборке. Вы должны получить более полное сообщение об ошибке.

Например, это ошибка, которую я получаю на своем компьютере, когда пытаюсь сослаться на библиотеку классов, ориентированную на более высокую платформу:

Первичная ссылка "ClassLibrary2" не может быть разрешена, поскольку она имеет косвенную зависимость от сборки .NET Framework "mscorlib, Version = 4.0.0.0, Culture = нейтральный, PublicKeyToken = b77a5c561934e089", версия которого выше "4.0. 0.0 ", чем версия" 2.0.0.0 "в текущей целевой структуре. ConsoleApplication1

Надеюсь, это поможет точно определить проблему.

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