Подтвердить что ты не робот

Не удалось загрузить файл или сборку "Microsoft.SqlServer.DTSRuntimeWrap"

Я не могу понять, почему я получаю эту ошибку при запуске моего приложения (MVC 3). Проект имеет ссылку на Microsoft.SQLServer.ManagedDTS. У меня установлены как SQL Server 2008 R2, так и SQL Server 2012 (оба Express). Я использую 2012 с этим приложением.

Ошибка сервера в приложении "/".

Не удалось загрузить файл или сборку "Microsoft.SqlServer.DTSRuntimeWrap" или одной из его зависимостей. Была сделана попытка загрузить программу с помощью неправильный формат.

Описание: Необработанное исключение произошло во время выполнения текущий веб-запрос. Просмотрите трассировку стека информацию об ошибке и где она возникла в коде.

Сведения об исключении: System.BadImageFormatException: Не удалось загрузить файл или сборку "Microsoft.SqlServer.DTSRuntimeWrap" или одну из ее зависимостей. Была сделана попытка загрузить программу с неправильной Формат.

Ошибка источника:

Необработанное исключение было создано во время выполнения текущий веб-запрос. Информация о происхождении и местонахождении исключение может быть идентифицировано с использованием трассы стека исключений ниже.

След загрузки сборок: следующая информация может быть полезна для определить, почему сборка "Microsoft.SqlServer.DTSRuntimeWrap" может не загружается.

WRN: Регистрация привязки сборки отключена. Чтобы включить сборку регистрация сбоев, установить значение реестра [HKLM\Software\Microsoft\Fusion! EnableLog] (DWORD) на 1. Примечание: там это некоторое снижение производительности, связанное с сбоем привязки сборки Ведение журнала. Чтобы отключить эту функцию, удалите значение реестра [HKLM\Software\Microsoft\Fusion! EnableLog].

Трассировка стека:

[BadImageFormatException: невозможно загрузить файл или сборку "Microsoft.SqlServer.DTSRuntimeWrap" или одна из его зависимостей. была сделана попытка загрузить программу с неправильным форматом.]
System.Reflection.RuntimeAssembly._nLoad (AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark & ​​амп; stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0
System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark & stackMark, Boolean forIntrospection, Boolean suppressSecurityChecks) +567
System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark & stackMark, Boolean forIntrospection) +192 System.Reflection.Assembly.Load(String assemblyString) +35
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +123

[ConfigurationErrorsException: не удалось загрузить файл или сборку "Microsoft.SqlServer.DTSRuntimeWrap" или одна из его зависимостей. была сделана попытка загрузить программу с неправильным форматом.]
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +11568160
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +485 System.Web.Configuration.AssemblyInfo.get_AssemblyInternal() +79 System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +337
System.Web.Compilation.BuildManager.CallPreStartInitMethods() +280
System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +1167

[HttpException (0x80004005): не удалось загрузить файл или сборку "Microsoft.SqlServer.DTSRuntimeWrap" или одна из его зависимостей. была сделана попытка загрузить программу с неправильным форматом.]
System.Web.HttpRuntime.FirstRequestInit(контекст HttpContext) +11700896 System.Web.HttpRuntime.EnsureFirstRequestInit(контекст HttpContext) +141 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, контекст HttpContext) +4869125

4b9b3361

Ответ 1

Если это часть веб-приложения, вам нужно включить запуск 32-разрядных приложений из пула приложений IIS. Это решит вашу проблему.

Ответ 2

Microsoft.SqlServer.DTSRuntimeWrap.dll, вероятно, не находится в GAC, а это значит, что его нужно скопировать в свой веб-контейнер приложения папке или вручную добавлена ​​в ваш компьютер GAC (например, с помощью GACUTIL.exe). Вероятно, вы можете найти его в C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies\. Если вы указали его из такого местоположения в вашем проекте Visual Studio, то вы, вероятно, можете просто установить параметр в свойствах ссылки для копирования с Local на True.

Обратите внимание, что эта DLL не может быть распространена, поэтому вам действительно нужно будет установить SSIS на любом веб-сервере, на котором будет выполняться приложение, чтобы не нарушать лицензирование SSIS, но вам нужно будет убедиться в этом.