2010-05-21 1 views
1

일부 불행한 이벤트로 tempuri -namespace의 웹 서비스를 몇 달 전에 게시했는데 아무도 눈치 채지 못했습니다. (회사가 아닌 웹에 연결된 회사 서비스) 그 시간 이후로 살고 있지만 (~ 25 것 같아요) 회사의 많은 이미이 웹 서비스에 액세스 할 수 있습니다.배포 후 asp.net 웹 서비스 네임 스페이스 변경

이제는 실수를 수정하고 네임 스페이스를 적절한 값으로 고정시켜야합니다. 유일한 문제는 우리가 할 수있게하자마자이 웹 서비스에 연결된 모든 프로그램과 서비스가 작업을 중지하게됩니다. 나는 그 일이 실제로 일어나도록 허용 할 수 없다.

미래의 목적을 위해 네임 스페이스를 수정하거나 웹 서비스가 두 개의 네임 스페이스 아래에서 하나의 웹 서비스로 작동하도록하는 방법이 있습니까?

tempuri-namespace를 제거하고 모든 외부 회사와 변경 사항을 동기화 할 필요없이 해결할 수있는 방법은 무엇입니까?

저는 모든 아이디어가 없으므로 도움이 될 것입니다. 감사!

답변

0

webservice를 사용하는 모든 것이 작동을 멈출 것이라고 확신합니까, 네임 스페이스가 변경된 경우에도 내가 보지 못했던 대부분의 것들. 즉 웹 참조를 작성하거나 Visual Studio에서 WSD 도구를 사용하여 웹 서비스를 사용하는 경우 XML 네임 스페이스가 웹 서비스에서 변경되면 중단되지 않습니다. 그것은 C# 네임 스페이스에서 전혀 사용하지 않습니다.

+0

빠른 응답을 보내 주셔서 감사합니다! 예 자신을 데모 도구로 만들고 테스트 환경을 사용하여 네임 스페이스를 수정할 때 어떤 일이 발생하는지 확인했습니다. 데모 도구가 더 이상 작동하지 않습니다. Visual Studio에서 "웹 참조 업데이트"를 사용하여 다시 컴파일해야만했습니다. 그런 다음 다시 작동했습니다. 나는 또한 다른 회사들 중 2 개사와 함께 다른 회사의 대부분보다 쉽게 ​​대화 할 수 있었고 시도 했었고 더 이상 작동하지 않아서 소프트웨어를 업데이트해야했습니다. 따라서 다른 곳에서는 다른 방법에 대한 아이디어가 있습니다. 회사는 그러한 변화에 영향을받지 않습니다. – eloQ

+0

오, 잊어 버린 것 : "멈춤으로써"나는 실제로 변경할 수있는 유일한 것은 웹 참조를 업데이트하고 재 컴파일하는 것입니다. 다른 모든 것들은 값을 전달하고, 값을 얻으며, 여전히 같은 방식으로 작동합니다. 그것은 네임 스페이스가 변경 될 때 작동을 멈추는 프로그램의 전송 부분 일뿐입니다. – eloQ

0

웹 서비스 세트를 다음에 출시 할 때까지 기다릴 수 있습니까? 이 시점에서 그들은 새로운 WSDL로 다시 컴파일해야 할 것입니다.

+0

시간은 단지 tempuri-default를 없애고 싶은 문제가 아닙니다. 서비스를 업데이트 할 때 일반적으로 XML 구조/XSD 만 업데이트하고 새 버전은 제공하지 않습니다. 회사는 새 WSDL로 다시 컴파일 할 필요가 없습니다. 일부 파트를 자주 업데이트 (확장)하여 문제가되지 않으며, 네임 스페이스 변경 만 심각하게 악용 될 수 있습니다. – eloQ

+0

WSDL의 네임 스페이스를 변경하는 것이 큰 변화이며 클라이언트를 다시 빌드 할 필요없이이를 수행 할 수있는 방법이 없다는 것을 확신합니다. – bechbd