Библиотека классов данных nettiers не распознана

Мне нужно было создать консольное приложение, используя библиотеки классов nettiers. Я создал новый проект консольного приложения, добавил ссылки на все библиотеки из NetTiers и создал файл app.config со всеми необходимыми конфигурациями. Я получаю intellisense и никаких ошибок и все, когда я делаю кодирование, но когда я иду к компиляции приложения, я получаю сообщение об ошибке, что PPGEDI.Data не существует.

У меня только одна строка в program.cs Основной метод:

PPGEDI.Entities.VansEntity van 
  = DataRepository.VansEntityProvider.GetById(16);

Я получаю следующую ошибку:

Error   93  
   The type or namespace name 'Data' 
   does not exist in the namespace 'PPGEDI' 
   (are you missing an assembly reference?) 

Это разочаровывает, потому что я знаю, что добавил ссылку на сборку:

Я использую Visual Studio 2010 с C# и.NET 4.0. Может кто-нибудь дать мне представление о том, что мне нужно сделать, чтобы заставить это работать.

Как примечание, это работает, если я использую тот же оператор в методе на странице ASPX в веб-приложении, сгенерированном nettiers.

1 ответ

Решение

@BrokenGlass, вы были абсолютно правы. Я дважды проверил, и он был установлен на ".NET Framework Client Profile", я изменил его на.NET 4, и теперь он работает, можете ли вы поставить это как ответ?

Вы используете профиль клиента.NET в своем консольном приложении, которое является "минимизированной" версией, которая содержит не все сборки.

Проблема заключается в том, что когда ваше приложение добавляет ссылку на библиотеку классов, которая нацелена на полную платформу, ссылки на "полную" сборку каркаса не разрешаются. Это приводит к довольно непредвиденному сообщению об ошибке, которое вы видите. Переход на полную версию.NET 4 в качестве целевой платформы решит проблему.

Более подробный обзор проблемы и профиля клиента.NET 4 в целом также см. В разделе "Что нового в.NET Framework 4 Client Profile RTM"

Другие вопросы по тегам