현재 Silverlight 버전의 svcutil을 사용하여 Silverlight 용 .cs 파일을 생성합니다. 나는 .NET 3.5와 이것을 공유 할 수 있기를 원하지만 몇 가지 장애물이있는 것 같다. 특히 ChannelBase는 .NET에는 존재하지 않으며 IHttpCookieContainerManager도 존재하지 않습니다. Service.cs를 모두 의사가 읽을 수 있도록 의사가 치료할 수 있습니까? (나는 .config 파일을 사용하지 않는 것을 선호한다.)Silverlight 및 .NET 용 WCF .cs 파일을 어떻게 생성합니까?
2
A
답변
1
svcutil을 사용하지 않으면 쉽게 할 수있다. Silverlight 및 .Net 3.5에서 서비스 인터페이스를 공유하는 경우 런타임에 클라이언트를 만들려면 simple code을 사용하십시오.
참고 : Silverlight는 비동기 통신 만 지원하므로 약간 다른 두 인터페이스를 만들어야합니다. 또는 동일한 인터페이스를 사용하여 Silverlight 코드를 컴파일 할 때 파일의 일부만 컴파일하고 .NET 코드를 컴파일 할 때 파일의 다른 부분 만 컴파일하도록 컴파일러에 알리기 위해 #if SILVERLIGHT
을 사용할 수 있습니다. 예 :
[ServiceContract(Namespace="http://www.example.com/main/2010/12/21")]
public interface IService
{
#if SILVERLIGHT
[OperationContract(AsyncPattern=true, Action = "http://www.example.com/HelloWorld", ReplyAction = "http://www.example.com/HelloWorldReply")]
IAsyncResult BeginHelloWorld(AsyncCallback callback, object state);
string EndHelloWorld(IAsyncResult result);
#else
[OperationContract(Action="http://www.example.com/HelloWorld", ReplyAction="http://www.example.com/HelloWorldReply")]
string HelloWorld();
#endif
}
이 실버 라이트를 사용하는 경우, 아니면 그냥 myClient.HelloWorld() 닷넷 3.5을 사용할 때 myClient.BeginHelloWorld()와 myClient.EndHelloWorld()를 호출 할 수 있습니다.
많은 맞춤 바인딩이있는 경우 CustomBinding을 상속하는 클래스를 만들고 해당 클래스를 .Net과 Silverlight간에 공유 할 수도 있습니다. 이러한 클래스의 예는 다음과 같습니다.
public class MyServiceBinding : CustomBinding
{
public MyServiceBinding()
{
BinaryMessageEncodingBindingElement binaryEncodingElement = new BinaryMessageEncodingBindingElement();
#if !SILVERLIGHT
binaryEncodingElement.ReaderQuotas.MaxArrayLength = int.MaxValue;
#endif
Elements.Add(binaryEncodingElement);
Elements.Add(new HttpTransportBindingElement() { MaxReceivedMessageSize = int.MaxValue });
}
}
관련 문제
- 1. WCF 서비스에서 .cs 파일을 찾을 수 없습니다.
- 2. SIlverlight 및 WCF RIA
- 3. WCF/Silverlight 용 IIS6 구성
- 4. WCF 및 Silverlight CrossDomain.xml
- 5. .net, mono 및 silverlight 용 그래픽 라이브러리
- 6. WCF 및 .NET 4.0
- 7. docset에 대한 ctags 파일을 어떻게 생성합니까? (vim 용)
- 8. .NET COM Callable Wrapper는 IID를 어떻게 생성합니까?
- 9. WCF 및 Silverlight 문제
- 10. Silverlight wcf 및 ClientCredentials
- 11. .Net 어플리케이션에서 .cs 컴파일하기
- 12. 데이터 교환 WCF 및 Silverlight
- 13. MacVIM CS 용 구문 파일
- 14. Silverlight APP 용 Expression Design에 구축 된 XAML 클래스에 .CS 기능을 추가하려면 어떻게해야합니까?
- 15. 모노로 cs 파일을 컴파일 하시겠습니까?
- 16. 레일 3 : 요청시 압축 파일을 어떻게 생성합니까?
- 17. Silverlight 및 WCF : 'WCF down'예외/WCF 연결 검사 처리
- 18. WCF Silverlight HTTP 및 HTTPS
- 19. ssl with silverlight 및 wcf
- 20. 컴파일 및 링크시 Xcode에서 어떤 파일을 생성합니까?
- 21. .cs 파일 용 파서 편집
- 22. Silverlight 및 일반 .NET 용 어셈블리를 만들 수없는 이유는 무엇입니까?
- 23. WCF 용 .NET 2.0 클래스 라이브러리 확장
- 24. WSDL.exe에서 클라이언트와 인터페이스 코드를 어떻게 생성합니까?
- 25. Windows에서 실행 파일을 어떻게 생성합니까? .beam 파일을 Windows에서 생성 하시겠습니까?
- 26. Silverlight 4.0 및 WCF RIA 서비스 보안
- 27. Sl3 용 WCF 서비스
- 28. Silverlight 및 WPF 용 ICollectionView
- 29. Silverlight IIS가없는 WCF 및 CrossDomainAccessPolicy에 액세스
- 30. .Net WCF 서비스 용 Java 클라이언트
각 솔루션의 Visual Studio에서 서비스 참조를 추가하고 VS에서 각각에 대해 .cs 파일을 만들지 마십시오. –