Я хотел бы задать вопрос. Один из моих бывших коллег написал один проект лазурного окна, и теперь мне нужно продолжить этот проект. Веб-сервис находится в этом окне Azure Project, и мне нужно вызвать этот веб-сервис в Silverlight. Поэтому я добавляю новый проект silverlight в этот существующий проект Window Azure. И когда я пытаюсь добавить ссылку на службу в приложении Silverlight. Он показывает «Не найдена конечная точка, совместимая с Silverlight3» и не может создать файл ServiceReference.config.
Я не слишком семья с веб-сервисом и c #. Итак, не могли бы вы рассказать мне шаг за шагом об использовании веб-сервиса в Silverlight.
Я также пытался изменить "basicHttpBinding" и "customBinding" в файле Web.config. Но это не позволяет мне ничего менять. Итак, не меняя ничего на стороне сервера, как я могу вызвать веб-сервис в silverlight?
Вот часть кода.
IEventHandler.cs
`[OperationContract]
[WebGet(UriTemplate = "Holidays", ResponseFormat = WebMessageFormat.Xml)]
List<Holidays> GetHolidays();`
EventHandler.svc
`public List<Holidays> GetHolidays()
{
//database declaration for purpose of accessing the db.
Database db = new Database();
//dg.getHolidays is found in the Database class.
List<Holidays> holidays = db.getHolidays();
return holidays;
}`
Web.config
`<system.serviceModel>
<bindings>
<webHttpBinding>
<binding name="webBinding"
maxBufferPoolSize="2147483647"
maxBufferSize="2147483647"
maxReceivedMessageSize="2147483647" >
<readerQuotas
maxArrayLength="2147483647"
maxStringContentLength="2147483647"/>
<!--<security mode="Transport">
</security>-->
</binding>
</webHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="webBehavior">
<webHttp />
<enableWebScript/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="Rest_EventHandler_WebRole.EventHandlerBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="Rest_EventHandler_WebRole.EventHandlerBehavior"
name="Rest_EventHandler_WebRole.EventHandler">
<endpoint address="" behaviorConfiguration="webBehavior" binding="webHttpBinding"
bindingConfiguration="webBinding" contract="Rest_EventHandler_WebRole.IEventHandler">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
</system.serviceModel>`
Для silverlight, как я могу вызвать этот WebService? У меня нет разрешения на изменение серверной части. Нужно ли использовать sisvcutil.exe? Не могли бы вы помочь мне с моей проблемой?