2013-10-15 1 views
0

현재 SSIS 통합 패키지를 만들고 있는데이 중 일부로 webservice에 액세스해야합니다. 누구든지 웹 서비스에 변수 값을 제공하고 웹 서비스가 반환하는 값을 얻는 데 사용할 수있는 C# 코드를 알고 있습니까?C# 스크립트를 사용하여 WebService에 액세스

SSIS 웹 서비스 작업은 내가 원하는만큼 동적이지 않습니다. 내가 제공해야 매개 변수는 : 아이디

• hardwareFingerprint

databaseName을

• 서버 이름

+0

웹 서비스에 대한 세부 사항을 적어주세요. 사용하는 데이터 형식은 무엇입니까? – akonsu

답변

3

대신 스크립트 작업을 추가하십시오. 코드 편집기에서 참조를 마우스 오른쪽 단추로 클릭하고 '웹 참조 추가'를 선택하십시오. 웹 서비스 끝점 URI를 입력하고 프로젝트의 로컬 이름을 지정하고 '참조 추가'를 클릭하십시오.

ScriptMain.cs 파일 내에 using 문을 추가하여 새 웹 참조를 가리키고 서비스를 인스턴스화하고 전화를 겁니다.

일부 예제 코드 :

using Company.WebServices; 

namespace ST_abcdef.csproj 
{ 
    [System.AddIn.AddIn("ScriptMain", Version = "1.0", Publisher = "", Description = "")] 
    public partial class ScriptMain : Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase 
    { 
     public void Main() 
     { 
      WebService1 webService1 = new WebService1(); 
      var result = webService1.methodA("param1", "param2"); 
      // process result 
     } 
    } 
} 
+0

답장을 보내 주셔서 감사합니다. 스크립트가 정상적으로 완료되었습니다. 그러나 웹 서비스에 전달한 가치에 대해서는 아무 일도 일어나지 않는 것 같습니다. 기본적으로 webservice는 값으로 뭔가를 수행 한 다음 SQL 테이블에 기록하지만 내 SQL 테이블에는 아무 것도 표시하지 않습니다. 어떤 아이디어? – jeastham1993

+0

웹 서비스가 호출되고 있는지 또는이 시점 이전에 실패했는지 확인할 수있는 로그가 있습니까? –

+0

Im 시도해 볼게요, 또 다른 흥미로운 비꼬는 점은 webservice가 객체를 params로 받아들이므로 객체를 만들고 문자열 값으로 객체를 설정 한 다음 객체를 전달해야 할 필요가 있다고 생각합니다. 웹 서비스 메서드 – jeastham1993

관련 문제