Sto solo imparando le corde attorno a WCF. Quello che stavo progettando di fare era aprire un canale duplex tra un client e un server usando NetTcpBinding e tenerlo aperto indefinitamente in modo che il server potesse avviare richieste al client.WCF: è una cattiva pratica lasciare un canale aperto per un lungo periodo?
Quindi mi sono imbattuto in questo blog by Jesse Ezell, che sembra indicare che è una brutta cosa mantenere un canale aperto indefinitamente, perché non è possibile rilevare i guasti e questo causa ogni sorta di instabilità.
È corretto? Se utilizzo NetTcpBinding e mantieni un riferimento a un canale aperto su entrambi i lati della relazione, cosa accade se si verifica un errore di comunicazione? Come posso rilevare l'evento di errore? Quali altri trucchi ci sono? C'è qualche differenza con il framework .NET che stai usando? (Sono su 4.0.)