Base APNETDB

Résolu
jagxx Messages postés 19 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 24 février 2009 - 23 févr. 2009 à 16:37
jagxx Messages postés 19 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 24 février 2009 - 24 févr. 2009 à 11:10
Bonjour,
N'y a t-il pas de contre indication à utiliser la base de donnée ASPNETDB, c'est à dire de modifier les tables existantes ou de
rajouter de nouvelles tables ? Ou bien faut-il utiliser une autre DB en parallèle ?

Merci d'avance

Jag

8 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
23 févr. 2009 à 22:06
Pour le membershipprovider la reponse etait dans le premier post.

http://ditch.developpez.com/aspnet2/membershipprovider/

Pour l'authentification
pour une authentification windows il faut que les comptes appartient à l'active directory ou à base de compte de la machine.

Pour une application intranet une IIS est preferable mais pour une application
internet il faut utiliser les comptes sql car les comptes de tes invites ne sont pas dans l'active directory de ta boite.

En esperant pas trop me tromper.
3
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
23 févr. 2009 à 22:07
pourquoi ne pas avoir utiliser l'outil aspnetdb.exe de ASP.net qui va justement créer la base à partir des différents scripts listés ?

custom membership : http://www.codeproject.com/KB/aspnet/WSSecurityProvider.aspx

et pour integrated security, ca dépend de beaucoup de choses, si tu es sur un domaine, avec authentification windows, etc ... pour un site web, c'est très rare qu'on utilise le integrated security, eventuellement dans un scénario d'intranet.

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
3
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
23 févr. 2009 à 17:31
Salut,

Peux-tu etre plus explicite dans ta question?

Il n'y a pas de contre indication
il faut noté que c'est une base fichier et non une base de données donc moins performante.

Mais il est possible de mettre les données dans une vrai base de données
avec les scripts sql qui sont dans le repertoire du framework.

Il est possible de modifier le nom des colonnes mais je pense qu'il faut refaire le provider.

Sur le net tu as des providers mysql ou autre qui permettent de mettre d'autres base de données ou de se plugger sur des annuaires LDAP ou Active Directory ou autres de manières a gerer les authentification par windows par exemple
pour un intranet ou sur des bases de données existantes.

Il suffit en general de reecrire le membershipprovider
(juste les methodes nécéssaires) apres il y a possibilité de refaire le roleprovider
pour une gestion par groupe par exemple.

cf
http://ditch.developpez.com/aspnet2/membershipprovider/
0
jagxx Messages postés 19 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 24 février 2009
23 févr. 2009 à 18:29
Salut,

Oui en fait j'aimerais savoir si je peux l'utiliser pour créer une application Web d'entreprise, c'est à dire, rajouter des tables supplémentaires (Employé, Clients, etc)  directement dans la bases ASPNETDB. Et par la suite, lorsque le développement sera terminé, migrer l'application vers SQL Serveur.
 
Jag
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
23 févr. 2009 à 18:47
Le plus simple est de prendre les scripts et de les executé dasns une base sql server express (à la place du fichier sql server mobile)

Les scripts sont dans C:\Windows\Microsoft.NET\Framework\v2.0.50727
InstallCommon.sql
InstallMembership.sql

et les autres (en cas de besoin)

ensuite il faut dans le web.config
changé la connection de la base de membership
et le tour est joué.

Des colonnes supplementaires sur les tables des personnes ... ne sont pas genantes normalement.

Apres la migrzation express --> server standard ou entreprise est transparente
c'est le meme moteur
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
23 févr. 2009 à 20:58
"moins performant" je suis pas sur, le fichier aspnetdb.mdf est un fichier de données SQL comme une autre qui sera ensuite chargé dans le moteur SQL comme une base classique.

Par contre, je te conseille de ne pas toucher au table ASPNetDB c'est à dire rajouter des colonnes ou des FK.

Si tu veux faire quelque chose de propre et de bien intégré, il est préférable de créer ton propre membershipprovider, c'est relativement aisé à implementer, "juste" une interface à implémenter.

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
0
jagxx Messages postés 19 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 24 février 2009
23 févr. 2009 à 21:44
J'ai créé une base aspnetdb à partir des scripts:
- InstallCommon.sql
- InstallMembership.sql
- InstallProfile.sql
- InstallRoles.sql
- InstallWebEventSqlProvider.sql
- InstallPersonalization.sql

, puis j'ai modifié le web.config de cette façon:


<connectionStrings>
<removename="
LocalSqlServer"
/> // Machine.config
<addname="
LocalSqlServer"
connectionString="
Data Source=PC_SEB\SQLEXPRESS;Initial Catalog=aspnetdb;Integrated Security=True"
providerName="
System.Data.SqlClient"
/>
</connectionStrings>


<membershipdefaultProvider="
AspNetSqlProvider"
>
<providers>
<addname="
AspNetSqlProvider"

type="
System.Web.Security.SqlMembershipProvider"

connectionStringName="
LocalSqlServer"

enablePasswordRetrieval="
false"

enablePasswordReset="
true"

requiresQuestionAndAnswer="
false"

applicationName="
/"

requiresUniqueEmail="
false"

passwordFormat="
Hashed"

description="
Stores and retrieves membership data from a Microsoft SQL Server database."
/>
</providers>
</membership>

Ca à l'air de fonctionner :) Merci bcp !

jesusonline: Créer son propre Membershipprovider ? Qu'est ce que ca veut dire exactement ? Est-ce que c'est créer ses propres tables et méthodes pour l'authentification ?

Sinon j'ai une question supplémentaire: L'utilisation de Integrated Security=True est correct ou faut-il que j'utilise l'authentification SQL Serveur ?

Merci d'avance!

Jag
0
jagxx Messages postés 19 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 24 février 2009
24 févr. 2009 à 11:10
Merci pour vos réponses!

A bientôt dans d'autres discussions sur .NET... ;-)

Jag
0
Rejoignez-nous