Membership UserId auslesen und an GridView / DetailView als Parameter übergeben

Hallo,

wenn man ASP.NET 2.0 nutzt und die dazugehörige Userverwaltung, kann man für seine eigene Tabellen mal die UserId gebrauchen. sie ist im SQL Server 2005 vom DatenTyp uniqueidentifier.

Bekommt tut man diese über folgende CodeZeilen:

// userdaten holen
MembershipUser myObject = Membership.GetUser ( );
 
// userid extrahieren (ist aber vom Typ System.Guid)
string tmpUserID = myObject.ProviderUserKey.ToString ( );

Um diese nun als zusätzlichen Parameter in einem Grid- / DetailsView zu übergeben. muss man nun folgende Ereignisse bearbeiten:

GridView (beim update):

protected void gvNews_RowUpdating ( object sender, GridViewUpdateEventArgs e ) {
        // userdaten holen
        MembershipUser myObject = Membership.GetUser ( );
 
        // userid extrahieren (ist aber vom Typ System.Guid)
        string tmpUserID = myObject.ProviderUserKey.ToString ( );
 
        // als parameter hinzufügen
        e.NewValues.Add ( "username", tmpUserID );
    }

DetailsView (insert)

protected void dvAddNews_ItemInserting ( object sender, DetailsViewInsertEventArgs e ) {
 
        // userdaten holen
        MembershipUser myObject = Membership.GetUser ( );
 
        // userid extrahieren (ist aber vom Typ System.Guid)
        string tmpUserID = myObject.ProviderUserKey.ToString ( );
 
        // als parameter hinzufügen
        e.Values.Add ( "username", tmpUserID );
    }

Wenn es noch einfacher geht, bitte melden 🙂

Related Posts:

Definition: ASP && ASP.NET

Hy, damit alle mal bescheid wissen, die immer sagen, “Du kannst doch ASP”….

Ich hasse es langsam 😉

Hier mal die Definition ASP && ASP.NET

Dank an Thomas

ASP

Abkürzung für Active Server Pages, den Vorgänger von ASP.NET. Reine “Scriptumgebung”, in der üblicherweise mit VBScript oder JScript, einer JavaScript-Variante von Microsoft, prozedural programmiert wird. Die Scripts, meist mit Endung .asp, werden dann vom Server beim Aufruf interpretiert, das Ergebnis zum Client geschickt. Wurde 2002 durch ASP.NET 1.0 abgelöst, existierte selbst bis Version 3.0, und verliert heute immer mehr an Bedeutung.

ASP.NET

Angedacht wohl einmal als “Active Server Pages .NET”, hat sich der Name verselbstständigt. Von Active Server Pages spricht heute niemand mehr. ASP.NET ist der Teil des .NET Frameworks, der dafür zuständig ist, via (Web-) Server zu kommunizieren, etwa via HTML-Seiten (WebForms, UserControls) oder WebServices. Aktuelle Version ist 2.0, für die viele Zusatzfeatures wie etwa ASP.NET Ajax 1.0 zur Verfügung stehen.

Related Posts:

[asp.net] – Masterpage: form name=”aspnetForm”

Hallo,

wenn man eine Masterpage erstellt und natürlich auch eine Unterseite dazu, kommt nach dem Rendern folgendes form zum Vorschein:

[html]

[/html]

Das ist nicht xhtml1.1 valide, also mus eine Lösung her. einfach in der web.config folgenden Code einfügen:

[xml]




[/xml]

das wars, schon ist der name weg. 🙂

Gruss und danke an Stefan Falz

Related Posts:

[ASP.NET] – siteMapNode um eigene Tags erweitern

Hy

Ich war auf der Suche nach einer Möglichkeit, an siteMapNodes Bilder zu benutzen. Die Lösung fand ich bei bei Thomas und ist hier für das Archiv.

Und zwar wird dabei die Datenbindung manuell erweitert.

<sitemapnode url="~/kontakt.aspx" title=""  description="Kontakt zu Uns" imageUrl="~/App_Themes/style_one/images/menue/home.gif">
</sitemapnode>

Die Datenbindung:

public void OnItemBound(object sender, MenuEventArgs args) {
    args.Item.ImageUrl = ((SiteMapNode)args.Item.DataItem)["imageUrl"];
}

und im Menue Control geben wir die Methode an:

<asp:menu ID="menueOsterfeldMain" runat="server" DataSourceID="smdsOsterfeld" Orientation="Horizontal" StaticEnableDefaultPopOutImage="False" OnMenuItemDataBound="OnItemBound">
</asp:menu>

http://weblogs.asp.net/bleroy/archive/2006/01/24/436350.aspx

in diesem Sinne

Related Posts: