У нас есть процесс, который включает создание базы данных на серверах баз данных SQL Server 11 и 10. Мы используем dacpac для импорта этих данных на C # через DacServices. Это используемый код:
var dac = new DacServices(masterConnString);
using (var bacPac = BacPackage.Load(templatePath))
{
dac.ImportBacpac(bacPac, dealer.VSID.ToString(CultureInfo.InvariantCulture));
}
Когда мы запускаем это для первоначального тестирования с наших локальных машин, он работает должным образом. Однако когда я загружаю это на сервер (он работает как часть службы WCF). Я получаю следующую ошибку:
Инициализатор типа для Microsoft.SqlServer.Dac.DacServices вызвал исключение.
Трассировка стека сервера: в System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderaught (ответ на сообщение, ошибка MessageFault, действие строки, версия MessageVersion, FaultConverter faultConverter) в System.ServiceModel.Channels.ServiceChannel.HandleReply (операция System.ServiceModel.Channels.ServiceChannel.HandleReply) ServiceModel.Channels.ServiceChannel.Call (действие String, одностороннее логическое значение, операция ProxyOperationRuntime, входы Object [], выходы Object [], тайм-аут TimeSpan) в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService (IMethodCallMessage) в методе System.CallMessage. ServiceModel.Channels.ServiceChannelProxy.Invoke (сообщение IMessage)
Исключение повторно генерируется в [0]: в System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage (IMessage reqMsg, IMessage retMsg) в System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke (MessageData и msgData, тип Intchodata) String string, целое число Int32) в WcfServiceClient.Method (строка String, целое число Int32)
Заранее спасибо.
Dll assembly
проблема, как эта конкретная сборка упоминается локально ... помечена ли онаCopyLocal = true
, также может ли это бытьGAC
проверить все ваши ссылки и убедиться, что они одинаковы на целевой машине - person MethodMan   schedule 14.08.2015