2010-07-05 2 views
10

Ниже приводится WSDL-файл моей службы:Как изменить схему по умолчанию в файле wsdl службы WCf?

<wsdl:types> 
     <xsd:schema targetNamespace="http://tempuri.org/Imports"> 
     <xsd:import schemaLocation="http://localhost:3789/VideoUpload.svc?xsd=xsd0" namespace="http://tempuri.org/" /> 
     <xsd:import schemaLocation="http://localhost:3789/VideoUpload.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" /> 
     <xsd:import schemaLocation="http://localhost:3789/VideoUpload.svc?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/UploadVideoProtocol" /> 
     </xsd:schema> 
    </wsdl:types> 
----- 
<wsdl:definitions> 
<wsdl:service name="VideoUpload"> 
<wsdl:port name="BasicHttpBinding_IVideoUpload" binding="tns:BasicHttpBinding_IVideoUpload"> 
    <soap:address location="http://localhost:3789/VideoUpload.svc" /> 
    </wsdl:port> 
    </wsdl:service> 
</wsdl:definitions> 

В выше, я мог бы изменить пространство имен, указав пользовательское пространство имен внутри кода в договоре услуг и поведения.

Но мне нужно изменить адрес конечной точки, указанной в схеме расположения,

SchemaLocation = "HTTP: // локальный: 3789/VideoUpload.svc XSD = xsd0?"

В моей определенный адрес конечной точки, как:

SchemaLocation = "http://myservice.com:8080/VideoUpload.svc?xsd=xsd0"

Какова процедура т o добиться этого? что нужно указывать в коде для изменения генерируемой конечной точки по умолчанию? Может ли кто-нибудь помочь мне в этом?

ответ

6
+1

эй спасибо ... прекрасно работает. но когда я назначил имя домена вместо ip-адреса, я не смог получить доступ. как использовать то же самое с доменным именем, указав ip-адрес? – Googler

+0

Он должен работать, поскольку dns разрешает ip-адрес и отправляет запрос на определенный IP-адрес, проверьте настройки конфигурации – IBhadelia

+0

конфигурационных параметров веб-конфигурации или IIS? Я изменил заголовок хоста той конкретной службы, размещенной в IIS, как некоторый домен (www.yourdomain.com). Я упомянул то же самое в httpGetUrl как http: \\ www.yourdomain.com:8080/VideoUpload.svc ?. но это не сработает. Могу ли я узнать, что все настройки должны изменить в IIS? Может ли пособие мне помочь в этом? – Googler

Смежные вопросы