Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Descargar el proyecto completado
En esta sección, usará Migraciones de Code First en EF para inicializar la base de datos con datos de prueba.
En el menú Herramientas , seleccione Administrador de paquetes NuGet y, a continuación, seleccione Consola del Administrador de paquetes. En la ventana Consola del Administrador de paquetes, escriba el siguiente comando:
Enable-Migrations
Este comando agrega una carpeta denominada Migrations al proyecto, además de un archivo de código denominado Configuration.cs en la carpeta Migraciones.
Abra el archivo Configuration.cs. Añada la siguiente instrucción using.
using BookService.Models;
A continuación, agregue el código siguiente al método Configuration.Seed :
protected override void Seed(BookService.Models.BookServiceContext context)
{
context.Authors.AddOrUpdate(x => x.Id,
new Author() { Id = 1, Name = "Jane Austen" },
new Author() { Id = 2, Name = "Charles Dickens" },
new Author() { Id = 3, Name = "Miguel de Cervantes" }
);
context.Books.AddOrUpdate(x => x.Id,
new Book() { Id = 1, Title = "Pride and Prejudice", Year = 1813, AuthorId = 1,
Price = 9.99M, Genre = "Comedy of manners" },
new Book() { Id = 2, Title = "Northanger Abbey", Year = 1817, AuthorId = 1,
Price = 12.95M, Genre = "Gothic parody" },
new Book() { Id = 3, Title = "David Copperfield", Year = 1850, AuthorId = 2,
Price = 15, Genre = "Bildungsroman" },
new Book() { Id = 4, Title = "Don Quixote", Year = 1617, AuthorId = 3,
Price = 8.95M, Genre = "Picaresque" }
);
}
En la ventana Consola del Administrador de paquetes, escriba los siguientes comandos:
Add-Migration Initial
Update-Database
El primer comando genera código que crea la base de datos y el segundo comando ejecuta ese código. La base de datos se crea localmente mediante LocalDB.
Exploración de la API (opcional)
Presione F5 para ejecutar la aplicación en modo de depuración. Visual Studio inicia IIS Express y ejecuta la aplicación web. A continuación, Visual Studio inicia un explorador y abre la página principal de la aplicación.
Cuando Visual Studio ejecuta un proyecto web, asigna un número de puerto. En la imagen siguiente, el número de puerto es 50524. Al ejecutar la aplicación, verá un número de puerto diferente.
La página principal se implementa mediante ASP.NET MVC. En la parte superior de la página, hay un vínculo que indica "API". Este vínculo le lleva a una página de ayuda generada automáticamente para la API web. (Para obtener información sobre cómo se genera esta página de ayuda y cómo puede agregar su propia documentación a la página, consulte Creación de páginas de ayuda para ASP.NET API web). Puede hacer clic en los vínculos de la página de ayuda para ver detalles sobre la API, incluido el formato de solicitud y respuesta.
La API habilita las operaciones CRUD en la base de datos. A continuación se resume la API.
| Autores | Descripción |
|---|---|
| GET api/authors | Obtener todos los autores. |
| GET api/authors/{id} | Obtenga un autor por identificador. |
| POST /api/authors | Cree un nuevo autor. |
| PUT /api/authors/{id} | Actualice un autor existente. |
| DELETE /api/authors/{id} | Elimine un autor. |
| Libros | Descripción |
|---|---|
| GET /api/books | Consigue todos los libros. |
| GET /api/books/{id} | Obtener un libro por ID. |
| POST /api/books | Cree un libro nuevo. |
| PUT /api/books/{id} | Actualizar un libro existente. |
| DELETE /api/books/{id} | Eliminar un libro. |
Ver la base de datos (opcional)
Cuando ejecutaste el comando Update-Database, EF creó la base de datos y realizó una llamada al método Seed. Al ejecutar la aplicación localmente, EF usa LocalDB. Puede ver la base de datos en Visual Studio. En el menú Ver, seleccione Explorador de objetos de SQL Server.
En el cuadro de diálogo Conectar al servidor , en el cuadro de edición Nombre del servidor, escriba "(localdb)\v11.0". Deje la opción Autenticación como "Autenticación de Windows". Haga clic en Conectar.
Visual Studio se conecta a LocalDB y muestra las bases de datos existentes en la ventana Explorador de objetos de SQL Server. Puede expandir los nodos para ver las tablas creadas por EF.
Para ver los datos, haga clic con el botón derecho en una tabla y seleccione Ver datos.
En la captura de pantalla siguiente se muestran los resultados de la tabla Libros. Observe que EF ha rellenado la base de datos con los datos de inicialización y la tabla contiene la clave externa de la tabla Autores.