Utworzono usługę wcf. Działa to dobrze, gdy używam po prostu w .net, dodając jako serwis internetowy. Ale chcę, aby był on w stanie używać aplikacji na iPhone'a jako połączenia JSON. Do testowania użyłem go w .net z JSON, ale nie działa.Włącz usługę WCF do użycia z JSON
Wiem, że tego rodzaju pytanie jest zadawane wcześniej, szukałem w tym nie mogę znaleźć rozwiązanie dla mnie.
moja konfiguracja:
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="servicebehavior">
<serviceMetadata httpsGetEnabled="true" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="endpointBehavior">
<enableWebScript />
<webHttp defaultBodyStyle="Wrapped" defaultOutgoingResponseFormat="Json" />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<services>
<service name="MyService" behaviorConfiguration="servicebehavior">
<endpoint address=""
behaviorConfiguration="endpointBehavior"
binding="webHttpBinding"
contract="IMyService" />
</service>
</services>
kod interfejs:
[ServiceContract]
public interface IGolfPyramidService
{
[WebInvoke(UriTemplate = "/Test", Method = "POST", ResponseFormat = WebMessageFormat.Json, RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
[OperationContract]
string Test();
}
Myservice.cs Kod:
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class MyService : IMyService
{
public string Test()
{
return "success";
}
}
chcę, aby umożliwić wywołanie metody za pomocą Format adresu URL: http://example.com/MyService.svc/test
Dlaczego używasz WebInvoke Na interfejsie i nie WebGet? – Erwin
Dzięki za odpowiedź .. dla mojej sprawy chcę uzyskać odpowiedź w JSON i miałem problemy z Metodą WebGet. Dla mnie działa metoda WebInvoke. – Finisher001
Jeśli wywołasz usługę internetową z przeglądarki, której używasz GET, a nie POST. – Erwin