¿Cómo organizar y planificar tu proyecto con Web APIs?
Al iniciar un proyecto con Web APIs, es primordial trazar una lista de pasos a seguir para asegurar una integración y comunicación efectiva entre tus aplicaciones. Aunque este proceso puede parecer tedioso, el beneficio de una correcta planificación se reflejará en un código más ordenado y funcional. Es esencial recordar estos pasos a lo largo del desarrollo de tus proyectos, lo cual te permitirá optimizar tu flujo de trabajo y hacer el proceso casi automático.
¿Cuál es el primer paso en la creación de un proyecto con Web APIs?
Un buen punto de partida es la organización de tus archivos y clases. La conveniencia dicta nombrar una carpeta como models, donde se alojarán las clases de tu aplicación. Aquí, el uso de herramientas como Visual Studio Code puede agilizar tu productividad. Una recomendación es habilitar la extensión de "C# Short Extensions", la cual facilita la creación de nuevas clases con un clic derecho, ahorrándote tiempo y esfuerzo.
// Ejemplo de creación de una clasepublicclassContact{publicstring Problem {get;set;}publicstring Identifier {get;set;}publicstring Name {get;set;}publicstring PhoneNumber {get;set;}}
La creación de modelos como el anterior ayudará a definir la "estructura de datos", un paso crucial para que tu API pueda comunicarse correctamente y comprender cómo deben estructurarse los datos.
¿Cómo integrar Entity Framework en tu proyecto?
Para comunicarse efectivamente con la base de datos desde tu aplicación, se recomienda utilizar Entity Framework, que actúa como un puente de traducción entre los datos y tu aplicación.
Añadir las referencias necesarias:
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.SqlServer
Estas pueden ser integradas mediante la consola de gestión de paquetes o directamente copiándolas desde el explorador de paquetes.
Versiones estables: Asegúrate siempre de trabajar con versiones estables, en este caso, la versión 2.2.6, para minimizar errores y sorpresas desagradables durante el desarrollo.
¿Cómo garantizar que tu solución está lista para compilar?
Una vez añadidos y configurados todos los componentes necesarios, es importante verificar que tu aplicación está lista para ejecutarse sin problemas. Utiliza el comando dotnet restore para asegurarte de que todos los paquetes necesarios están correctamente instalados y vinculados a tu proyecto. Luego, ejecuta dotnet build para compilar la solución y comprobar que no existan errores en el proceso.
Al tomar estos pasos, te aseguras de que tu entono de desarrollo esté preparado para avanzar al siguiente nivel de construcción de aplicaciones robustas con Web APIs. Con una buena planificación y herramientas adecuadas, podrás optimizar tu tiempo y recursos, llevando a cabo tus proyectos de manera eficiente y sin contratiempos. ¡Sigue aprendiendo y perfecciona tus habilidades en desarrollo de software!
Siento que este maestro asume que sabemos cosas... no sé si esta clase originalmente viene de una ruta en la que hace más sentido este curso. Yo la estoy tomando en la Escuela de Data Science. Saludos
comparto su opinión explica bien pero asumiendo que tu ya sabes de lo que habla y no creo que sea valido puesto que estamos aprendiendo no repasando
Comparto tu opinión, pero considero que se asumen cosas porque seguramente se vieron antes en la ruta de Azure. El que este curso esté en la ruta de DS es temporal. /:
NuGet que debemos agregar para podernos conectar con la B.D.
- ENTITY FRAMEWORK CORE SQL SERVER
<PackageReference Include=“Microsoft.EntityFrameworkCore.SqlServer” Version=“2.2.6” />
Si quieren usar los atajos que usa el profe como prop, etc, instalen esta extension en su visual studio code
saludos
Hola compañeros yo igual tu errores "error nu1107 version conflict detected" sobre todo y me puse a agregar Packages como me lo fué pidiendo la terminal hasta que jaló sin problemas, así quedó el código final, espero le sirva a alguno.
Solo elimina las versiones y deja que el gestor de Nuget seleccione la última versón.
Hola! al instalar la Api desde el vídeo anterior note que la estructura no es la misma que la del profesor, en la ApiSQLPlatzi.csproj no se encontraba el <ItemGroup> por lo cual la agregue manualmente pero no me funciona. Alguno podría indicarme que debo hacer? Gracias!
Error:
C:\Users\cris_\OneDrive\Documents\Carrera Big data y Data scient\Programacion\ApiSQLPlatzi\ApiSQLPlatzi.csproj(12,3): error MSB4025: No se pudo cargar el archivo del proyecto. The 'ItemGroup' start tag on line 10 position 4 does not match the end tag of 'Project'. Line 12, position 3.
Yo tuve el mismo problema en Ubuntu, lo que me sirvió a mí fue:
Usar el framework webapi versión 2.2 (dotnet new webapi -n "ApiSQLPlatzi" --framework netcoreapp2.2)
Espero te sirva.
hola al hacer el dotnet build me sale lo siguientes errores
PS C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql> dotnet build
Microsoft (R) Build Engine version 16.3.0+0f4c62fea for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.
Restore completed in 13.14 ms for C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj.
Models\Contactscontext.cs(1,17): error CS0234: The type or namespace name 'EntityFrameworkCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(1,17): error CS0234: The type or namespace name 'EntityFrameworkCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(5,36): error CS0246: The type or namespace name 'DbContext' could not be found (are you missing a using directive or an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(7,32): error CS0246: The type or namespace name 'DbContextOptions' could not be found (are you missing a using directive or an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
0 Warning(s)
3 Error(s)
Time Elapsed 00:00:00.71
PS C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql> dotnew restore
dotnew : The term 'dotnew' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was
included, verify that the path is correct and try again.
At line:1 char:1
PS C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql> dotnet restore
Restore completed in 12.31 ms for C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj.
PS C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql> dotnet build
Microsoft (R) Build Engine version 16.3.0+0f4c62fea for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.
Restore completed in 11.73 ms for C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj.
Models\Contactscontext.cs(1,17): error CS0234: The type or namespace name 'EntityFrameworkCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(5,36): error CS0246: The type or namespace name 'DbContext' could not be found (are you missing a using directive or an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(7,32): error CS0246: The type or namespace name 'DbContextOptions' could not be found (are you missing a using directive or an assembly refembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apis.csproj]ql\apisql.csproj]
0 Warning(s)
3 Error(s)
ityFrameworkCore' does not exist in the namespace 'Microsoft' (are you missing an assem
Time Elapsed 00:00:00.76 \apisql.csproj]
PS C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql> dotnet restoontext' could not be found (are you missing a using directive or an assembly reference?re ]
Restore completed in 13.19 ms for C:\Users\Agustin\Desktop\CURSOS PROGRAMACIontextOptions' could not be found (are you missing a using directive or an assembly refON\azure sql\apisql\apisql.csproj. .csproj]
PS C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql> dotnet build
Microsoft (R) Build Engine version 16.3.0+0f4c62fea for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.
Restore completed in 13.67 ms for C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj.
Models\Contactscontext.cs(1,17): error CS0234: The type or namespace name 'EntityFrameworkCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(5,36): error CS0246: The type or namespace name 'DbContext' could not be found (are you missing a using directive or an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(7,32): error CS0246: The type or namespace name 'DbContextOptions' could not be found (are you missing a using directive or an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Build FAILED.
Models\Contactscontext.cs(1,17): error CS0234: The type or namespace name 'EntityFrameworkCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(5,36): error CS0246: The type or namespace name 'DbContext' could not be found (are you missing a using directive or an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
Models\Contactscontext.cs(7,32): error CS0246: The type or namespace name 'DbContextOptions' could not be found (are you missing a using directive or an assembly reference?) [C:\Users\Agustin\Desktop\CURSOS PROGRAMACION\azure sql\apisql\apisql.csproj]
0 Warning(s)
3 Error(s)