Toon posts:

ASP.NET 2.0:login controls/memberships op eigen sqlsrv tabel

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben begonnen met het bouwen van een site voor mij en vrienden. De bedoeling is dat iedereen zich kan aanmelden en vervolgens kan inloggen. Iedereen moet een profiel kunnen vullen met informatie overzich zelf. Dit wil ik in een tabel members opslaan met kolommen als: mem_id, mem_username, mem_password, mem_firstname, mem_birthdate, mem_city, mem_interests, etc....
Ook wil ik een gastenboek maken, waarmee je dus onder je ingelogde naam moet kunnen posten. Daarvoor is dus een relatie nodig met de members tabel/

Nu wil ik dit alles maken in ASP.NET 2.0. Vooral omdat veel controls al gegeven zijn daarmee. Ik wil gebruik maken van de mebership provider en login controls.

Wanneer ik dit toevoeg aan een website gaat dit goed en kan ik users aanmaken. Echter dit wordt aangemaakt in een database file van ASP.NET, genaamd ASPNETDB.MDB, welke weer geplaats is in de App_data map. De aangemaakte users worden hierin opgeslagen. Dit wil ik dus niet.

Ik heb een SQL Server database aangemaakt met wat tabelletjes, waaronder de members tabel. Ik zou graag willen dat wanneer ik gebruik maak van die login controls en membership deze informatie in mijn eigen gemaakt members tabel wordt opgeslagen. Ook bevat deze tabel veel meer kolommen met additionele informatie dan die je standaard in kan vullen met bijvoorbeeld de create user wizard.

Mijn vraag is dus, kan ik dit aanpassen op zo een manier dat ik de betreffende controls kan configureren, zodat ze op mn eigen sql server tabel werken? Als het antwoord ja, hoor ik ook graag hoe ik dit kan doen en hoor ik ook graag als iemand toevallig een handige en duidelijke tutorial weet te vinden.

  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Je kan je eigen membership en roleproviders implementeren, of in de config vertellen waar de gebruikers gegevens opgeslagen moeten worden met de ingebouwde sql providers.

Verwijderd

Topicstarter
Dankjewel, zo iets heb ik inmiddles ook gelezen ja.Maar ik ben nu meer op zoek naar een tutorial die beschrijft hoe ik zo mebership/role provider maak. Zodat aangemaakt users in mijn eigen gemaakt tabel members/gebrukers terrecht komt met eigen gemaakt kolommen. Ik heb al een avondje gezocht maar heb nog niet iets duidelijk gevonden op internet.

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

Nu met Land Rover Series 3 en Defender 90


  • party42
  • Registratie: Oktober 2000
  • Laatst online: 17-04 15:54
deze is ook wel aardig:
http://weblogs.asp.net/sc...ve/2005/08/25/423703.aspx
Configuring ASP.NET 2.0 Application Services to use SQL Server 2000 or SQL Server 2005

One question I’ve seen asked a few times by people over the last few weeks is “how do I setup the new ASP.NET Membership, Role Management, and Personalization services to use a regular SQL Server instead of SQL Express?” This blog entry walks you though a few simple steps on how to-do this.

Everyday's an endless stream, of cigarettes and magazines...


Verwijderd

