www.®olandsee.net

... all kinds of stuff

ASP.NET Logout via HttpHandler

by rolosee 26. June 2008 07:24

Omar Al Zabir beschreibt in seinem Buch "Building a Web 2.0 Portal with ASP.NET 3.5" eine interessante Alternative zum ASP.NET Logout Mechanismus über FormsAuthentication.SignOut. Letzteres löscht lediglich das Cookie .DBAUTH, was in vielen Fällen ausreichen mag. Wenn jedoch ein "anonymous identification provider" verwendet wird, werden zwei Cookies erstellt, .DBAUTH und .DBANON. Probleme können dann entstehen, wenn durch SignOut das Authentifizierungscookie gelöscht wird, das anonymous cookie jedoch noch vorhanden ist.

Um dieses Problem zu umgehen, schlägt Zabir die Verwendung eines LogOut Handlers vor, der alle Cookies im Zusammenhang mit dieser Website entfernt. Ein Handler bringt in diesem Fall weniger Overhead mit sich und generiert nur relativ wenig Code, wenn er zur Laufzeit kompiliert wird.

Codebeispiel Logout.ashx, aufzurufen z.B. über lnkLogout.NavigateUrl = "~/Logout.ashx";

<%@ WebHandler Language="C#" Class="Logout" %>

//when logging out remove all cookies related to the site
//instead of just removing the forms authentication cookie
using System;
using System.Web;
using System.Web.Security;
using System.Collections.Generic;
public class Logout : IHttpHandler
{
    public void ProcessRequest (HttpContext context)
    {
     /// Expire all the cookies
        List<string> cookiesToClear = new List<string>();
        foreach (string cookieName in context.Request.Cookies)
       {
            HttpCookie cookie = context.Request.Cookies[cookieName];
            cookiesToClear.Add(cookie.Name);
       }
       foreach (string name in cookiesToClear)
       {
           HttpCookie cookie = new HttpCookie(name, string.Empty);
           cookie.Expires = DateTime.Today.AddYears(-1);
           context.Response.Cookies.Set(cookie);
       }
        context.Response.Redirect"~/Default.aspx");
    }
    public bool IsReusable
    {
         get
        {
            return true;
         }
     }
}

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

ASP.NET

Warum verhalten sich Menschen irrational, wenn es ums Geld geht?

by rolosee 4. June 2008 08:15

Dieser Frage geht ein Artikel im Magazin Technology Review (06/2008, S. 32 ff.) nach. Auf dem Gebiet der Neuroökonomie sollen Forschungen mittels Kernspintomografen Antworten auf solche Fragen finden. Die Ergebnisse sind jedoch z.T. umstritten. Es wurde beispielsweise nachgewiesen, dass im Gehirn ohne Kenntnis der Getränkemarke ein "Belohnungszentrum" beim Trinken von Pepsi-Cola weitaus aktiver war als bei Coca-Cola. Teilte man den Probanten die Marken vor dem Test mit, fiel das Untersuchungsergebnis umgekehrt aus. Hmm, ist das nun glaubwürdig oder nicht?

Interessant auch ein weiteres Untersuchungsergebnis:

Offensichtlich kann zudem nicht nur eine gut etablierte Marke, sondern auch einfach ein hoher Preis besonders lecker schmecken: Vor einigen Monaten setzte der Wirtschaftsforscher Antonio Rangel vom Caltech 20 Versuchspersonen verschiedene Weinproben vor und nannte ihnen dabei einen Preis. Je teurer der edle Tropfen angeblich war, so zeigte sich, desto stärker war das Belohnungszentrum im Hirn aktiv. Allerdings hatten die Forscher die Preisschilder ausgetauscht - die Probanten mochten den billigen Wein lieber, wenn er ihnen als teuer verkauft wurde, und den eigentlich hochwertigen Wein weniger, wenn er günstiger war. "Die meisten Menschen glauben, dass Preis und Qualität voneinander abhängen, daher ist es für das Gehirn nur natürlich, den Preis bei der Einschätzung des Geschmacks mit einzubeziehen", erklärt Rangel. ... Das Experiment habe gezeigt, wie wenig das subjektive Erleben eines Produkts mit seinen eigentlichen Qualitäten zu tun habe - und wie die Erwartung guter Qualität die emotionalen Zentren im Gehirn der Konsumenten anspreche.

