Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

Simple LINQ to SQL in C#

, 4 Jun 2008 CPOL
This article provides an introduction to employing LINQ to SQL within a Windows Forms application. The article will address the incorporation of LINQ to SQL into a WinForms project, how to use LINQ to SQL to select, insert, update, and delete data, and how to use LINQ to SQL to execute stored proced
l2s_northwind.zip
L2S_Northwind
L2S_Northwind
bin
Release
L2S_Northwind.exe
L2S_Northwind.csproj.user
NorthWindDataClasses.dbml
NorthWindDataClasses.dbml.layout
Properties
Settings.settings
<?xml version="1.0" encoding="utf-8"?>
<root>
  <!-- 
    Microsoft ResX Schema 
    
    Version 2.0
    
    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.
    
    Example:
    
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
                
    There are any number of "resheader" rows that contain simple 
    name/value pairs.
    
    Each data row contains a name, and value. The row also contains a 
    type or mimetype. Type corresponds to a .NET class that support 
    text/value conversion through the TypeConverter architecture. 
    Classes that don't support this are serialized and stored with the 
    mimetype set.
    
    The mimetype is used for serialized objects, and tells the 
    ResXResourceReader how to depersist the object. This is currently not 
    extensible. For a given mimetype the value must be set accordingly:
    
    Note - application/x-microsoft.net.object.binary.base64 is the format 
    that the ResXResourceWriter will generate, however the reader can 
    read any of the formats listed below.
    
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.

    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array 
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </metadata>
  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAABAAMAEBAAAAAAAABoAwAANgAAACAgAAAAAAAAqAwAAJ4DAAAwMAAAAAAAAKgcAABGEAAAKAAAABAA
        AAAgAAAAAQAYAAAAAABAAwAAAAAAAAAAAAAAAAAAAAAAAA4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4O
        Dg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODv1OAP92H/97Jf96JP96JP96JP96JP96JP96JP96JP96JP96
        JP96JP9wEw4ODg4ODv1bAP+AMP+CM/9+LP+DNP+DNP+DNP+FNf+FNf+FNf+FNf+FNf+FNf96JA4ODg4O
        Dv1bAP99Lv6fPv/De/+EKP+GJ/+HKP+CNP+FNf+FNf+FNf+FNf+FNf96JA4ODg4ODv1bAP96KP7Dff//
        //7nt/7pvv720/6FKP+DNP+FNf+FNf+FNf+FNf96JA4ODg4ODv1bAP9/L/6HLP7kpP////////7rx/2e
        I/9/M/+CNP+ENP+FNf+FNf96JA4ODg4ODv1bAP+AMP+CM/+EKP7QhP/////+/f2iKf6LLP6QLv+EMP+E
        NP+FNf96JA4ODg4ODv1bAP+AMP+FNf+BMv6EKf7jpP////7pxf7jsP7ltP68Xf93KP+ENP96JA4ODg4O
        Dv1bAP+AMP+FNf+FNf+AMv+IJv/rxP////////////////68W/+EMP96Iw4ODg4ODv1bAP+AMP+FNf+F
        Nf+CNP+OLv/jsP////vw3u7bwP39+/vpvv+QLv94Iw4ODg4ODv1bAP+AMP+FNf+FNf+CNP+QLv/ls///
        /+zYvNazg/f08f3ksv+PL/94Iw4ODg4ODv1bAP+AMP+FNf+FNf+ENP+EMP67XP7///v8/ff08f38+/7G
        XP+RLv95JA4ODg4ODv9dAP94I/99KP+FNf+FNf+FNf94Kf67Wv7ms/7ot/66X/6SJf+BNv97JA4ODg4O
        Dv9fAOOkduOmd/93Iv+AMP+AMP+AMP+ALP6MK/6MK/+ALP99Mf+AMP92Hw4ODg4ODv9MAPtgAvtjBv1Y
        AP1bAP1bAP1bAP1aAP1YAP1YAP1aAP1bAP1bAP1OAA4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4O
        Dg4ODg4ODg4ODg4ODg4ODg4ODg4ODgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAIAAAAEAAAAABABgAAAAAAIAMAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAEBAAAAXVtb19HS5ufn5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk
        5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4+Hn7+Dx5uXo19HSXVtbUlBQw72+
        z8/PzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzM
        zMzMzMzMzMzMzMzMzMnQ3OmvRvoz3NzHw7vAUlBQUlBQwry91NXU4ODg4eHh4eHh4eHh4eHh4eHh4eHh
        4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4d7l69vt1NPW
        wry9UlBQUlFRxb6/t7i4ODg4JSUlJSUlJSUlJSUlJSUlJSUlJycnJycnJycnJycnJycnJycnJycnJycn
        JycnJycnJycnJycnJycnJycnJiYmJSUlJSUlJSUlODg4t7i4xb6/UlFRUVFRycPEgoKCXVxc2NnY3d3d
        3d3d3d3d3d3d5ubm0NDQ0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0dHR1NTU4eHh
        3d3d2NnYXVxcgoKCycPEUVFRUlFSysTFhYaGZmZm8fDx+vr6/Pz8+/v7////uL/CfoOGg4iMg4iMg4iM
        g4iMg4iMg4iMg4iMg4iMg4iMg4iMg4iMg4iMf4CBvr6+7u7u/Pz88fDxZmZmhYaGysTFUlFSUlFSysTF
        hYaGZGRk7u3u+/v7//////////Lp/9a6/+fQ/+jR/+jR/+jR/+jR/+jR/+jR/+jR/+jR/+jR/+jR/+jR
        /+XL////ent87e3t/v7+7u3uZGRkhYaGysTFUlFSUlFSysTFhYaGYWFi5+fo9vb3/Pz8/P///sur/U4A
        /3Yf/3sl/3ok/3ok/3ok/3ok/3ok/3ok/3ok/3ok/3ok/3ok/3AT/+TMf4SH7Ozs+fn65+foYWFihYaG
        ysTFUlFSUlFQycPEhoaGX19g4uLj8PDw9/f39/3//tCz/VsA/4Aw/4Iz/34s/4M0/4M0/4M0/4U1/4U1
        /4U1/4U1/4U1/4U1/3ok/+jRf4SH6enp8/Pz4uLjX19ghoaGycPEUlFQUlFQycPEhoeGXVxe3d3f7Ozs
        8/Pz8vn9/9Cz/VsA/30u/p8+/8N7/4Qo/4Yn/4co/4I0/4U1/4U1/4U1/4U1/4U1/3ok/+jRf4SI5ubm
        7+/v3d3fXV1ehoeGycPEUlFQUlFRycPEhoeHXFxc2dnb6Ojp7+/v7vT4/9G0/VsA/3oo/sN9/////ue3
        /um+/vbT/oUo/4M0/4U1/4U1/4U1/4U1/3ok/+jRgIWI4+Pj6+vr2trbW1tchoeHycPEUlFRUlFSysTF
        hoeHW1tc1tbX5OTm7Ozs6vD0/9G0/VsA/38v/ocs/uSk/////////uvH/Z4j/38z/4I0/4Q0/4U1/4U1
        /3ok/+jRgIWI4eHh5+fo19fYWVlahoeHysTFUlFSUlFSysTFhoeHWVhZ0NHS39/f5eXl4unt/9K1/VsA
        /4Aw/4Iz/4Qo/tCE//////79/aIp/oss/pAu/4Qw/4Q0/4U1/3ok/+jRgIaJ3Nzb4ODhz8/QV1dYh4eH
        ysTFUlFSUlFSysTFh4eHV1dXzMzO29vb4eHh3uXp/9K1/VsA/4Aw/4U1/4Ey/oQp/uOk/////unF/uOw
        /uW0/rxd/3co/4Q0/3ok/+jRgYaJ2dnZ3d3dzMzMVVVWh4iHysTFUlFSUlFSysTFh4iHVVVVyMjK19fY
        3t7e2uDk/9O2/VsA/4Aw/4U1/4U1/4Ay/4gm/+vE/////////////////rxb/4Qw/3oj/+jRgYaJ1tbW
        2dnZyMjJU1NUh4iIysTFUlFSUlFSysTFh4iIU1NUxcXG09PU29va1t3h/9O2/VsA/4Aw/4U1/4U1/4I0
        /44u/+Ow////+/De7tvA/f37++m+/5Au/3gj/+jRgYeK1NTU1dXWxMTFUlJSh4iIysTFUlFSUlFSysTF
        h4iIUVFSv7/Bzs7P1dXV0dfb/9S3/VsA/4Aw/4U1/4U1/4I0/5Au/+Wz////7Ni81rOD9/Tx/eSy/48v
        /3gj/+jRgoeK0NDQz8/RwMDAT09QiIiIysTFUlFSUlFSysTFiIiIUFBQvLy9ysrL0dHRzNPX/9S3/VsA
        /4Aw/4U1/4U1/4Q0/4Qw/rtc/v//+/z99/Tx/fz7/sZc/5Eu/3kk/+jRgoeLzc3Ny8vMvLy8Tk5PiIiI
        ysTFUlFSUlFSysTFiIiITk5Pubi5xsbHzc3NyM7S/9e7/10A/3gj/30o/4U1/4U1/4U1/3gp/rta/uaz
        /ui3/rpf/pIl/4E2/3sk/+jRgoiLy8vLx8fIuLi5TExMiImJysTFUlFSUlFSysTFiImJTExMtbW2w8PD
        ycnJw8rO/9e7/18A46R246Z3/3ci/4Aw/4Aw/4Aw/4As/owr/owr/4As/30x/4Aw/3Yf/+bPg4iLyMjI
        xMPEtbW2SkpLiImJysTFUlFSUlFSysTFiImJSkpKtLK0wcDBxMTEvcPH/9K0/0wA+2AC+2MG/VgA/VsA
        /VsA/VsA/VoA/VgA/VgA/VoA/VsA/VsA/U4A/9u/goiMxcXFvr6+sK+wSEhIiYmJysTFUlFSUlFSysTF
        iImJS0pLvby9ysnKwcDBtbe5///8/9a3/9e6/9e5/9m8/9m8/9m9/9m9/9m9/9m9/9m9/9m9/9m9/9m9
        /9W1///9p6qrwL/Aubm5rq2uSEdIiYmJysTFUlFSUlFSysTFiImJSEdJx8fH0c/Qrq2uqqmqoaKloqes
        oqesoqesoqesoaesoaesoaesoaesoaesoaesoaesoaesoaaroaesoaKlq6qrqqmqqKeoo6KjRURFiYqK
        ysTFUlFSUlFSysTFhoaGQUFBnZucn5+gl5aXlpWWlZWWlZSWlZWWlZSWlZWWlZSVlJSVlJOUlJOVk5OU
        k5OUkpKTkpKTkpGTkpGSkZKTkpGSkZCRkJCRjo6PPD0+hoeHysTFUlFSUlFQxb/AsbCxODY3Ly8wLy8w
        MDAxLy8vMDAwLCwsKysrKysrKysrKCgoKSkpJiYmJCQlIiIiISEhHx4fHx8fHR0dHBscHBobHBsbHBsb
        HRsbHBoaKScosrKyxb/AUlFQVFNTxsDB1dTV0c/Q09HS09HS09HS1NLS09HS1NLS1NLS1NLS1NLS1NLS
        1NLS1NLT1dPT1dPT1dPT1dPT1dPT1dPU1dTU1dTU1dTU1dTU1dTU1dTU09HR1dTVxsDBVFNTT09Pnpuc
        sLGyr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+wr6+w
        r6+wr6+wr6+wr6+wr6+wr6+wr6+wsLGynpucT09PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAD///////////////8oAAAAMAAAAGAAAAABABgAAAAAAIAcAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ0NDOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
        OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
        OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5Q0NDAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAOTk5p6KjxL6/zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NxL6/p6KjOTk5OTk5p6KjxL6/zc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NxL6/
        p6KjOTk5OTk5p6KjxL6/zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3N1P+OAP8A1P+Ozc3NxL6/p6KjOTk5OTk5p6KjxL6/zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NxL6/p6KjOTk5OTk5p6Kj
        wby9zc3N1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX
        1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX
        1tbX1tbXzc3Nwby9p6KjOTk5OTk5qKOkwbu8zc3NOTk5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOTk5zc3Nwbu8qKOkOTk5OTk5pqGiwby9zc3NAAAAmpmZ
        tLS0wcHBw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PD
        w8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDwcHBtLS0mpmZAAAAzc3Nwby9
        pqGiOTk5OTk5qKOkwby9zc3NAAAArKys1dTV6Ojo7Ozs7e3t7e3t7e3t7e3t7e3t7e3ttra2tra2tra2
        tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra27e3t
        7e3t7Ozs6Ojo1dTVrKysAAAAzc3Nwby9qKOkOTk5OTk5qKOkwby9zc3NAAAAsbGx3t3e9fX1+/v7/f39
        /f39/f39/f39/f39hoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaG
        hoaGhoaGhoaGhoaGhoaGhoaGtra2tra2/f39+/v79fX13t3esbGxAAAAzc3Nwby9qKOkOTk5OTk5qKOk
        wby9zc3NAAAAr6+v3Nvc8/P0/Pz8/v7+////////////////////////////////////////////////
        ////////////////////////////////////////////////////////hoaGtra2/v7+/Pz88/P03Nvc
        r6+vAAAAzc3Nwby9qKOkOTk5OTk5qKOkwby9zc3NAAAArayt2NfY8PDx+vr6/f39/v7+/v7+////+18A
        /28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1
        /4U1////hoaGtra2/f39+vr68PDx2NfYraytAAAAzc3Nwby9qKOkOTk5OTk5qKOkwby9zc3NAAAAqqqr
        1NTV7Ozt9/f3+/v7/Pz8/Pz8////+18A/28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1
        /4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1////hoaGtra2+/v79/f37Ozt1NTVqqqrAAAAzc3Nwby9
        qKOkOTk5OTk5p6Kjwby9zc3NAAAAqKip0dHS6enp9PT0+Pj4+fn5+fn5////+18A/28c/3wr/4U1/4U1
        /4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1////hoaGtra2
        +Pj49PT06enp0dHSqKipAAAAzc3Nwby9p6KjOTk5OTk5p6Kjwby9zc3NAAAApqWmzs7P5ubm8fHx9fX1
        9vb29vb2////+18A/28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1
        /4U1/4U1/4U1/4U1/4U1////hoaGtra29fX18fHx5ubmzs7PpqWmAAAAzc3Nwby9p6KjOTk5OTk5p6Kj
        wby9zc3NAAAApKSly8vM4+Pj7u7u8vLy8/Pz8/Pz////+18A/28c/3wr/4U1/r9a/+O2/r9a/4U1/4U1
        /rRA/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1////hoaGtra28vLy7u7u4+Pjy8vM
        pKSlAAAAzc3Nwby9p6KjOTk5OTk5p6Kjwby9zc3NAAAAo6OkycnK4eHh7Ozs8PDw8fHx8fHx////+18A
        /28c/3wr/4U1/+K2/////////sBe/sBe/////r9a/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1
        /4U1////hoaGtra28PDw7Ozs4eHhycnKoqKjAAAAzc3Nwby9p6KjOTk5OTk5qKOkwr2+zc3NAAAAoqKj
        x8fI3t7f6enp7e3t7u7u7u7u////+18A/28c/3wr/4U1/r9a/+zQ/////////////////////rVB/4U1
        /4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1////hoaGtra27e3t6enp3t7fx8fIoaGhAAAAzc3Nwr2+
        qKOkOTk5OTk5qKOkwr2+zc3NAAAAoaGixcXG29vc5ubm6urq6+vr6+vr////+18A/28c/3wr/4U1/4U1
        /r9a/+zQ//37/////////sl0/q8z/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1/4U1////hoaGtra2
        6urq5ubm29vcxMTFnp6fAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAn56fwsLD2NjY4uLi5ubm
        5+fn5+fn////+18A/28c/3wr/4U1/4U1/4U1/r9a/+zQ//37//37/+vM/rZF/4U1/4U1/4U1/4U1/4U1
        /4U1/4U1/4U1/4U1/4U1////hoaGtra25ubm4uLi19fYwcHCnJydAAAAzc3Nwr2+qKOkOTk5OTk5qKOk
        wr2+zc3NAAAAnJydv7/A1dXV39/f4+Pj5OTk5OTk////+18A/28c/3wr/4U1/4U1/4U1/4U1/r9a/+zQ
        //37/////sJj/rhJ/rhJ/rhJ/rZF/4U1/4U1/4U1/4U1/4U1/4U1////hoaGtra24+Pj39/f1NTVvr6/
        mpmaAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAm5ubvLy90tLS3Nzc4ODg4eHh4eHh////+18A
        /28c/3wr/4U1/4U1/4U1/4U1/4U1/r9a/+zQ//z3//////Ph//Ph//Ph/+vM/r9a/4U1/4U1/4U1/4U1
        /4U1////hoaGtra24ODg3Nzc0tLSu7u8mJiZAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAmZmZ
        urq70NDQ2tra3t7e39/f39/f////+18A/28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1/sBe////////////
        ///+//79//36/+zQ/r9Z/4U1/4U1/4U1/4U1////hoaGtra23t7e2tra0NDQubm6lpaXAAAAzc3Nwr2+
        qKOkOTk5OTk5qKOkwr2+zc3NAAAAl5eYuLi5zc3O2NjY3Nzc3d3d3d3d////+18A/28c/3wr/4U1/4U1
        /4U1/4U1/4U1/4U1/rhJ//Ph//////79/////////////vr1/+rL/rZF/4U1/4U1/4U1////hoaGtra2
        3Nzc2NjYzc3Ot7e4lZWVAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAlZWWtbW2ysrL1dXV2dnZ
        2tra2tra////+18A/28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1/rhJ//Ph///+////9N665cqo9N66////
        +vXs/rhJ/4U1/4U1/4U1////hoaGtra22dnZ1dXVysrLtLS1k5OTAAAAzc3Nwr2+qKOkOTk5OTk5qKOk
        wr2+zc3NAAAAk5OUsrKzx8fI0tLS1tbW19fX19fX////+18A/28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1
        /rhJ//Ph//79////5cqo2buR5cqo/////fDb/rhJ/4U1/4U1/4U1////hoaGtra21tbW0tLSx8fIsrKy
        kJCRAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAkZGRr6+wxMTFz8/P09PT1NTU1NTU////+18A
        /28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1/rZF/+vL/vv2////7NOv5cqo7NOu/////unJ/rZF/4U1/4U1
        /4U1////hoaGtra209PTz8/PxMTFr6+vjo6PAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAkJCQ
        ra2uwcHCzMzM0NDQ0dHR0dHR////+18A/28c/3wr/4U1/4U1/4U1/4U1/4U1/4U1/4U1/r5Z/urL////
        /////////////enK/r5Z/q4v/4U1/4U1/4U1////hoaGtra20NDQzMzMwcHCrKytjY2OAAAAzc3Nwr2+
        qKOkOTk5OTk5qKOkwr2+zc3NAAAAjo6Oq6usv7/AysrKzs7Oz8/Pz8/P/////2UJ/28c/3wr/4U1/4U1
        /4U1/4U1/4U1/4U1/4U1/4U1/r5Y/ujE/vHe/vLf/urL/r5a/q4v/4U1/4U1/4U1/4U1////hoaGtra2
        zs7OysrKv7/Aqqqri4uMAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAjIyNqamqvby9x8fHy8vL
        zMzMzMzM/////2cL/3Mi/3ws6YtG/4s8/4s8/4U1/4U1/4U1/4U1/4U1/4U1/rVF/rhJ/rhJ/rZF/4U1
        /4U1/4U1/4U1/4U1/4U1////hoaGtra2y8vLx8fHvby9qKipiYmKAAAAzc3Nwr2+qKOkOTk5OTk5qKOk
        wr2+zc3NAAAAioqKp6anurq7xMTEyMjIycnJycnJ/////2cL/3Mi6YtG19fX6YtG/4Ay/3wr/3wr/3wr
        /3wr/3wr/3wr/3wr/3wr/3wr/3wr/3wr/3wr/3wr/3wr/3wr/3wr////hoaGtra2yMjIxMTEurm6pqWm
        iIeIAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAiYiJpaSlurm6w8LDxcXFxsbGxsbG/////2QJ
        /28a/28a6YtG/3Mi/3Mi/28c/28c/28c/28c/28c/28c/28c/28c/28c/28c/28c/28c/28c/28c/28c
        /28c////hoaGtra2xcXFwcHBt7a3o6KjhoaGAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAiIiJ
        qKeov76/xMTEw8PDwsHCwcHB/////2EC/2EC/2EC/2EC/2EC/2EC+18A+18A+18A+18A+18A+18A+18A
        +18A+18A+18A+18A+18A+18A+18A+18A+18A////hoaGwcHBwMDAvb29tbS1oaChhYSFAAAAzc3Nwr2+
        qKOkOTk5OTk5qKOkwr2+zc3NAAAAiomKrq6uyMfIycnJwMDAvLu8urq6////////////////////////
        ////////////////////////////////////////////////////////////////////////urq6urq6
        urm6t7e3sbCxn56fhIOEAAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAiYmKrq2u7u7uxcTFuLi5
        sbCxr6+vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66vr66v
        r66vr66vr66vr66vr66vr66vr66vr66vr66vra2tqaipmpmagYCBAAAAzc3Nwr2+qKOkOTk5OTk5qKOk
        wr2+zc3NAAAAgYCBnZydr66vraytpKOkn56fnp2enp2enp2enp2enp2enp2enp2enp2enZ2enZyenZyd
        nZydnZydnZydnZydnZydnZydnZydnJydnJydnJudnJucnJucnJucnJucnJucnJucnJucm5qbmZiZjYyN
        enl6AAAAzc3Nwr2+qKOkOTk5OTk5qKOkwr2+zc3NAAAAd3Z3hoWGkI+Qj4+QjIuMiomKiomKiYmKiYiJ
        iIiJiIiJiIeJiIeJiIiJiIeIiIeIh4eIh4aHh4aHhoaHhoWGhYWGhYWGhYSFhISFhISFhISFhIOFhIOE
        g4OEg4OEg4KDgoKDgoGCgoGCgICBeXh5bm5vAAAAzc3Nwr2+qKOkOTk5OTk5p6Kjwby9zc3NOTk5GRsb
        GRsbGRsbGRsbGRsbGRsbFhgYGRsbFhgYExUVExUVEBISExUVExUVEBISDxEREBISDQ8PCw0NCw0NCAoK
        BwkJBwkJAwUFAwUFAwUFAwUFAAICAAEBAAEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOTk5zc3Nwby9
        p6KjOTk5OTk5p6Kjwr2+zc3NqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSl
        qaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSlqaSl
        qaSlqaSlqaSlqaSlqaSlqaSlzc3Nwr2+p6KjOTk5OTk5qaSlwLq7zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N
        zc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NwLq7qaSlOTk5OTk5pqSk
        xL/A1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX
        1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX1tbX
        1tbX1tbX1tbXxL/ApqSkOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
        OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
        OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5AAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAA//////////+AAAAAAAH//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAA
        AAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA
        //8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAA
        AAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA
        //8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAA
        AAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA
        //8AAAAAAAD/////////////////////////////////////////////
</value>
  </data>
</root>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

salysle
Software Developer (Senior)
United States United States
No Biography provided

| Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.141220.1 | Last Updated 4 Jun 2008
Article Copyright 2008 by salysle
Everything else Copyright © CodeProject, 1999-2014
Layout: fixed | fluid