enlace al blog: www.netmentor.es/entrada/tecnicas-concentrarse-trabajo Enlace a twitter: twitter.com/NetMentorTW
@user-cc2tu8jw5l5 ай бұрын
Gracias, usé esto para crear un sistema de turnos, con una api a la cual se conectan los programas clientes para llamar al siguiente turno y los monitores donde se muestran.👏🏽👏🏽
@enzosambucetti65713 жыл бұрын
Que buen tema! Algo que sin duda estaba esperando.
@tonysanchez26912 жыл бұрын
Gracias por el video, lo hice funcionar en wpf
@tonnymasis7047 Жыл бұрын
Como lo hiciste estimado??
@hector90793 жыл бұрын
Muy bueno 👍
@layomeza78813 жыл бұрын
muy bien explicado
@r.osorio022 жыл бұрын
Muchas gracias mentor
@javival63523 жыл бұрын
Buenas, le estoy echando un ojo con mas profundidad a esto de SignalR y lo que estoy viendo me esta encantando por la sencillez a priori que tienes con el tema de los endpoint, los sockets y demas que apenas tienes que hacer nada. No se si SignalR viene a sustituir a WCF o es posible que sea muy atrevido por decir eso, pero su 'facil' implementacion para cosas sencillas es un puntazo. He estado haciendo pruebas con tipos de datos complejos y con el tema de trasferencia de datos entre cliente y servidor y he probado con DTO's un poco mas complejos que tenia de un proyecto anterior y para algunos tipos de datos se 'atasca' y da error. Esto ya me pasaba con WCF pero habia una manera rapida y facil de 'evitar' esos campos conflictivos de las clases y era quitarles el atributo ' [DataMember]' de cada variable o propiedad, asi el DTO podia ser transferido sin errores. En cambio en signal, no veo manera de que ignore estos tipos conflictivos para transferir y siempre arroja un error. No he encontrado nada al respecto sobre esto. ¿Sabes tu (o alguien) como podria ignorar esas variables para que al trasferir el DTO no de error? es decir, lo que vendria a ser quitar el atributo ' [DataMember]' en un WCF de toda la vida
@NetMentor3 жыл бұрын
Hola! la verdad que yo nunca lo he usado con tipos complejos, en la empresa utilizamos dtos con bastantes propiedades, pero todo tipos de datos simple o como mucho algún string. Pero si no recuerdo mal en wcf el datamember era únicamente para indicar que es parte del contrato y asi serializarlo/deserializarlo no? Desconozco que tipo estas mandando pero es posible que lo tengas que convertir a byte array; yo esto lo veo mucho, que si tienes un objeto grande es enviado como un byte[] y luego el cliente lo deserializa; pero nunca me ha dado por comprobar si es la mejor práctica o no. Un saludo y ya me dirás, si sigues con el problema no me importa hecharle un ojo ya que tambien me servirá saber la solución por si me pasa en el futuro 👍.
@NetMentor3 жыл бұрын
He investigado un poco y he encontrado esto: stackoverflow.com/questions/24262041/how-to-send-big-data-via-signalr-in-net-client/60395601 tiene pinta que tiene una limitación de 10kb y puedes hacer dos cosas: en el services, asignar el tamano máximo a infinito: services.AddSignalR(conf => { conf.MaximumReceiveMessageSize = null; } o convertirlo en un bytearray, y enviarlo por partes de 10kb (que a mi me parece la más elegante y apropiada, así no dependes del cliente para quitar la limitación) Un saludo!
@javival63523 жыл бұрын
@@NetMentor Exacto, el datamenber es para si lo quieres serializar o no y de esa forma lo ignoras, era una forma sencilla de quitarte de problemas en SOAP con tipos complejos.
@federicobacigalupo28303 жыл бұрын
Muy bueno! Estaria bueno agregarle la parte de seguridad y guardado de los chats.
@eduarsanchez1851 Жыл бұрын
Excelente
@dixrobyac74663 жыл бұрын
suscrito.
@Efra0102 жыл бұрын
y como haces que el chat le llegue a una persona en especifico? y no a todos los navegadores donde este abierto??
@NetMentor2 жыл бұрын
Dentro de un hub puedes crear grupos esa sería una opción, obviamente necesita un poco de código pero no mucho, si quieres que sea 1-1 simplemente debes cada grupo a 2 clientes conectados. Un saludo
@eloyrolandocanchanyabalbin46923 жыл бұрын
Muchas gracias, para poder ver los cambios en un tabla en tiempo real, por donde podría buscar información?. Saludos.
@NetMentor3 жыл бұрын
puedes utilizar signalr y en el método que está escuchando pasale un id del numero de fila y si esta en la tabla (lista) la actualizas y si no la añades. con eso yo creo que sería suficiente. Un saludo.
@gabrieltrech66032 жыл бұрын
Hola como estás? Muy buen video, hice todo y funciona perfecto pero solo en forma local, cuando el servidor lo utilizo en otra pc o un server virtual que tengo no funciona. Podrías ayudarme? Que me falta? Gracias!
@NetMentor2 жыл бұрын
Ya bien sea en el navegador o en el servidor tendrás los logs. Pero lo más probable es que tengas que habilitar websockets en el reverse proxy que utilizas
@javival63523 жыл бұрын
Gracias por el video, muy muy interesante, la primera vez que veo algo de SignalR, parece muy potente. Tengo unas dudas al respecto, las enumero para mejor claridad: 1) el proyecto de consola tiene el puerto 5000 por defecto? se puede cambiar ese puerto de algun modo? si es asi, como se hace? 2) para aplicaciones que se ejecuten fuera de nuestra red, ¿ese puerto 5000 debe estar abierto en el router y en el firewall de windows? entiendo que si, pero es posible que venga abierto por defecto paa este tipo de peticiones, lo desconozco. Muchas gracias
@NetMentor3 жыл бұрын
si, es el puerto por defecto pero se puede cambiar en las propiedades del proyecto (en visual stuido creo que hay una carpeta llamada "properties") aquí tienes un ejemplo: github.com/ElectNewt/Programacion-avanzada/blob/master/PA.SignalR-Chat/src/SignalRChat.Client/Properties/launchSettings.json#L24 y sobre la segunda, cuando despliegas una app, tu publicas en el puerto:5000 o el que sea de tu server, y por defecto vendrá cerrado, una solución es abrir pero la solucion optima y para que la gente acceda, tienes que hacer reverse proxy. con el DNS (si es publica) y un reverse proxy osea en mi web, cuando alguien pone netmentor.es:443 lo que hace es ir a mi web, mirar el ngnx y redireccionar a localhost:5001, pero únicamente internamente, el usuario sige viendo el 443 o el 80 Hice un post al respecto hace un tiempo -> www.netmentor.es/entrada/desplegar-aspnetcore-centos#mcetoc_1eg053iv0j (el punto 7) espero que se entienda, un saludo!