Для всех, кто сталкивается с этой проблемой при переносе своего приложения на основе DAAB на .NET4, entlib5 поставляется с исходным кодом, который можно установить, например, через C:\Program Files (x86)\Microsoft Enterprise Library 5.0\src\Enterprise Library 5.0 - Source Code.msi
Запуск этого msi и принятие значений по умолчанию создает папку EntLib50Src
в области документов. Если вы войдете в EntLib50Src\Blocks\Data
и откроете Data.2010.sln
, вы можете изменить целевую структуру на .NET Framework 4 Client Profile
.
Это создаст кучу ошибок, связанных с зависимостью System.Data.Oracle
. Удалите ссылку на него, а затем исключите Oracle
части проекта и закомментируйте любые Oracle
ссылки в общем коде.
Если вы затем перекомпилируете со строгой подписью имени, вы можете использовать выходные сборки (Microsoft.Practices.EnterpriseLibrary.Common.dll
и Microsoft.Practices.EnterpriseLibrary.Data.dll
) с .NET Framework 4 Client Profile
. Вы должны распространять Microsoft.Practices.Unity.dll
из, например, C:\Program Files (x86)\Microsoft Enterprise Library 5.0\Bin
, но она совместима с профилем клиента.
Обратите внимание, что приведенное выше работает, если вам не нужна поддержка Oracle в вашем приложении. У меня нет, только SQL Server и VistaDB. Вышеупомянутое должно работать с любой базой данных, отличной от Oracle, совместимой с ADO.NET.
person
user326608
schedule
10.11.2013