Die geschilderten Verhaltensweisen kann ich auch an meiner Person entdecken. Dennoch bringen mich die Untersuchungsergebnisse ins Grübeln. Wie oft haben schon seriöse Untersuchungen aufgezeigt, dass z.B. das Ketchup bei Aldi von der Qualität her besser ist, als ein Markenketchup. Kürzlich war erst der Test unterschiedlicher Biersorten im Fernsehen zu sehen. Ohne Kenntnis der Marke haben hier günstigere Produkte sehr gut abgeschnitten.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Allgemein | IT - Menschen

ScriptManager in Masterpage einbinden

by rolosee 28. May 2008 07:07

Die Arbeit mit ASP.NET AJAX ist eine prima Sache. Mit relativ geringem Aufwand lassen sich AJAX Funktionalitäten in einer Website integrieren. Auf der "AJAX-enabled" aspx-Seite wird im Normalfall innerhalb des Forms der ScriptManager registriert und schon ist auf dieser Seite z.B. das UpdatePanel anwendbar: <asp:ScriptManager ID="ScriptManager1" runat="server" />.   Bisher bin ich davon ausgegangen, dass bei Verwendung des AJAX ControlToolKits ACT mit all seinen schönen Extender Controls statt des herkömmlichen ScriptManagers der zugehörige AjaxControlToolKitScriptManager eingebunden werden muss: <ajaxToolkit:ToolkitScriptManager ID="ScriptManager1" runat="server" />.

Probleme sind aufgetreten, als ich auf einer aspx-Seite mit dem ACT-ScriptManager ein Usercontrol eingebunden habe, welches einen ScriptManagerProxy benötigte, da auf einer aspx-Seite nur EIN ScriptManager erlaubt ist. Es gibt jedoch keinen ScriptManagerProxy für das ACT. Ein befreundeter Entwickler gab mir den Tipp, doch statt des ACT ScriptManagers den herkömmlichen ScriptManager wieder einzubinden. Der ACT ScriptManager wird vom ScriptManager abgeleitet, so dürften hier keine Probleme zu erwarten sein. Nun ist es auch bei der Arbeit mit einer Masterpage möglich, mit dem ScriptManager, dem ScriptManagerProxy und mit dem ACT zu arbeiten.

Mögliche Einbindung des ScriptManagers im Codebehind der Masterpage:

        /// <summary>
        /// preInit event
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected override void OnPreInit(EventArgs e)
        {
            //adds a global scriptManager to the form in masterpage
            //to use it for Ajax in ascx controls via scriptManagerProxy
            if (ScriptManager.GetCurrent(this.Page) == null)
            {
                ScriptManager Manager = new ScriptManager();
                Manager.EnablePartialRendering = true;

                foreach (Control c in this.Controls)
                {
                    if (c is HtmlForm)
                    {
                        c.Controls.AddAt(0, Manager);
                    }
                }
            }
            base.OnPreInit(e);
        }

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Ajax | WEB 2.0

Silverlight 2 Roadmap

by rolosee 8. April 2008 07:07

Relativ aktuelle Aussagen zur Roadmap von Silverlight 2 sind kann man auf der Website internetnews erfahren. Hier einige Auszüge aus den Informationen von Ashish Thapliyal:

We are targeting late Summer [for final release]," Thapliyal's post said. Beta 2 will also feature what Microsoft calls a "Go Live" license, which enables developers to write commercial applications using the beta code, the post continued. Beta 1 comes with a "non-commercial" Go Live license. A Microsoft spokesperson described the posting, which was evidently not sanctioned by executives, as being "somewhat correct."

"Silverlight 2 is slated to RTW [release to Web] in the fall. One thing to keep in mind with these dates is that ultimately it’s the quality of the product and ability to satisfy customer needs that drives when a product sees the light of day," the spokesperson told InternetNews.com in an e-mail. Microsoft introduced Silverlight a year ago, and shipped Version 1 last summer. However, Silverlight 1 only supports applications written using JavaScript. Version 2, in comparison, will support applications written using Visual Studio and the .NET Framework. That means developers will be able to use core development languages like C# and Visual Basic.net to write for Silverlight 2.

