Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Añadir una instancia de base de datos de Amazon RDS a un entorno de aplicaciones .NET
En este tema se proporcionan instrucciones para crear un Amazon RDS mediante la consola de Elastic Beanstalk. Puede utilizar una instancia de base de datos de Amazon Relational Database Service (Amazon RDS) para almacenar datos recopilados y modificados por su aplicación. La base de datos se puede adjuntar al entorno y administrarse con Elastic Beanstalk, o bien, crearse como desacoplada y administrarse de forma externa a través de otro servicio. En estas instrucciones, la base de datos se acoplará al entorno y se administrará con Elastic Beanstalk. Para obtener más información sobre el uso de Elastic Beanstalk con Amazon RDS, consulte Añadir una base de datos al entorno de Elastic Beanstalk.
Secciones
Añadir una instancia de base de datos al entorno
Para agregar una instancia de base de datos al entorno
Abra la consola de Elastic Beanstalk
y, en la lista Regions (Regiones), seleccione su Región de AWS. -
En el panel de navegación, elija Environments (Entornos) y, a continuación, elija el nombre del entorno en la lista.
nota
Si tiene muchos entornos, utilice la barra de búsqueda para filtrar la lista de entornos.
En el panel de navegación, elija Configuration (Configuración).
-
En la categoría de configuración Database (Base de datos), seleccione Edit (Editar).
-
Seleccione un motor de base de datos y escriba el nombre de usuario y la contraseña.
-
Para guardar los cambios, elija Aplicar en la parte inferior de la página.
Se tarda alrededor de 10 minutos en añadir una instancia de base de datos. Cuando se haya completado la actualización del entorno, el nombre de host de la instancia de base de datos y otra información de conexión estarán disponibles para su aplicación mediante las siguientes propiedades de entorno
Nombre de la propiedad | Descripción | Valor de la propiedad |
---|---|---|
|
El nombre de host de la instancia de base de datos. |
En la pestaña Connectivity & security (Conectividad y seguridad) de la consola de Amazon RDS: Endpoint (Punto de enlace). |
|
El puerto en donde la instancia de base de datos acepta las conexiones. El valor predeterminado varía dependiendo del motor de base de datos. |
En la pestaña Connectivity & security (Conectividad y seguridad) de la consola de Amazon RDS: Port (Puerto). |
|
El nombre de la base de dato, |
En la pestaña Configuration (Configuración) de la consola de Amazon RDS: DB Name (Nombre de la base de datos). |
|
El nombre de usuario que ha configurado para la base de datos. |
En la pestaña Configuration (Configuración) de la consola de Amazon RDS: Master username (Nombre de usuario maestro). |
|
La contraseña que ha configurado para la base de datos. |
No está disponible como referencia en la consola de Amazon RDS. |
Para obtener más información sobre la configuración de una instancia de bases de datos acopladas a un entorno de Elastic Beanstalk, consulte Añadir una base de datos al entorno de Elastic Beanstalk.
Descargar un controlador
Descargue e instale el paquete EntityFramework
y un controlador de base de datos para el entorno de desarrollo con NuGet
.
Proveedores de bases de datos de Common Entity Framework para .NET
-
SQL Server –
Microsoft.EntityFrameworkCore.SqlServer
-
MySQL –
Pomelo.EntityFrameworkCore.MySql
-
PostgreSQL –
Npgsql.EntityFrameworkCore.PostgreSQL
Conexión a una base de datos
Elastic Beanstalk proporciona información de conexión para instancias de base de datos asociadas en propiedades de entorno. Use ConfigurationManager.AppSettings
para leer las propiedades y configurar una conexión con la base de datos.
ejemplo Helpers.cs: método de cadena de conexión
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
namespace MVC5App.Models
{
public class Helpers
{
public static string GetRDSConnectionString()
{
var appConfig = ConfigurationManager.AppSettings;
string dbname = appConfig["RDS_DB_NAME"];
if (string.IsNullOrEmpty(dbname)) return null;
string username = appConfig["RDS_USERNAME"];
string password = appConfig["RDS_PASSWORD"];
string hostname = appConfig["RDS_HOSTNAME"];
string port = appConfig["RDS_PORT"];
return "Data Source=" + hostname + ";Initial Catalog=" + dbname + ";User ID=" + username + ";Password=" + password + ";";
}
}
}
Utilice la cadena de conexión para inicializar el contexto de la base de datos.
ejemplo DBContext.cs
using System.Data.Entity;
using System.Security.Claims;
using System.Threading.Tasks;
using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.EntityFramework;
namespace MVC5App.Models
{
public class RDSContext : DbContext
{
public RDSContext()
: base(GetRDSConnectionString()
)
{
}
public static RDSContext Create()
{
return new RDSContext();
}
}
}