Blog: www.netmentor.es/Entrada/api-rest-csharp TWitter: twitter.com/NetMentorTW Si quieres ir al siguiente nivel como desarollador y aprender sobre sistemas distribuidos no olvides checkear el curso: ua-cam.com/play/PLesmOrW3mp4jpSbdFMtVWINJZ7OLdSASS.html
Siempre he creado Web Services tipo SOAP, pero tengo un proyecto laboral donde debo crear un REST y con este videotutorial ya puedo resolver. Gracias por compartir tu conocimiento maestro. 🙌
Gracias por este video, me gusta que des ejemplos de lo que pueden preguntarte en las entrevistas y de qué se utiliza en las empresas, me quiero iniciar laboralmente en programación y de las cosas que mas me cuestan ver o que no tengo claras son las funciones que suele realizar un programador en una empresa. Me voy a dar un buen repaso con tu canal, gracias por compartirlo 🙏
Muy buen video, claros tus conceptos, te encontré de casualidad mirando otros videos de estos temas y la verdad que grata sorpresa, a veces uno se queda con aquellos que tienen miles de suscriptores y no le da tanta importancia a los que vienen de abajo, pero claramente eso no significa que el contenido sea malo, más bien todo lo contrario, felicitaciones y de aquí en más estaré muy atento a todos tus videos!! saludos desde Argentina
Gracias ! Sí, la verdad es que he recibido varios comentarios como este, deberíá empezar a plantearme intentar mejorar el seo de youtube o algo. Me alegro de que te sirva! Un saludo.
Primero de todo gracias :D Respecto a los suscriptores. pues no se que decirte en verdad, Posiblemente tenga que ver con que no gasto mucho tiempo en posicionar los vídeos (o la web) y hay bastante competencia. Luego el contenido que realizo, esta centrado en .NET, la realidad es que la comunidad de .NET en españa es muy pequeña, desconozco en latinoamérica, pero en españa en las universidades, institutos se estudia C/Java así que por ahí pierdo bastante también. Si bien es cierto que tengo vídeos que pueden funcionar en ambos escenarios, no es lo normal. Posiblemente si gastara tiempo haciendo búsquedas de palabras clave y posicionando me iria mucho mejor, pero voy con el tiempo justo para hacer un vídeo semanal, asi que lo de gastar una o dos horas a la semana en posicionar el vídeo imposible :/ Tener pocos suscriptores tiene una ventaja, que parece que no pero mira, va bien, yo es obvio que no hago esto por el dinero, sino por ayudar a la gente, así que el hecho de no tener muchos suscriptores me permite, cuando alguien me escribe por privado, gastar 10/15/20 minutos en responder sin ningún problema. Un saludo y gracias otra vez por el apoyo :)
Nope, ya lo siento. no he tenido tiempo de hacer autorización por ahora, justo nació mi hijo hace 3 meses y voy algo justo de tiempo :/ Mi idea es sacar pronto ese vídeo, pero por ahora imposible. Un saludo
Hola. Me estoy iniciando en el mundo de los web services con C#. Este video es de 2020 y estamos en 2023.¿Sigue siendo válido lo que aquí se explica? ¿Han habido cambios que haya que tener en cuenta? Gracias por el contenido.
Visual studio 2019 la edición community qué es la gratuita. Luego versiones pues esta es la unica gratis así que está bien, pero le faltan cosas que están en la pro/enterprise. Por ejemplo yo entre la pro y está no noto diferencia pero la enterprise tiene Code coverage, lo cual pues ayuda, pero vale una pasta. Y comparándolo con otros IDE como Rider, prefiero visual studio la verdad, aunque la diferencia es pequeña, si por ejemplo trabajas en java y c# Rider es una mejor opción porque tiene su versión de Java y puedes usar los mismos settings en ambas. Un saludo
@@NetMentor Muchisimas gracias pla respuesta, estoy empezando en esto y me vienen bien unos consejos como los tuyos. Muchas gracias por el contenido y los consejos, saludos!
tengo uno sobre middlewares y filtros, pero no hablo sobre ninguno en particular, mas bien en como funcionan por detrás ua-cam.com/video/uFcyAdXL4mk/v-deo.html
Hola Ivan, muchas gracias por tus videos tan útiles. Queria pedirte consejo de cómo implementar una Minimal API en Net 8 pero con la particularidad de que pueda trabajar con varias basees de datos en función de un parametro que se le pase. No se como montar ese switch de dbcontext dentro de la API una vez descifrado el parametro que me indica con que BD conectar. Me harias un gran favor... Saludos.
a que te refieres con multiples bases de datos? una base de datos por cliente, una slq y otra no sql o simplemente diferentes nombres? si es una por cliente, un conexion multiplexer
@@NetMentor gracias por la respuesta. El tema seria que el cliente se pueda conectar con la api, por ejemplo, a 10 bases de datos sql todas con la misma estructura.... Gracias Josep
No se si tendras tiempo. Tu contenido es muy bueno. pero revise tu blog y no vi ninguna seccion dedicada al Threading, sentencias Lock, tienes algun enlace o no lo has tomado en cuenta.
no tengo nada the threading o de lock, la unica cosa es que en .net no utilizamos threads directamente si no que utilizamos await/async que es lo que nos provee el propio lenguaje para trabajar con hilos de forma automática. un saludo
Muy bueno para empezar con REST API o Web API. Aparte de dudas sobre error handling, versionado de APIS, y otras más, una duda que tengo es seguir buenas prácticas a la hora de devolver los resultados: Podemos tener éstos: Results.BadRequest , Results.NotFound("...."); Resuts.Created("..."), return Results.Ok(emps); Así coomo control de errores: catch(Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); return Results.StatusCode(500); } O devolver un objeto error: Error InternalServerError Internal Server Error Error { "codigoError": "500", "descripcion": "Error interno", "causa": "Comparison did not match: ${httpRouting.reasonCode} is equal to -5 (case sensitive)", "dateTime": "2018-03-19T16:39:35.000Z" } Si tienes estos método para el API: EstaHabilitado(usuario) devolver true o false? HabilitarDeshabilitar(usuario, true/false) devolver true o false? A veces no sabes cómo plantearlo bien para los Results, o incluso los verbos Put, Post, Delete,... Saludos
Hola! no deberías comprobar los errores con try cach, deberías devolver un error como tal, yo para ello utilizo mi propia librería (hay mas) , puedes mirarte este vídeo que te puede ayudar en el que describo la idea detras de dicha librería: ua-cam.com/video/_l5vUf7W09A/v-deo.html y respecto a los códigos de error etc, tengo este vídeo que es una expansion tanto a este como al que te he indicado antes ua-cam.com/video/5BoyfHgzW2E/v-deo.html
Hola si, me puedes contactar por privado en Twitter twitter.com/NetMentorTW?s=08 O en el formulario de contacto se la web www.netmentor.es/Contacto Un saludo
Amigo muy buen video, un detallito nada mas, que hay oraciones que al terminarlas no se entiende lo que dices, y como hablas rapido (eso esta bien), se pierde el final de la oracion. Exitos ya me suscribi.
Gracias! si, alguna vez me doy cuenta, el prolema es que es en la edición, y ya lleva bastante tiempo, pense en quitar la cámara solo para poder grabar el audio mas fluido, pero creo que se hace mas amenos con la cámara.
a que te refieres con ideas? haz un endpoint que sea "enviar correo" que reciba el to/from (si tienes varios)/subject y el contenido, y de ahi la enlazas con un smtp, para testear puedes utilizar el de gmail por ejemplo.
@@NetMentor hola en el visual studio 2019 no podía seleccionar API como segundo paso. Pero ya lo resolví, se tenía que seleccionar en la primera ventana como año.
Que versión de visual studio y del SDK tienes? Debería aparecer al iniciar si tienes royo visual studio 2017 y al menos net core 3 instalado, posiblemente en versiones anteriores también salga, pero no lo recuerdo seguro
mientras tengan diferente ruta, o diferentes parámetros los puedes tener sin problema; .NET es suficientemente inteligente para detectar que son dos diferentes.
hola, principiantes de dia uno mientras se aprende, quizá no. Pero en el trabajo lo vas a tener presente desde el día uno seguro, ya que hoy en dia la grán mayoría de empresas estan migrando a separar el front del back o incluso a aplicaciones distribuidas. un saludo.
pues igual que aquí pero con más cosas, principalmente relacionadas con seguridad, este vídeo es parte de un curso donde tienes todo lo que hablo sobre apis.
Estoy viendo el video en 2024. Ha cambiado bastante la cosa, ya no hay clase startups y por ende que pasa con los endpoints, el service.AddControllers... ¿Alguien que me ayude con eso?
Esta estructura sigue funcionando. (Y en mi opinión es mejor para el entorno empresarial) Puedes hacer lo mismo solo con la clase program.cs Pero si buscas por minimal api encontrarás lo que buscas, tengo un post al respecto pero es más una introducción que un paso a paso www.netmentor.es/entrada/minimal-apis-csharp Pero tienes razón, tendré que actualizar el vídeo 😅
Blog: www.netmentor.es/Entrada/api-rest-csharp
TWitter: twitter.com/NetMentorTW
Si quieres ir al siguiente nivel como desarollador y aprender sobre sistemas distribuidos no olvides checkear el curso: ua-cam.com/play/PLesmOrW3mp4jpSbdFMtVWINJZ7OLdSASS.html
que buen repaso... muy útil para mi... Gracias por compartir.
gracias por tanta dedicacion en difundir lo que sabes. Segui adelante!
Me suscribo!. Definidamente directo al grano, así tiene que ser los materiales de apoyo.
hola , primero felicitarte por compartir el conocimiento. Segundo gracias por la clase y esta muy clara. Saludos
Buena explicación, claro y concisa 💯💯💯 tks 💯
Siempre he creado Web Services tipo SOAP, pero tengo un proyecto laboral donde debo crear un REST y con este videotutorial ya puedo resolver.
Gracias por compartir tu conocimiento maestro. 🙌
Excelente, me sirvio mucho, sigue asi
Aplusos besos y medalla
Saludo desde Galicia
Gracias por el video y las explicaciones!!! GRacias!!🙏🎉👏👏👏
Gracias por este video, me gusta que des ejemplos de lo que pueden preguntarte en las entrevistas y de qué se utiliza en las empresas, me quiero iniciar laboralmente en programación y de las cosas que mas me cuestan ver o que no tengo claras son las funciones que suele realizar un programador en una empresa. Me voy a dar un buen repaso con tu canal, gracias por compartirlo 🙏
Te agradezco muchísimo el compartir tus conocimientos, no sabes lo mucho que me ayudas
Excelente, muchas gracias por compartir tus conocimientos.
Muy buen video, claros tus conceptos, te encontré de casualidad mirando otros videos de estos temas y la verdad que grata sorpresa, a veces uno se queda con aquellos que tienen miles de suscriptores y no le da tanta importancia a los que vienen de abajo, pero claramente eso no significa que el contenido sea malo, más bien todo lo contrario, felicitaciones y de aquí en más estaré muy atento a todos tus videos!! saludos desde Argentina
Gracias ! Sí, la verdad es que he recibido varios comentarios como este, deberíá empezar a plantearme intentar mejorar el seo de youtube o algo.
Me alegro de que te sirva! Un saludo.
Sos un genio! Es la explicación más clara que vi. Gracias
Excelente explicación! muchas gracias por compartir conocimiento! gran contenido! saludos desde Argentina
Excelente explicacion
las explicaciones son mas claras, y si siguies haciendo videos explciando por separado cada cosa. muchas gracias, te apoyare con unos cafe.
Me hizo entender por donde va todo. Puedes hacer un video donde combines api más blazor?
buen video y muy bien explicado muchas gracias
Gracias !
Tu contenido es oro!, por qué tan pocos subscriptores? >:(
Primero de todo gracias :D
Respecto a los suscriptores. pues no se que decirte en verdad, Posiblemente tenga que ver con que no gasto mucho tiempo en posicionar los vídeos (o la web) y hay bastante competencia.
Luego el contenido que realizo, esta centrado en .NET, la realidad es que la comunidad de .NET en españa es muy pequeña, desconozco en latinoamérica, pero en españa en las universidades, institutos se estudia C/Java así que por ahí pierdo bastante también. Si bien es cierto que tengo vídeos que pueden funcionar en ambos escenarios, no es lo normal.
Posiblemente si gastara tiempo haciendo búsquedas de palabras clave y posicionando me iria mucho mejor, pero voy con el tiempo justo para hacer un vídeo semanal, asi que lo de gastar una o dos horas a la semana en posicionar el vídeo imposible :/
Tener pocos suscriptores tiene una ventaja, que parece que no pero mira, va bien, yo es obvio que no hago esto por el dinero, sino por ayudar a la gente, así que el hecho de no tener muchos suscriptores me permite, cuando alguien me escribe por privado, gastar 10/15/20 minutos en responder sin ningún problema.
Un saludo y gracias otra vez por el apoyo :)
@@NetMentor ya va a crecer, me encantó!!!! Super conciso y practico. Ni vueltas ni nada, directo al hueso. Un Abrazo, y blog esta bueniiisimo.
Excelente video, bien explicado.
Nuevo sub.
buen contenido, estaría bueno pequeños proyectos ! Saludos !
buen tutorial, me gustarias que hagas uno para impimir ticket recibiendo un json desde php
Excelente contenido sigue asi!!
Muy buen video, super bien explicado!
Gracias !
Viseaso crackk!!!!!
Nuevo susbcriptor
voy a empezar a ver el video ojala las URL tengan Autorización, ando viendo tiene buena pinta después comento nuevamente
Nope, ya lo siento. no he tenido tiempo de hacer autorización por ahora, justo nació mi hijo hace 3 meses y voy algo justo de tiempo :/
Mi idea es sacar pronto ese vídeo, pero por ahora imposible. Un saludo
@@NetMentor crack no te preocupes ya vendrán días yo tambien tengo un hijo de un año y se lo que es, uff felicitaciones y suerte.
Excelente
Gracias! :D
Hola.
Me estoy iniciando en el mundo de los web services con C#. Este video es de 2020 y estamos en 2023.¿Sigue siendo válido lo que aquí se explica? ¿Han habido cambios que haya que tener en cuenta?
Gracias por el contenido.
Ha cambiado un poco la estructura de startup/program CS, ahora solo hay program, Al margen de eso todo igual
Buenas, Cual versión de visual studio estas usando? cual me recomendas mas? saludos y muchas gracias!
Visual studio 2019 la edición community qué es la gratuita.
Luego versiones pues esta es la unica gratis así que está bien, pero le faltan cosas que están en la pro/enterprise. Por ejemplo yo entre la pro y está no noto diferencia pero la enterprise tiene Code coverage, lo cual pues ayuda, pero vale una pasta.
Y comparándolo con otros IDE como Rider, prefiero visual studio la verdad, aunque la diferencia es pequeña, si por ejemplo trabajas en java y c# Rider es una mejor opción porque tiene su versión de Java y puedes usar los mismos settings en ambas. Un saludo
@@NetMentor Muchisimas gracias pla respuesta, estoy empezando en esto y me vienen bien unos consejos como los tuyos. Muchas gracias por el contenido y los consejos, saludos!
Muy bueno tu video, solo te diría que sería bueno que agrandaras la fuente. Todo lo demás muy bueno
¿Tienes algún video hablando de los atributos decoradores? Ya que me parecen interesantes, en el minuto 13:41 lo mencionas.
tengo uno sobre middlewares y filtros, pero no hablo sobre ninguno en particular, mas bien en como funcionan por detrás ua-cam.com/video/uFcyAdXL4mk/v-deo.html
Hola Ivan, muchas gracias por tus videos tan útiles. Queria pedirte consejo de cómo implementar una Minimal API en Net 8 pero con la particularidad de que pueda trabajar con varias basees de datos en función de un parametro que se le pase. No se como montar ese switch de dbcontext dentro de la API una vez descifrado el parametro que me indica con que BD conectar. Me harias un gran favor...
Saludos.
a que te refieres con multiples bases de datos? una base de datos por cliente, una slq y otra no sql o simplemente diferentes nombres?
si es una por cliente, un conexion multiplexer
@@NetMentor gracias por la respuesta. El tema seria que el cliente se pueda conectar con la api, por ejemplo, a 10 bases de datos sql todas con la misma estructura....
Gracias
Josep
No se si tendras tiempo. Tu contenido es muy bueno. pero revise tu blog y no vi ninguna seccion dedicada al Threading, sentencias Lock, tienes algun enlace o no lo has tomado en cuenta.
no tengo nada the threading o de lock, la unica cosa es que en .net no utilizamos threads directamente si no que utilizamos await/async que es lo que nos provee el propio lenguaje para trabajar con hilos de forma automática.
un saludo
Muy bueno para empezar con REST API o Web API.
Aparte de dudas sobre error handling, versionado de APIS, y otras más, una duda que tengo es seguir buenas prácticas a la hora de devolver los resultados:
Podemos tener éstos: Results.BadRequest , Results.NotFound("...."); Resuts.Created("..."), return Results.Ok(emps);
Así coomo control de errores:
catch(Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.ToString());
return Results.StatusCode(500);
}
O devolver un objeto error:
Error InternalServerError Internal Server Error
Error {
"codigoError": "500",
"descripcion": "Error interno",
"causa": "Comparison did not match: ${httpRouting.reasonCode} is equal to -5 (case sensitive)",
"dateTime": "2018-03-19T16:39:35.000Z"
}
Si tienes estos método para el API:
EstaHabilitado(usuario) devolver true o false?
HabilitarDeshabilitar(usuario, true/false) devolver true o false?
A veces no sabes cómo plantearlo bien para los Results, o incluso los verbos Put, Post, Delete,...
Saludos
Hola! no deberías comprobar los errores con try cach, deberías devolver un error como tal, yo para ello utilizo mi propia librería (hay mas) , puedes mirarte este vídeo que te puede ayudar en el que describo la idea detras de dicha librería: ua-cam.com/video/_l5vUf7W09A/v-deo.html
y respecto a los códigos de error etc, tengo este vídeo que es una expansion tanto a este como al que te he indicado antes ua-cam.com/video/5BoyfHgzW2E/v-deo.html
nei no hay lo que busco pero igual gracias por todo.
Saludos amigo, existe la posibilidad de ponerme en contacto contigo vía correo?... Gracias
Hola si, me puedes contactar por privado en Twitter twitter.com/NetMentorTW?s=08
O en el formulario de contacto se la web www.netmentor.es/Contacto
Un saludo
Gracias, estoy viendo una Api de GRAMD, con 3 metodos
Amigo muy buen video, un detallito nada mas, que hay oraciones que al terminarlas no se entiende lo que dices, y como hablas rapido (eso esta bien), se pierde el final de la oracion. Exitos ya me suscribi.
Gracias! si, alguna vez me doy cuenta, el prolema es que es en la edición, y ya lleva bastante tiempo, pense en quitar la cámara solo para poder grabar el audio mas fluido, pero creo que se hace mas amenos con la cámara.
Hola una consulta, como hago si quiero enviar los datos por post a un link especifico?
a que te refieres exactamente, porque la respuesta a tu pregunta es, simplemente manda los datos a dicho link
@@NetMentor al link que mandaria los datos es una api. la respuesta ya se que es mandar los datos al link, pero no se me ocurre como enviarlos
Puedes usar postman, pero si eres programador y tienes que hacerlo en código c# es con httpclient
@@NetMentor excelente, gracias!
Hola podias asesorarme. Tengo q hacer una api que permita enviar un correo electronico.
Podrias darme ideas
a que te refieres con ideas? haz un endpoint que sea "enviar correo" que reciba el to/from (si tienes varios)/subject y el contenido, y de ahi la enlazas con un smtp, para testear puedes utilizar el de gmail por ejemplo.
La verdad que lo que muestras en el minuto 09:09 no se como ha salido. Me quede en la parte anterior donde le diste create y luego me he perdido.
te refieres a la lista de projectos que da visual stuido?
@@NetMentor hola en el visual studio 2019 no podía seleccionar API como segundo paso. Pero ya lo resolví, se tenía que seleccionar en la primera ventana como año.
Hola buenas tengo una duda, el asp.net core web application donde lo descargo que no me aparece en mis plantillas, gracias
Que versión de visual studio y del SDK tienes? Debería aparecer al iniciar si tienes royo visual studio 2017 y al menos net core 3 instalado, posiblemente en versiones anteriores también salga, pero no lo recuerdo seguro
@@NetMentor de visual tengo la 2019 y del sdk 4.6
Lo que tienes es el SDK de net framework y tienes que instalarte el de .net core, con eso ya debería ir
Love it!!! 🔥
Que ocurre si tengo mas de un metodo Post
mientras tengan diferente ruta, o diferentes parámetros los puedes tener sin problema; .NET es suficientemente inteligente para detectar que son dos diferentes.
Esta es para principiantes?
hola, principiantes de dia uno mientras se aprende, quizá no. Pero en el trabajo lo vas a tener presente desde el día uno seguro, ya que hoy en dia la grán mayoría de empresas estan migrando a separar el front del back o incluso a aplicaciones distribuidas.
un saludo.
Como sería crear un API Rest con C# de manera profesional?
pues igual que aquí pero con más cosas, principalmente relacionadas con seguridad, este vídeo es parte de un curso donde tienes todo lo que hablo sobre apis.
Estoy viendo el video en 2024. Ha cambiado bastante la cosa, ya no hay clase startups y por ende que pasa con los endpoints, el service.AddControllers... ¿Alguien que me ayude con eso?
Esta estructura sigue funcionando. (Y en mi opinión es mejor para el entorno empresarial)
Puedes hacer lo mismo solo con la clase program.cs
Pero si buscas por minimal api encontrarás lo que buscas, tengo un post al respecto pero es más una introducción que un paso a paso
www.netmentor.es/entrada/minimal-apis-csharp
Pero tienes razón, tendré que actualizar el vídeo 😅
Echas mucho rollo y el ejemplo es muy basico
Test.
👀
😂