Jan 09 2008

Strongly-Typed Session Properties in ASP.NET

Tag: .NET Framework, ASP.NETTyrone @ 10:02 pm

I recently was given the opportunity to comment on a blog post which discussed a method of using Strongly-Types Session Properties with ASP.NET. After reading it, I noticed that the implementation was quite similar to something I have been using for months now. I was able to provide some feedback on how his implementation differed from mine. Anyway’s, the link below will take you to the blog post which I am referring to and you could decide for yourself.

UPDATE: 1/11/2008

For those who would like to see my implementation here it is:

   1:  using System;
   2:   
   3:  using System.Web;
   4:   
   5:  [Serializable]
   6:   
   7:  public sealed class SessionManager {
   8:   
   9:     private const string SESSION_MANAGER = “SESSION_MANAGER”;
  10:   
  11:     private Product _product = null;
  12:   
  13:     private SessionManager( ) {
  14:   
  15:     }
  16:   
  17:     public static SessionManager Current {
  18:   
  19:         get {
  20:   
  21:             HttpContext context = HttpContext.Current;
  22:   
  23:             SessionManager manager =
  24:   
  25:                 context.Session[ SESSION_MANAGER ] as SessionManager;
  26:   
  27:             if ( manager == null ) {
  28:   
  29:                 manager = new SessionManager( );
  30:   
  31:                 context.Session[ SESSION_MANAGER ] = manager;
  32:   
  33:             }
  34:   
  35:             return manager;
  36:   
  37:         }
  38:   
  39:     }
  40:   
  41:     public Product ActiveProduct {
  42:   
  43:         get {
  44:   
  45:             return this._product;
  46:   
  47:         }
  48:   
  49:         set {
  50:   
  51:             this._product = value;
  52:   
  53:         }
  54:   
  55:     }
  56:   
  57:  }
  58:   
  59:  //And to access this property
  60:  SessionManager.Current.ActiveProduct = new Product();

 

If you would like to see what others have implemented, see the article below:

Strongly-Typed Session in ASP.NET - Chris Stewart’s ASP.NET Blog

Until next time…

 

Happy Coding!

 

kick it on DotNetKicks.com


Dec 11 2007

Appreciating a good, well-designed API

Tag: .NET FrameworkTyrone @ 3:46 pm

I have been using the .NET Framework heavily since 2002, and sometimes I have to sit back an marvel at a good, well-designed the API. I say this because just today I had to write some code to write to the file system, and it’s remarkable how simple it is to create a text file and write information to it.  You can all do it in just 2 lines of code using the System.IO.File class. Simply put, this class is a façade (or a wrapper) around the classes in the .NET Framework that work together to provide access to the file system on a Windows machine.  All the methods are static (shared for VB.NET) and it provides the most common functionality that you would normally need from the file system. Here is a little code to show you what I mean:

 
   1:  using System;
   2:  using System.IO;
   3:  using System.Text;
   4:   
   5:  namespace SimpleFileWriter {
   6:      class Program {
   7:          static void Main( string[ ] args ) {
   8:              using (StreamWriter writer = File.CreateText( @"c:\temp\test.txt" ))
   9:                  writer.WriteLine( "Hello World!" );
  10:   
  11:          }
  12:      }
  13:  }
 
 

I have posted the entire program just for your reference; but only lines 8 and 9 are needed to write data to the file system.  You can find more information on the other members of the File class here. I’m sure this may not be new to some of you; but the intent of this post was to emphasize how a well-designed API goes a long way. Until next time…

Happy Coding!

 

kick it on DotNetKicks.com


Nov 16 2007

.NET and the Provider Model

Tag: .NET Framework, ASP.NETTyrone @ 11:42 pm

If you have been using the new features of the ASP.NET 2.0 web framework like Membership, Roles, SiteMap, Profiles and others, you have probably heard about the Provider Model. If not, have no fear, you have been using it all along.  The Provider Model is a set of API’s that were build into the .NET 2.0 Framework that gives both windows and web developers the ability to build applications that allow certain features/functionality to be replaced, at runtime, via the application’s configuration file.  The only requirement is that the new feature must implement all of the interfaces of the feature being replaced.  This is all done through a set of abstract classes.

Without going through much detail, Miguel Castro was a guest on DnrTV and he really goes into detail on a real word example ( Credit Card Processing ) on how you would use the Provider Model for this senario.  This was a really great show and it’s the real reason why I was encouraged to blog about this.

Happy Coding!

 

 

kick it on DotNetKicks.com