2011-02-22 3 views
1

C#으로 레코드 세트를 반환하는 방법은 무엇입니까? 이러한 레코드는 SQL Server에서 검색됩니다. 기본적으로 XML을 사용하는 웹 서비스 - 나는 이것을 원하지 않는다. 대신 레코드 세트로 반환하기를 원합니다. 이 값은 ASP classic에서 사용됩니다.웹 서비스를 사용하여 레코드 세트를 반환하십시오.

+2

고전 ADO 레코드처럼 당신이 레코드 집합 무엇을 의미합니까? 그게 C#에서 가능한지 확실하지 않습니다. – darren

답변

3

레코드 세트를 반환 할 수 없습니다. NET 유형 중 하나도 기존 ASP와 호환되지 않습니다. XML의 데이터 만 읽어야합니다. XML 스키마를 이해하고 Microsoft.XMLDOM을 사용하여 데이터를 구문 분석하십시오.

+0

정보를 제공해 주셔서 감사합니다. NET과 webservice에 익숙하지 않아서 (비) 가능성을 명확히하는 데 도움이되었습니다. – m0g

2

XML 응답을 구문 분석하는 것 외에 다른 방법을 사용하여 Classic ASP에서 ASP.NET WebService를 처리 할 수 ​​없습니다. http://www.4guysfromrolla.com/webtech/070302-1.shtml

+0

nooo, 가능한 한 빨리 SOAP에서 멀리 뛰어라 –

+0

@ 에두아르도 설명해주세요. 외치는 것이 아닙니다. –

+0

@ 존 : 죄송합니다. SOAP로 작업하는 고통의 날을 회상하고 큰 소리로 외칠 필요성을 느꼈습니다. –

1

당신은 ADO 레코드에 DataTable을 변환 할 수 있습니다

다음 링크는 당신이 쉽게 만들 수있는 MS SOAP 툴킷을 활용하는 방법에 대한 몇 가지 정보를 제공합니다. 다음은이를 수행하는 코드에 대한 링크입니다. http://chiragrdarji.blogspot.com/2007/02/converting-dataset-into-recordset.html 코드를 테스트하지는 않았지만 그 코드를 보면 정상적으로 작동합니다.

당신은 문제가 C#을 응용 프로그램에서 레코드 com 객체를 반환이있는 경우 adPersistXML 을 Recordset.Save를 사용하여 XML 및 지정 레코드를 변환 할 수 있습니다 http://msdn.microsoft.com/en-us/library/ms681501%28v=VS.85%29.aspx

그런 다음 ADO 레코드의 XML 문자열 표현을 가질 것 C# 응용 프로그램에서 고전 ASP로 돌아갈 수 있습니다. 귀하의 ASP 애플 리케이션 레코드 집합을로드하려면 xml 인수로 recordset.Open 사용해야합니다. http://msdn.microsoft.com/en-us/library/ms675544%28v=VS.85%29.aspx

편집 여기에 1 은이 일어날 수 있도록하기 위해 수행해야 할 단계입니다.

DB를로 C#을 웹 서비스

  1. 연결에서

    DataSet를 가져옵니다.

  2. DataTableRecordset으로 변환하십시오.
  3. Recordset을 xml 문자열로 변환하십시오.
  4. 문자열을 클라이언트에 반환합니다. 클라이언트

    1. 에서

  5. Recordset 객체를 생성합니다.
  6. Recordset을 웹 서비스에서 반환 된 문자열로로드하십시오.
+0

-1 : 그는 웹 서비스에서 반환하려고합니다. –

+0

@ John Saunders 아마도 내 설명이 약간 불분명했습니다. 이것을 웹 서비스로 할 수 있습니다. 나는 나의 대답을 업데이트했다. 그래도 문제가 무엇인지 알려 주시면 문제 해결에 도움이 될 것이라고 생각하지 마십시오. –

+1

그는 "기본적으로 XML을 사용하는 웹 서비스 - 나는 이것을 원하지 않는다"고 말했다. –

1

SOAP 웹 서비스는 XML을 반환합니다. 그것이 그들이 돌아올 수있는 유일한 것입니다. 기간.

(nitpickers의 경우 WCF는 JSON 또는 이진수를 반환하는 웹 서비스를 만들 수 있지만 Classic ASP는 XML보다 그 행운이 적습니다.)

+0

당신이 도움이되지 않습니다. 그 사람은 문자 적 ​​해석이 아닌 해결책이 필요합니다. 상자 밖에서 생각해보십시오. – Dee

+0

@Dee : 그 사람은 자신의 문제가 XML로 무엇인지 설명해야합니다. 나의 설명은 그가 XML을 사용하는 것을 피할 수 있다는 아이디어에 대한 절대적인 "멈춤"을 의미한다. 그래서 그가 정말로 필요로하는 것을 중단하고 생각해야한다. –

-1

님은 xml을 소스로 사용할 수 있습니다.

마이크로 소프트 OLE DB 단순 공급자

http://msdn.microsoft.com/en-us/library/ms810621

+0

-1 그는 "기본적으로 XML을 사용하는 웹 서비스 - 나는 이것을 원하지 않는다"고 말했다. –

+0

웹 서비스가 제어하는 ​​것을 변경할 수 없다. 서비스의 응답 만 조작 할 수 있습니다. XML을 레코드 세트로 취급하는 것은 좋은 해결책입니다. 전체 발음을 이해하지 못하면 마크 다운하지 마십시오. – Dee

관련 문제