2010-02-18 6 views
3

Je souhaite héberger un service sur un périphérique WinCE. Le périphérique WinCE est l'hôte auquel on peut accéder (contrôle et acquisition de données) par plusieurs clients (PC ou WinCE) via un port série, TCP, USB, etc. J'envisageais d'utiliser des tampons de protocole pour la sérialisation sur le réseau. Il serait idéal d'utiliser WCF ou à distance mais pour autant que je vois, ils ne sont pas mis en œuvre sur le Compact Framework. N'importe qui a des idées comment cela peut être réalisé.Hébergement WCF dans .NET compact framework

Répondre

1

CF 3.5 a quelques WCF, mais à l'heure actuelle seulement le cadre plein-gras a WCF avec les crochets pour soutenir permuter le serializer à la volée. Je connais certains utilisateurs qui utilisent CF mais en passant un Stream sur le fil (en ce qui concerne WCF) et en gérant la sérialisation protobuf-net (de) en dehors de WCF (un byte[] peut fonctionner de manière similaire, mais ils ont choisi Stream - I ne peut pas se rappeler pourquoi-peut-être des problèmes de base-64?). Cela aiderait-il?

+0

J'ai fait beaucoup de recherches mais je n'arrive pas à trouver un moyen d'héberger WCF dans Compact Framework. Au lieu d'écrire ma propre communication avec le périphérique WinCE, je souhaite utiliser un framework existant. – user171729

+0

@jauwaad - voulez-vous WinCE comme serveur? Non - protobuf-net ne fait pas ça. Il * a * un serveur inclus mais il utilise 'HttpListener', donc ne fonctionne que sur un framework complet. –

+0

Merci Marc. J'adore votre mise en œuvre de tampons de protocole, ont été jouer avec lui pour un certain temps. Dans la mesure où mon projet actuel WinCE est le serveur et le PC est le client qui démarre les communications. – user171729

0

C'est une prise flagrante, je l'admets, mais vous pouvez considérer hosting a REST web service à partir de l'appareil.

+0

SmartClient Device Connectivity m'a semblé une très bonne option, mais je n'arrive pas à comprendre comment le déployer sans installer Visual Studio sur chaque client. – user171729

Questions connexes