Quickstarters
Feature Overview
¿Cómo construir un backend para ASP.NET Core?
34 min
introducción en este tutorial, aprenderás cómo construir un backend para asp net core utilizando back4app al integrar las características esenciales de back4app—como la gestión de bases de datos, cloud code, apis rest y graphql, autenticación de usuarios y consultas en tiempo real—obtendrás una solución de backend completa para tus aplicaciones asp net core este enfoque apoya la construcción de aplicaciones web escalables, manejando la lógica del lado del servidor con una configuración mínima con back4app, puedes acelerar el desarrollo del backend para tu proyecto asp net core aprovecharás una plataforma de código abierto que soporta una infraestructura de api web confiable, conectividad a bases de datos y funciones en la nube robustas al final de este tutorial, tendrás una base funcional para un backend seguro y extensible que ofrece experiencias de usuario mejoradas y maneja datos en tiempo real luego podrás extender tu solución net core o integrarla con otros servicios según sea necesario requisitos previos una cuenta de back4app y un nuevo proyecto de back4app comenzando con back4app https //www back4app com/docs/get started/new parse app si no tienes una cuenta, puedes crear una gratis entorno de desarrollo asp net core asegúrate de tener instalado el sdk de net (versión 6 0 o superior) descargar net https //dotnet microsoft com/en us/download familiaridad con c# y asp net core documentación oficial de asp net core https //learn microsoft com/en us/aspnet/core/?view=aspnetcore 6 0 opcional si planeas usar el sdk de parse net, necesitarás parse sdk dotnet https //github com/parse community/parse sdk dotnet o referencias en tu archivo csproj asegúrate de tener todos estos requisitos previos en su lugar antes de comenzar tener tu proyecto de back4app y el entorno de asp net core listos hará que los pasos sean mucho más fáciles de seguir paso 1 – crear un nuevo proyecto en back4app y conectar ¿por qué este paso? tu asp net core backend comienza con un proyecto de back4app este proyecto es tu base del lado del servidor, gestionando tu base de datos, reglas de seguridad y configuraciones de la aplicación creando el proyecto iniciar sesión en tu cuenta de back4app haz clic en “nueva aplicación” desde tu panel de control nombra tu aplicación (por ejemplo, “aspnetcore backend tutorial”) después de la creación, lo verás listado en tu panel de control esta nueva aplicación es tu centro principal para desarrollo de backend tareas instalando el sdk de parse net (opcional) mientras puedes usar rest api o graphql directamente, el sdk de parse net puede simplificar las operaciones de datos en tus soluciones de asp net core si deseas integrarlo agrega el sdk de parse a tu csproj o a través del administrador de paquetes nuget inicializa el sdk en tu aplicación asp net core (por ejemplo, program cs o startup cs ) reemplaza los marcadores de posición con las credenciales de la “configuración de la aplicación” > “seguridad y claves” de tu aplicación back4app esto conecta tu proyecto asp net core al entorno del lado del servidor de back4app paso 2 – configurando la base de datos 1\ creando un modelo de datos usa el panel de control de back4app para definir el esquema de tu clase por ejemplo, una clase todo con columnas como título (string) y iscompleted (booleano) 2\ creando un modelo de datos usando el agente de ia abre el agente de ia en tu panel de control de back4app y describe tu modelo de datos por ejemplo, “crea una nueva clase todo para mis aplicaciones asp net core ” el agente de ia luego configura el esquema por ti 3\ lectura y escritura de datos utilizando el sdk de parse net aquí te mostramos cómo podrías crear y obtener todo elementos en c# using parse; // create a new todo public async task\<parseobject> createtodo(string title, bool iscompleted) { var todo = new parseobject("todo") { { "title", title }, { "iscompleted", iscompleted } }; return await todo saveasync(); } // fetch all todos public async task\<ienumerable\<parseobject>> fetchtodos() { var query = new parsequery\<parseobject>("todo"); return await query findasync(); } 4\ lectura y escritura de datos utilizando la api rest alternativamente, puedes usar un enfoque de api rest curl x post \\ h "x parse application id your application id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"title" "buy groceries", "iscompleted" false}' \\ https //parseapi back4app com/classes/todo 5\ lectura y escritura de datos utilizando la api graphql para usar graphql , envía consultas o mutaciones al punto final de graphql de back4app mutation { createtodo(input { fields { title "clean the house" iscompleted false } }) { todo { objectid title iscompleted } } } 6\ trabajando con consultas en tiempo real habilita actualizaciones en tiempo real activando las consultas en vivo en tu panel (bajo configuraciones del servidor ) luego usa el enfoque net o websocket para suscribirte esto mantiene los datos actualizados en tu aplicación web sin llamadas adicionales paso 3 – aplicando seguridad con acls y clps resumen de acls y clps las acls (listas de control de acceso) aseguran objetos individuales los clps (permisos a nivel de clase) aseguran clases enteras este enfoque en capas mantiene los datos seguros en tu asp net core entorno configurando permisos a nivel de clase abre la pestaña de la base de datos en tu panel de back4app selecciona la clase todo haz clic en permisos a nivel de clase personaliza la lectura/escritura para roles públicos o autenticados configurando acls en código con el sdk de parse net, puedes establecer acls a nivel de objeto var todo = new parseobject("todo") { { "title", "private task" } }; // restrict read/write to only a particular user var acl = new parseacl(); acl setpublicreadaccess(false); acl setpublicwriteaccess(false); acl setreadaccess(user objectid, true); acl setwriteaccess(user objectid, true); todo acl = acl; await todo saveasync(); paso 4 – escribiendo funciones de cloud code ¿por qué cloud code? el cloud code se ejecuta en el lado del servidor , de back4app esto es ideal para validaciones, disparadores o lógica adicional para tu proyecto asp net core puedes mantener procesos sensibles seguros y fuera del cliente ejemplo de función en la nube // main js example parse cloud define('calculatetextlength', async (request) => { const { text } = request params; if (!text) { throw new error('no text provided'); } return { length text length }; }); despliegue desplegar cloud code a través de back4app cli b4a deploy tablero pega el código en cloud code > funciones y haz clic en desplegar llamando a funciones en la nube en net public async task\<dictionary\<string, object>> gettextlength(string text) { var parameters = new dictionary\<string, object> { { "text", text } }; var result = await parsecloud callfunctionasync\<dictionary\<string, object>>("calculatetextlength", parameters); return result; } o a través de rest curl x post \\ h "x parse application id your app id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"text" "hello back4app"}' \\ https //parseapi back4app com/functions/calculatetextlength paso 5 – configurando la autenticación habilitar la autenticación de usuarios asp net core puede gestionar su propia identidad pero si lo prefieres, puedes delegarlo a la clase user de parse back4app maneja el hashing de contraseñas, rest api sesiones y otros detalles de seguridad // sign up public async task signupuser(string username, string password, string email) { var user = new parseuser { username = username, password = password, email = email }; await user signupasync(); } // log in public async task\<parseuser> loginuser(string username, string password) { return await parseuser loginasync(username, password); } inicio de sesión social integra facebook , google , u otros proveedores si lo deseas configurando los ajustes de oauth en el back4app panel consulta la documentación de inicio de sesión social https //www back4app com/docs/platform/sign in with apple paso 6 – manejo del almacenamiento de archivos subiendo archivos usa parsefile para subir imágenes o documentos public async task\<parsefile> uploadimage(byte\[] filebytes, string filename) { var parsefile = new parsefile(filename, filebytes); await parsefile saveasync(); return parsefile; } seguridad de archivos configura las subidas de archivos en configuración de la aplicación > seguridad y claves , ajustando quién puede subir o acceder a los archivos esto protege los datos del usuario en tu aplicación web paso 7 – verificación de correo electrónico y restablecimiento de contraseña por qué es importante la verificación de correo electrónico asegura que los usuarios son propietarios del correo proporcionado el restablecimiento de contraseña es crucial para una experiencia de usuario segura en tus soluciones asp net core habilítalo en back4app ve a configuración de correo electrónico en tu panel de back4app activa habilitar verificación de correo electrónico ajusta la plantilla de restablecimiento de contraseña para que coincida con tu marca paso 8 – programación de tareas con cloud jobs automatizar tareas en segundo plano utiliza cloud jobs para ejecutar tareas recurrentes, como eliminar datos antiguos o enviar recordatorios por ejemplo, cleanupoldtodos // main js parse cloud job('cleanupoldtodos', async (request) => { const todo = parse object extend('todo'); const query = new parse query(todo); const now = new date(); const thirty days = 30 24 60 60 1000; const cutoff = new date(now thirty days); query lessthan('createdat', cutoff); const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; }); establece el horario en configuración del servidor > tareas en segundo plano en el panel de control de back4app paso 9 – integración de webhooks uso de webhooks los webhooks permiten que tu asp net core backend llame a servicios externos cada vez que los datos cambian por ejemplo, notificar a un canal de slack cuando se crea un nuevo todo navega a webhooks bajo más > webhooks agrega un nuevo endpoint elige el evento (por ejemplo, crear todo ) paso 10 – explorando el panel de administración de back4app descripción general la aplicación de administración de back4app ayuda a los usuarios no técnicos a gestionar datos (crud) sin acceder al código es centrada en el modelo y sencilla habilitar bajo panel de la aplicación > más > aplicación de administración > habilitar aplicación de administración crea un usuario administrador y elige un subdominio luego inicia sesión con tus nuevas credenciales con la aplicación de administración, tú y tu equipo pueden manejar tareas de datos esenciales rápidamente, mejorando la colaboración y liberando tiempo de desarrollo conclusión has aprendido a construir un backend para asp net core utilizando back4app para optimizar datos, seguridad y funcionalidad al combinar una plataforma de código abierto con tus habilidades en net core, ahora tienes una estructura de base de datos escalable con acls y clps consultas en tiempo real para actualizaciones instantáneas de datos código en la nube para lógica segura del lado del servidor puntos finales de api web integrados para tu flujo de desarrollo web trabajos en la nube automatizados y webhooks para extender tu backend un panel de administración fácil de usar para gestionar datos con estas bases en su lugar, puedes desarrollar aplicaciones asp net core completas que ofrecen experiencias de usuario de primer nivel y manejan tráfico a gran escala sin esfuerzo próximos pasos ir a producción endurecer las reglas de seguridad, optimizar el rendimiento y aprovechar las analíticas de back4app agregar características avanzadas experimentar con roles, acceso basado en roles o apis de terceros (por ejemplo, stripe, slack) profundizar en el código en la nube escribir disparadores personalizados, integrarse con servicios externos o manejar flujos de trabajo complejos revisar la documentación oficial de back4app documentación de back4app https //www back4app com/docs/ ofrece orientación sobre el uso avanzado expandir tu proyecto asp net core con patrones mvc más ricos, microservicios o flujos de autenticación especializados