Perhaps a little ironically, Version 2 was originally named Version 1.1, but Microsoft renumbered the release in November to better reflect the significance of the release – particularly its ability to support the Visual Studio languages. "To me, it's what turns Silverlight from a streaming video plug-in into a development platform that you can actually write applications for," Greg DiMichillie, lead analyst for application platforms at research firm Directions on Microsoft, told InternetNews.com when Microsoft changed the numbering in November.

At last month's MIX08 conference, Scott Guthrie, corporate vice president of developer platforms, told the audience that Silverlight 1 has been attracting 1.5 million downloads per day. That may help Microsoft to get a leg up on Adobe's (NASDAQ: ADBE) competing Flash technology, which that company estimates is already on 90 percent of all PCs in use.

The blog post also disclosed that the move from Beta 1 to Beta 2 would cause developers some problems, although Thapliyal did not describe them. "There will be breaking changes between Beta 1 and Beta 2 of Silverlight 2 but the changes will not be drastic between Beta 2 and [the] Final Release …. Also, if you develop your websites using 1.0, it will be compatible when 2.0 comes out …. There is only one Silverlight so all the capabilities of 1.0 will be unified in the 2.0 release," the post said.

Lassen wir uns in diesem Sinne überraschen, wie sich Silverlight 2 als Konkurrenz zu Flash weiter etablieren kann.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Silverlight - WPF | Microsoft

Building a Web 2.0 Portal with ASP.NET 3.5

by rolosee 1. March 2008 16:48

Unter diesem Titel hat Omar AL Zabir sein erstes Buch veröffentlicht.

Dieses brandneue Buch beschreibt in 10 Kapiteln die Programmierung eines komplett Drag and Drop fähigen Ajax Web Portals. Dabei finden die aktuellsten Techniken von Microsoft Anwendung. Für das UI ASP.NET 2.0/3.5 sowie ASP.NET AJAX 1.0, für das Business Layer WPF als eine Kollektion von Workflows und für die Datenzugriffsschicht LINQ to SQL/LINQ to XML.

Der Mitbegründer und CTO von Pageflakes Al Zabir entwirft einen Open Source Ajax-Portal Prototypen, erläutert dabei Design- und Architekturherausforderungen, fortgeschrittene Ajax-Konzepte, Performance optimierende Techniken und wie serverseitige Skalierungsprobleme lösbar sind. Er baut dabei auf seinen Erfahrungen auf, die er in den beiden letzten Jahren bei Pageflakes gesammelt hat. Nach dem ersten Durchlesen des Buches muss ich dem Satz zustimmen, der auf der Rückseite des Buches abgedruckt ist: "If you think you're well versed in ASP.NET, think again".

Der Code des Open Source Projektes kann unter www.codeplex.com/dropthings/ downgeloadet werden. Wer DropThings live in Action sehen möchte, kann auf www.dropthings.com vorbeischauen.

Für ASP.NET Webentwickler, die sich auf Höhe der Zeit bewegen wollen, ist dieses Buch m. E. Pflichtlektüre.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Ajax | WEB 2.0 | WPF | ASP.NET

Anforderungen an eine ASP.NET Website

by rolosee 24. January 2008 08:48

Anläßlich der BASTA! Konferenz 2008, die Ende Februar in Frankfurt stattfinden wird, hält Dr. Holger Schwichtenberg einen interessanten Vortrag zum Thema "ASP.NET Best Practices" mit dem Schwerpunkt "Was muss eine Website sein?"

Als Anforderungen listet er folgende Punkte auf:

Eine Website muss 

  1. benutzerfreundlich
  2. sicher
  3. performant
  4. schnell fertig
  5. wartbar
  6. in Google auf Platz 1 sein.

Allen genannten Anforderungen bin ich in den vergangenen Jahren immer wieder begegnet. Zu jedem Punkt ließen sich stundenlange Diskussionen veranstalten. Ein Schmunzeln haben mir jedoch die Punkte 4 und 6 abgerungen :-)

 

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

ASP.NET | IT - Menschen

Powered by BlogEngine.NET 1.1.0.7
ASP.NET Version: 2.0.50727.1433

der Autor

Roland See Roland See
Senior Software Developer bei JobScout24. Weitere Infos gibt es hier.
Wickendorf, Oberfranken, Deutschland.

E-Mail Send mail

Letzte Beiträge

Disclaimer

Bei den in diesem Blog ausgedrückten Meinungen handelt es sich ausschließlich um meine persönlichen Ansichten.

© Copyright 2008

einloggen