Topicstarter
Ik kom er nog niet echt uit..... :(

Waar geef ik aan dat ik mijn tabel bijvoorbeeld genaamd "members" om users in te inserten die aangemaakt worden middels bijvoorbeeld de create user wizard? Ik heb hieronder een verkort voorbeeld van mijn eigen tabel waar ik informatie over vrienden en andere personen opsla De datbase heet nf. Met behulp van bovenstaande links kwam ik er niet helemaal uit... Maar dit komt ook doordat ik nog vrij nieuw op dit gebied ben. Ik wil snel kunnen starten met het bouwen van een leuke website en wil daarbij graag gebruik maken van membersips en login controls. Dus kan iemand mij alsjeblieft beknopt/duidelijk uitleggen wat ik moet doen? Een handige nederlandstalige tutorial zou ook goed zijn

Wat ik van bovenstaande links niet goed begrijp is, hoe ik de ingevoerde gegegevens daadwerlijk in onderstaande tabel krijg, dit omdat ik nergens tabel namen zie genoemd.

mem_id int NOT NULL
mem_username varchar(50) NOT NULL
mem_password varchar(50)NOT NULL
mem_firstname varchar(50) NOT NULL
mem_middlename varchar(50) NULL
mem_lastname varchar(50) NOT NULL
mem_birthdate varchar(50) NOT NULL
mem_interests varchar(50)NULL

[ Voor 58% gewijzigd door Verwijderd op 16-01-2006 21:33 ]


Verwijderd

Topicstarter
<configuration>
<connectionStrings>
<add name="MyDB" connectionString="..." />
</connectionStrings>
<system.web>
... authentication & authorization settings ...

<membership defaultProvider="CustomizedProvider">
<providers>
<add name="CustomizedProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="MyDB"
minRequiredPasswordLength="5"
minRequiredNonalphanumericCharacters="0" />
</providers>
</membership>
</system.web>
</configuration>

Ik heb bovenstaande aanpassing van een website gehaald die ik moet doen in de web,config file. Welke gegevens moet ik nu aanpassen om: mijn datbaseservernaam op tegeven en de naam van de database?

Verder wil ik de gegevens in een eigen tabel die ik heb gemaakt. Waarin komen de users gebruik maken van bovenstaande code? Ik heb aspnet_regsql gedraaid en ingesteld op mijn database. Is dat voldoende ?

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

aspnet_reqsql is om de standaard SqlClient provider te gebruiken voor membership.
Jij maakt zelf je tabellen en je geeft in jouw connection string aan op welke server jouw provider moet connecten. Jouw provider moet dan zelf in de goeie tabellen kijken.

Nu met Land Rover Series 3 en Defender 90


Verwijderd

Topicstarter
MTWZZ schreef op dinsdag 17 januari 2006 @ 08:04:
aspnet_reqsql is om de standaard SqlClient provider te gebruiken voor membership.
Jij maakt zelf je tabellen en je geeft in jouw connection string aan op welke server jouw provider moet connecten. Jouw provider moet dan zelf in de goeie tabellen kijken.
Okeej maar begrijp ik het dan verkeerd. Als ik aspnet_regsql start dan opent er een wizard. Dan kies ik voor de eerste radiobutton. Configure an exiting to store information ASP.NET membership, profiles, etc... Dan klik ik op next en kom ik dus in het volgende scherm. Hier geef ik de servernaam op en kies ik voor SQL server authentication en kies ik de gewenste database. Daarna bevestig ik deze instellingen in een volgend scherm. De wizard eindigt met een scherm waar ik de volgende informatie krijg, "You should now configure the provider for membership, role, personalization and SQL web event provider to reflect the change made made in this wizard. If you have removed application service information from the database, be sure to change the provider to reference a different data store."

Zover ik het nu begrijp heb ik dit nu met de wizard ingesteld voor mijn database. Alleen wat ik niet begrijp is wat ik nu precies moet veranderen als ik het laatste scherm lees. Volgens mij heb ik nu ook the application service information verwijderd van de database toch en moet ik verwijzen naar een andere datastore? Zoals in de laatste zin van bovengenoemde tekst uit de wizard staat?

Volgens mij heb ik nu wel een stap gedaan in de goede richting door het draaien van deze wizard en het daarin kiezen van mijn database. Ik ben al 2 avonden bezig maar ik weet niet:

- waar ik de provider configureer voor mijn database nadat ik deze wizard heb gestart, dus waar doe ik dit?
- en als ik op die plek ben, wat moet ik precies verandern? mijn tabel heet bijvoorbeeld 'vrienden'

Ik heb zelf al heel veel geprobeerd te vinden op google maar alles wat ik vind gaat er vanuit dat de ezer toch al enige tijd bezig is met ASP.NET.

Verwijderd

Topicstarter
Okeej, het lijkt er op dat ik iets verder ben gekomen. De wizard heeft nu een aantal asp.net tabellen op mijn database aangemaakt voor users, mebership, roles, etc... Dat lijkt in ieder geval de goed kant op te gaan.

Echter, wanneer ik de 'create uset wizard op het scherm sleep' en ik start deze op de localserver dan wordt de aspnet weer aangemaakt, oftwel er wordt niet gebruikt gemaakt van mijn eigen server/datbase.

Wat moet ik aanpassen om ervoor te zorgen dat mijn database gebruikt word? Wanner ik de ASP.NET Web Site Administration Tool open in internet explorere en het tabblad Provider aanklik om vervolgens ene provider te kiezen, dan zie ik alleen AspNetSqlProvider staan. Dus die moet gekozen worden. Is dit de verklaring waarom hij niet mijn database gebruikt? Hoe zorg ik ervoor dat ik deze default kan veranderen in mijn eigen database?

[ Voor 28% gewijzigd door Verwijderd op 17-01-2006 14:52 ]


Verwijderd

Topicstarter
Ik ben weer wat verder, ik heb gedaan wat op deze pagina is beschreven:

http://www.devx.com/asp/Article/29256/0/page/3


Alles ging eigenlijk wel goed, maar ik wil de gegevens opslaan in SQL 2005 server database en deze turorial gaat uit van een Acces database. Ik krijg geen errors dus dus ik denk dat ik alles goed doe... in ieder geval niet echt fout..:P Maar een aangemaakte user zie ik in geen enkele tabel. Laat staan in mn eigen dbo.members tabel

Nu zie ik het laatste gedeelte dat er een select wordt uitgevoerd.

http://www.devx.com/asp/Article/29256/0/page/3

Public Overrides Function ValidateUser( _
ByVal username As String, _
ByVal password As String) As Boolean

Dim conn As New OleDb.OleDbConnection(connStr)
Try
conn.Open()
Dim sql As String = _
"Select * From Membership WHERE " & _
"username=@username AND password=@password"
Dim comm As New OleDb.OleDbCommand(sql, conn)
comm.Parameters.AddWithValue("@username", _
username)
comm.Parameters.AddWithValue("@password", _
password)
Dim reader As OleDb.OleDbDataReader = _
comm.ExecuteReader
If reader.HasRows Then
Return True
Else
Return False
End If
conn.Close()

Catch ex As Exception
Console.Write(ex.ToString)
Return False
End Try
End Function

Wanneer ik nu een user aanmaak zegt de wizard dat het gelukt is, vervolgens kan ik niet inloggen met de user.

Wat moet ik aanpassen om het werkend te krijgen...? Iemand tips?

[ Voor 6% gewijzigd door Verwijderd op 17-01-2006 16:23 ]

Pagina: 1