S'il vous plaît, puis-je utiliser les contrats de données dans WCF pour la diffusion en continu au lieu du contrat Contrat.Puis-je utiliser les contrats de données dans WCF pour le streaming?
Si oui, cela améliorera-t-il les performances?
THanks
S'il vous plaît, puis-je utiliser les contrats de données dans WCF pour la diffusion en continu au lieu du contrat Contrat.Puis-je utiliser les contrats de données dans WCF pour le streaming?
Si oui, cela améliorera-t-il les performances?
THanks
La réponse dépend de la liaison que vous utilisez. Pour les protocoles de transport TCP ou Named, vous pouvez diffuser des données, y compris des contrats de données. Si vous souhaitez utiliser le streaming via HTTP (pris en charge par BasicHttpBinding) vous devez quelques plusieurs contraintes:
Définitions fonctionnement uniquement valides pour le streaming sur HTTP sont:
// StreamedResponse
[OperationContract]
Stream GetData(int id);
// StreamedRequest
[OperationContract]
int PostData(Stream data);
// Streamed
[OperationContract]
Stream WorkWithData(Stream data);
[OperationContract]
DoSomethingResponse DoSomething(DoSomethingReqest request);
[MessageContract]
public class DoSomethingRequest
{
// Custom data and data contract allowed only as SOAP headers which are always buffered
[MessageHeader]
public MyDataContract CustomHeader { get; set; }
// No other member allowed
[MessageBodyMember]
public Stream Data { get; set; }
}
[MessageContract]
public class DoSomethingResponse
{ ... }
Si vous ne suivez pas ces contraintes que vous finirez avec deux cas:
ce qui signifie le streaming ici. juste renvoyer dire que les données des employés sont considérées comme en streaming? – Mou
Pouvez-vous publier un exemple? Quelle liaison allez-vous utiliser? –
Eh bien, je ne suis pas sûr que je suis très nouveau à WCF. Pouvez-vous s'il vous plaît me fournir un lien qui peut m'aider à commencer à diffuser en utilisant WCF. – Amit