Połączenie zmiany Entity Framework w czasie wykonywania

Mam projekt web API, który odwołuje się do mojego modelu i zespołów DAL. Użytkownik otrzymuje ekran logowania, gdzie może wybrać różne bazy danych.

Ciąg połączenia buduję w następujący sposób:

    public void Connect(Database database)
    {
        //Build an SQL connection string
        SqlConnectionStringBuilder sqlString = new SqlConnectionStringBuilder()
        {
            DataSource = database.Server,
            InitialCatalog = database.Catalog,
            UserID = database.Username,
            Password = database.Password,
        };

        //Build an entity framework connection string
        EntityConnectionStringBuilder entityString = new EntityConnectionStringBuilder()
        {
            Provider = database.Provider,
            Metadata = Settings.Default.Metadata,
            ProviderConnectionString = sqlString.ToString()
        };
    }

Po pierwsze, jak właściwie zmienić połączenie kontekstu danych?

Po drugie, ponieważ jest to projekt WWW API, czy ciąg połączenia (ustawiony na logowanie powyżej) jest trwały podczas interakcji użytkownika lub czy powinien być przekazywany za każdym razem do mojego kontekstu danych?

questionAnswers(10)

yourAnswerToTheQuestion