Configurer l'application ASP.NET MVC 4 avec Oracle Database
Je suis actuellement en train de travailler sur ASP.NET MVC 4 projet avec base de données Oracle. J'ai réussi à ajouter de la chaîne de connexion dans mon Web.fichier de config comme ici:
<add name="OracleDBConnString" connectionString="Provider=MSDAORA;Data Source=ISDQA;User ID=isd;Password=isdqa;" providerName="System.Data.OleDB" />
Mais quand je crée un nouveau projet, il a déjà intégré dans l'authentification des classes. Comment puis-je modifier ces classes une fois pour toutes? Je veux changer la valeur par défaut ConnString
.
Voici mon modèle:
public class UsersContext : DbContext
{
public UsersContext()
: base("OracleDBConnString")
{
}
public DbSet<UserProfile> UserProfiles { get; set; }
}
public class LoginModel
{
[Required]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; set; }
}
Voici mon contrôleur Utilisateur:
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public ActionResult Login(LoginModel model, string returnUrl)
{
//I WANT TO MODIFY THIS PART
if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
{
return RedirectToLocal(returnUrl);
}
//If we got this far, something failed, redisplay form
ModelState.AddModelError("", "The user name or password provided is incorrect.");
return View(model);
}
Mise à JOUR
Lorsque je change la base("DefaultConnection")
à base("OracleDBConnString")
j'ai eu cette erreur:
Server Error in '/' Application.
A null was returned after calling the 'get_ProviderFactory' method on a store provider instance of type 'System.Data.OleDb.OleDbConnection'. The store provider might not be functioning correctly.
Remarque que j'ai déjà ajouté using System.Data.OleDb;
sur mon usage.
source d'informationauteur Christian Mark
Vous devez vous connecter pour publier un commentaire.
Au lieu de créer une classe que vous pouvez configurer dans le web.config de l'affiliation fournisseur que vous utilisez.
Pour Oracle, il existe un
OracleMembershipProvider
catégorie, vous pouvez trouver ici.Pour MySQL, vous pouvez utiliser
MySQLMembershipProvider
. Il y a un bel article comment vous pouvez le configurer: Comment installer et Configurer MySql Fournisseur d'appartenancesEn outre, vous pouvez utiliser Entity Framework Code First Fournisseur D'Appartenances et l'utilisation appropriée de fournisseur de (rechercher sur cet article: Entity Framework Code First pour Oracle, MySQL, PostgreSQL et SQLite). Je n'ai pas essayé cette solution, mais il semble prometteur.
Si de rien ci-dessus permet de vous pouvez écrire votre propre Memebership fournisseur, mais je suis sûr que vous pouvez trouver quelque chose qui existe déjà.
Pour résumer: au Lieu de changer de type de connexion, changement de fournisseur d'appartenances qui sera spécifique à vos besoins. Votre code ne doit pas remarqué de changement, parce que chaque fournisseur d'appartenances hérite de la base de
MemebershipProivder
classeAsp.Net SimpleMembership et Asp.Net les Membres sont différents des bêtes, j'en ai peur. Asp.Net MVC4 les modèles de SimpleMembership (WebSecurity.Login).
Voir ma réponse à propos de MySql Appartenance à l'utilisation de fournisseur dans Asp.Net MVC4 ici. Il suffit de changer de chaîne de connexion ou d'autres choses ne seront pas vous aider. Vous avez besoin de trouver un Oracle Asp.Net SimpleMembership ou écrire votre propre.