2011-10-20 1 views
0

dacpac (데이터 계층 응용 프로그램)에서 데이터베이스를 업그레이드하기 위해 powerscript 예제와 동일한 API를 사용하는 작은 응용 프로그램이 있습니다.Azure에서 DAC (데이터 계층 응용 프로그램) 팩 API 사용

SQL Server 도구가 설치되지 않은 상태에서 Windows 2008 서버에서 작업하려면 dll을 많이 참조하고 해당 DLL에서 "로컬 복사"를 선택하여 컴파일 폴더로 가져와야합니다. 이것은 잘 작동합니다.

이제 Azure에서 작업자 역할과 동일한 API를 호출하려고합니다. . 파일 또는 어셈블리 'Microsoft.SqlServer.BatchParser.dll'또는 해당 종속성 중 하나를로드 할 수 응용 프로그램 : 나는 (같은 DLL을 포함)을 실행할 때 나는

"System.IO.FileLoadException를 얻을 수 응용 프로그램 이벤트 로그 "

로컬 에뮬레이터에 배포 할 때 제대로 작동합니다.

아직 로그에서 의미있는 것을 얻을 수 없었습니다 (내 진단 도구가 맞는지 확실하지 않음).

언급 된 파일은 게시 된 패키지에 있습니다. 나는 teh 파일의 두 버전을 발견했지만 다른 버전은 32 비트이고 시도하면 BadFormat 예외가 생깁니다.

ADODB, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 
Microsoft.Build.Utilities.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL 
Microsoft.CSharp 
Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL 
Microsoft.ReportViewer.ProcessingObjectModel, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL 
Microsoft.SqlServer.BatchParser 
Microsoft.SqlServer.BatchParserClient 
Microsoft.SqlServer.ConnectionInfo, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Diagnostics.STrace, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Dmf, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Management.Dac, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Management.DacEnum, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Management.DacSerialization, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Management.Sdk.Sfc, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Management.SmoMetadataProvider, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Management.SqlParser, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.ServiceBrokerEnum, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.Smo, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.SqlClrProvider, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.SqlServer.SqlEnum, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL 
Microsoft.WindowsAzure.Diagnostics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 
Microsoft.WindowsAzure.ServiceRuntime 
Microsoft.WindowsAzure.StorageClient, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 
System 
System.Configuration 
System.Core 
System.Data 
System.Data.DataSetExtensions 
System.Data.Entity.Design 
System.Deployment 
System.Drawing 
System.Windows.Forms 
System.Xml 
System.Xml.Linq 
WindowsBase 

모든 아이디어는 내가 WHT를 누락 :

저는 여기에 참조하고있어 DLL이 무엇입니까?

답변

0

나는 이것을 분해했다고 생각합니다. VM에 대한 원격 액세스를 가능하게하여 응용 프로그램 이벤트에 액세스 할 수있게되었습니다. 내 작업자 역할을 실행 한 후 이벤트 뷰어에서 microsoft.vc80.crt를 찾을 수 없다는 오류가 발생했습니다.

그 이름의 DLL을 찾지 못했습니다하지만 난이 폴더에

microsoft.vc80.crt.manifest 

을 발견

msvcr80.dll 
msvcp80.dll 
msvcm80.dll 
: 나는 또한 포함 3 다른 DLL에

C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Update Cache\KB2528583\ServicePack\x64 

그것은 지적

지금까지 한 번만 업그레이드를 실행했지만 잘하면 지금 완료되었습니다. 더 이상 문제가 발견되면 여기에서 업데이트 할 것입니다.

희망이 있으면 도움이됩니다.