<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>SQL Server, SQL Server Express, and SqlDataSource Control</title><link>http://forums.asp.net/54.aspx</link><description>All about SQL Server, SQL Server Express, MSDE, and the SqlDataSource control.</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1984108.aspx</link><pubDate>Wed, 31 Oct 2007 23:13:07 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1984108</guid><dc:creator>Stevishere</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1984108.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1984108</wfw:commentRss><description>&lt;p&gt;Did you ever get this worked out?&lt;/p&gt;
&lt;p&gt;I am having the same issue!&amp;nbsp; I must have overlooked this post before I made mine a few minutes ago.&lt;/p&gt;
&lt;p&gt;Did you try manually entering data through the table in SSMS?&amp;nbsp; I found it had nothing to do with classes or page code.&amp;nbsp; I cannot even enter it manually!&lt;/p&gt;
&lt;p&gt;PLease advise if you found an answer.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;</description></item><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1650628.aspx</link><pubDate>Wed, 04 Apr 2007 05:47:12 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1650628</guid><dc:creator>busyweb</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1650628.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1650628</wfw:commentRss><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;what/where is the function GetColumnValue, SetColumnValue ???&lt;/p&gt;
&lt;p&gt;&lt;span class=kwd&gt;&lt;font color=#0000ff&gt;Public Property&lt;/font&gt;&lt;/span&gt; OrderID &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;As&lt;/font&gt;&lt;/span&gt; Guid&lt;br /&gt;&lt;font color=#008080&gt;152&amp;nbsp; &lt;/font&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;Get&lt;br /&gt;&lt;/font&gt;&lt;font color=#008080&gt;153&amp;nbsp; &lt;/font&gt;&lt;font color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim&lt;/font&gt;&lt;/span&gt; result &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;As Object&lt;/font&gt;&lt;/span&gt; = &lt;strong&gt;&lt;span class=kwd&gt;&lt;font color=#0000ff&gt;Me&lt;/font&gt;&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;&lt;font color=#ff0000&gt;"OrderID"&lt;/font&gt;&lt;/span&gt;)&lt;/strong&gt;&lt;br /&gt;&lt;font color=#008080&gt;154&amp;nbsp; &lt;/font&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;Dim&lt;/font&gt;&lt;/span&gt; oOut &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;As&lt;/font&gt;&lt;/span&gt; Guid=Guid.Empty &lt;font color=#008080&gt;155&amp;nbsp; &lt;/font&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;Try&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;font color=#008080&gt;156&amp;nbsp; &lt;/font&gt;oOut= &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;New&lt;/font&gt;&lt;/span&gt; Guid(result.ToString())&lt;br /&gt;&lt;font color=#008080&gt;157&amp;nbsp; &lt;/font&gt;&lt;span class=kwd&gt;&lt;font color=#0000ff&gt;Catch&lt;br /&gt;&lt;/font&gt;&lt;font color=#008080&gt;158&amp;nbsp; &lt;/font&gt;&lt;font color=#0000ff&gt;End Try&lt;br /&gt;&lt;/font&gt;&lt;font color=#008080&gt;159&amp;nbsp; &lt;/font&gt;&lt;font color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return&lt;/font&gt;&lt;/span&gt; oOut&lt;br /&gt;&lt;font color=#008080&gt;160&amp;nbsp; &lt;/font&gt;&lt;br /&gt;&lt;font color=#008080&gt;161&amp;nbsp; &lt;/font&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;End Get&lt;br /&gt;&lt;/font&gt;&lt;font color=#008080&gt;162&amp;nbsp; &lt;/font&gt;&lt;font color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set&lt;br /&gt;&lt;/font&gt;&lt;font color=#008080&gt;163&amp;nbsp; &lt;/font&gt;&lt;font color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me&lt;/font&gt;&lt;/span&gt;.MarkDirty()&lt;br /&gt;&lt;font color=#008080&gt;164&amp;nbsp; &lt;/font&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;&lt;span class=kwd&gt;&lt;font color=#0000ff&gt;Me&lt;/font&gt;&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;&lt;font color=#ff0000&gt;"OrderID"&lt;/font&gt;&lt;/span&gt;, Value)&lt;br /&gt;&lt;/strong&gt;&lt;font color=#008080&gt;165&amp;nbsp; &lt;/font&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;&lt;font color=#0000ff&gt;End Set&lt;br /&gt;&lt;/font&gt;&lt;font color=#008080&gt;166&amp;nbsp; &lt;/font&gt;&lt;font color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;</description></item><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1650571.aspx</link><pubDate>Wed, 04 Apr 2007 05:04:43 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1650571</guid><dc:creator>madkidd</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1650571.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1650571</wfw:commentRss><description>&lt;p&gt;Same thing. And here is my updated code:&amp;nbsp;&lt;pre class=coloredcode&gt;    &lt;span class=kwd&gt;Protected Sub&lt;/span&gt; btnCheckout_Click(&lt;span class=kwd&gt;ByVal&lt;/span&gt; sender &lt;span class=kwd&gt;As Object&lt;/span&gt;, &lt;span class=kwd&gt;ByVal&lt;/span&gt; e &lt;span class=kwd&gt;As&lt;/span&gt; System.EventArgs) &lt;span class=kwd&gt;Handles&lt;/span&gt; btnCheckout.Click
        &lt;span class=kwd&gt;Dim&lt;/span&gt; CartID &lt;span class=kwd&gt;As Integer&lt;/span&gt; = Session(&lt;span class=st&gt;"CartID"&lt;/span&gt;)
        &lt;span class=kwd&gt;Dim&lt;/span&gt; OrderID &lt;span class=kwd&gt;As&lt;/span&gt; Guid = System.Guid.NewGuid()

        &lt;span class=kwd&gt;Dim&lt;/span&gt; cOrder &lt;span class=kwd&gt;As&lt;/span&gt; OnlineOrder = &lt;span class=kwd&gt;New&lt;/span&gt; OnlineOrder
        cOrder.OrderID = &lt;span class=kwd&gt;New&lt;/span&gt; Guid(OrderID.ToByteArray)
        cOrder.CartID = CartID
        cOrder.Status = &lt;span class=st&gt;"PEND"&lt;/span&gt;
        cOrder.PromoCode = &lt;span class=st&gt;"NONE"&lt;/span&gt;
        cOrder.Timestamp = &lt;span class=kwd&gt;Date&lt;/span&gt;.Now
        cOrder.CardTypeID = ddCardType.SelectedValue
        cOrder.CardNumber = Outman.Utility.QuickEncrypt(CardNumber.Text.Trim)
        cOrder.CardExp = ExpirationDate.Text
        cOrder.CardVerification = Outman.Utility.QuickEncrypt(CardVerification.Text)
        cOrder.Save()

        &lt;span class=kwd&gt;Dim&lt;/span&gt; sContact &lt;span class=kwd&gt;As&lt;/span&gt; Contact = &lt;span class=kwd&gt;New&lt;/span&gt; Contact()
        sContact.OrderID = &lt;span class=kwd&gt;New&lt;/span&gt; Guid(OrderID.ToByteArray)
        sContact.Type = &lt;span class=st&gt;"SHIP"&lt;/span&gt;
        sContact.FirstName = sFirstName.Text.Trim
        sContact.LastName = sLastName.Text.Trim
        sContact.Company = sCompany.Text.Trim
        sContact.Address = sAddress.Text.Trim
        sContact.City = sCity.Text.Trim
        sContact.StateID = sState.SelectedValue
        sContact.ZipCode = sZipCode.Text.Trim
        sContact.Phone = sPhone.Text.Trim
        sContact.Email = sEmail.Text.Trim
        sContact.Save()

        &lt;span class=kwd&gt;Dim&lt;/span&gt; bContact &lt;span class=kwd&gt;As&lt;/span&gt; Contact = &lt;span class=kwd&gt;New&lt;/span&gt; Contact()
        bContact.OrderID = &lt;span class=kwd&gt;New&lt;/span&gt; Guid(OrderID.ToByteArray)
        bContact.Type = &lt;span class=st&gt;"BILL"&lt;/span&gt;
        bContact.FirstName = bFirstName.Text.Trim
        bContact.LastName = bLastName.Text.Trim
        bContact.Company = bCompany.Text.Trim
        bContact.Address = bAddress.Text.Trim
        bContact.City = bCity.Text.Trim
        bContact.StateID = bState.SelectedValue
        bContact.ZipCode = bZipCode.Text.Trim
        bContact.Phone = bPhone.Text.Trim
        bContact.Email = bEmail.Text.Trim
        bContact.Save()

        &lt;span class=kwd&gt;Dim&lt;/span&gt; cCart &lt;span class=kwd&gt;As&lt;/span&gt; Cart = &lt;span class=kwd&gt;New&lt;/span&gt; Cart(CartID)
        cCart.Status = &lt;span class=st&gt;"PEND"&lt;/span&gt;
        cCart.Save()

        Session.Add(&lt;span class=st&gt;"CartID"&lt;/span&gt;, Outman.ShoppingCart.Create)

        CartDisplay.Visible = &lt;span class=kwd&gt;False&lt;/span&gt;
        CheckoutComplete.Visible = &lt;span class=kwd&gt;True

    End Sub&lt;/span&gt;&lt;/pre&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1650561.aspx</link><pubDate>Wed, 04 Apr 2007 04:53:05 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1650561</guid><dc:creator>busyweb</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1650561.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1650561</wfw:commentRss><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;problem seems to me is OrderID, as trace said.&lt;/p&gt;
&lt;p&gt;is Save function destroy all properties(including orderid)&amp;nbsp;of the Object? (i don't see on above code, but suspicious)&lt;/p&gt;
&lt;p&gt;try to this ??&lt;/p&gt;
&lt;p&gt;first create a new guid:&lt;/p&gt;
&lt;p&gt;dim orderID as guid = new system.guid.newguid()&lt;/p&gt;
&lt;p&gt;for others create new guid from orderID, each may need to have new guid with same value&lt;/p&gt;
&lt;p&gt;obj.OrderID = new guid(orderID.tobytearray)&lt;/p&gt;
&lt;p&gt;Not sure, but try it. (debug: and see if OrderID value stays after Save function call)&lt;/p&gt;</description></item><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1650379.aspx</link><pubDate>Wed, 04 Apr 2007 00:44:58 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1650379</guid><dc:creator>madkidd</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1650379.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1650379</wfw:commentRss><description>&lt;p&gt;Hopefully this has what you are looking for:&lt;/p&gt;&lt;pre class=coloredcode&gt;&lt;b id=1&gt;1    &lt;/b&gt;&lt;span class=kwd&gt;using&lt;/span&gt; System;
&lt;b id=2&gt;2    &lt;/b&gt;&lt;span class=kwd&gt;using&lt;/span&gt; System.Data;
&lt;b id=3&gt;3    &lt;/b&gt;&lt;span class=kwd&gt;using&lt;/span&gt; SubSonic.Utilities;
&lt;b id=4&gt;4    &lt;/b&gt;&lt;span class=kwd&gt;using&lt;/span&gt; System.Text;
&lt;b id=5&gt;5    &lt;/b&gt;&lt;span class=kwd&gt;namespace&lt;/span&gt; SubSonic
&lt;b id=6&gt;6    &lt;/b&gt;{
&lt;b id=7&gt;7    &lt;/b&gt;
&lt;b id=8&gt;8    &lt;/b&gt;    &lt;span class=kwd&gt;public abstract class&lt;/span&gt; ActiveRecord : AbstractRecord where T : AbstractRecord, &lt;span class=kwd&gt;new&lt;/span&gt;()
&lt;b id=9&gt;9    &lt;/b&gt;    {
&lt;b id=10&gt;10   &lt;/b&gt;        &lt;span class=kwd&gt;public&lt;/span&gt; ActiveRecord()
&lt;b id=11&gt;11   &lt;/b&gt;        {
&lt;b id=12&gt;12   &lt;/b&gt;            MarkNew();
&lt;b id=13&gt;13   &lt;/b&gt;        }
&lt;b id=14&gt;14   &lt;/b&gt;        
&lt;b id=15&gt;15   &lt;/b&gt;        &lt;span class=kwd&gt;#region&lt;/span&gt;&lt;span class=kwdt&gt; CommandMethods&lt;/span&gt;
&lt;b id=16&gt;16   &lt;/b&gt;
&lt;b id=17&gt;17   &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=18&gt;18   &lt;/b&gt;        /// Made Public for use with transactions
&lt;b id=19&gt;19   &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=20&gt;20   &lt;/b&gt;        /// &amp;lt;param name="userName"&amp;gt;&amp;lt;/param&amp;gt;
&lt;b id=21&gt;21   &lt;/b&gt;        /// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=22&gt;22   &lt;/b&gt;        &lt;span class=kwd&gt;public&lt;/span&gt; QueryCommand GetInsertCommand(&lt;span class=kwd&gt;string&lt;/span&gt; userName)
&lt;b id=23&gt;23   &lt;/b&gt;        {
&lt;b id=24&gt;24   &lt;/b&gt;            Query q = &lt;span class=kwd&gt;new&lt;/span&gt; Query(table);
&lt;b id=25&gt;25   &lt;/b&gt;            q.QueryType = QueryType.Insert;
&lt;b id=26&gt;26   &lt;/b&gt;            QueryCommand cmd = &lt;span class=kwd&gt;new&lt;/span&gt; QueryCommand(DataService.GetSql(q));
&lt;b id=27&gt;27   &lt;/b&gt;
&lt;b id=28&gt;28   &lt;/b&gt;            &lt;span class=cmt&gt;//loop the Columns and addin the params&lt;/span&gt;
&lt;b id=29&gt;29   &lt;/b&gt;
&lt;b id=30&gt;30   &lt;/b&gt;            &lt;span class=kwd&gt;foreach&lt;/span&gt; (TableSchema.TableColumn column &lt;span class=kwd&gt;in&lt;/span&gt; table.Columns)
&lt;b id=31&gt;31   &lt;/b&gt;            {
&lt;b id=32&gt;32   &lt;/b&gt;                &lt;span class=kwd&gt;if&lt;/span&gt; (!column.AutoIncrement)
&lt;b id=33&gt;33   &lt;/b&gt;                {
&lt;b id=34&gt;34   &lt;/b&gt;                    &lt;span class=kwd&gt;object&lt;/span&gt; oVal;
&lt;b id=35&gt;35   &lt;/b&gt;                    &lt;span class=kwd&gt;if&lt;/span&gt; (Utility.IsMatch(column.ColumnName, ReservedColumnName.CREATED_BY) || Utility.IsMatch(column.ColumnName, ReservedColumnName.MODIFIED_BY))
&lt;b id=36&gt;36   &lt;/b&gt;                    {
&lt;b id=37&gt;37   &lt;/b&gt;                        oVal = userName;
&lt;b id=38&gt;38   &lt;/b&gt;                    }
&lt;b id=39&gt;39   &lt;/b&gt;                    &lt;span class=kwd&gt;else if&lt;/span&gt; (Utility.IsMatch(column.ColumnName, ReservedColumnName.CREATED_ON) || Utility.IsMatch(column.ColumnName, ReservedColumnName.MODIFIED_ON))
&lt;b id=40&gt;40   &lt;/b&gt;                    {
&lt;b id=41&gt;41   &lt;/b&gt;                        oVal = DateTime.Now;
&lt;b id=42&gt;42   &lt;/b&gt;                    }
&lt;b id=43&gt;43   &lt;/b&gt;                    &lt;span class=kwd&gt;else&lt;/span&gt;
&lt;b id=44&gt;44   &lt;/b&gt;                    {
&lt;b id=45&gt;45   &lt;/b&gt;                        oVal = GetColumnValue(column.ColumnName);
&lt;b id=46&gt;46   &lt;/b&gt;
&lt;b id=47&gt;47   &lt;/b&gt;                        &lt;span class=cmt&gt;//if the value is a boolean, it can be read improperly
&lt;b id=48&gt;48   &lt;/b&gt;                        //reset to 0 or 1&lt;/span&gt;
&lt;b id=49&gt;49   &lt;/b&gt;                        &lt;span class=kwd&gt;if&lt;/span&gt; (oVal != &lt;span class=kwd&gt;null&lt;/span&gt;)
&lt;b id=50&gt;50   &lt;/b&gt;                        {
&lt;b id=51&gt;51   &lt;/b&gt;                            &lt;span class=kwd&gt;if&lt;/span&gt; (Utility.IsMatch(oVal.ToString(), &lt;span class=st&gt;"false"&lt;/span&gt;))
&lt;b id=52&gt;52   &lt;/b&gt;                            {
&lt;b id=53&gt;53   &lt;/b&gt;                                oVal = 0;
&lt;b id=54&gt;54   &lt;/b&gt;                            }
&lt;b id=55&gt;55   &lt;/b&gt;                            &lt;span class=kwd&gt;else if&lt;/span&gt; (Utility.IsMatch(oVal.ToString(), &lt;span class=st&gt;"true"&lt;/span&gt;))
&lt;b id=56&gt;56   &lt;/b&gt;                            {
&lt;b id=57&gt;57   &lt;/b&gt;                                oVal = 1;
&lt;b id=58&gt;58   &lt;/b&gt;                            }
&lt;b id=59&gt;59   &lt;/b&gt;                        }
&lt;b id=60&gt;60   &lt;/b&gt;                    }
&lt;b id=61&gt;61   &lt;/b&gt;                    &lt;span class=kwd&gt;if&lt;/span&gt; (oVal == &lt;span class=kwd&gt;null&lt;/span&gt;)
&lt;b id=62&gt;62   &lt;/b&gt;                    {
&lt;b id=63&gt;63   &lt;/b&gt;                        oVal = DBNull.Value;
&lt;b id=64&gt;64   &lt;/b&gt;                    }
&lt;b id=65&gt;65   &lt;/b&gt;                    cmd.Parameters.Add(&lt;span class=st&gt;"@"&lt;/span&gt; + column.ColumnName, oVal, column.DataType);
&lt;b id=66&gt;66   &lt;/b&gt;                }
&lt;b id=67&gt;67   &lt;/b&gt;            }
&lt;b id=68&gt;68   &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; cmd;
&lt;b id=69&gt;69   &lt;/b&gt;        }
&lt;b id=70&gt;70   &lt;/b&gt;        
&lt;b id=71&gt;71   &lt;/b&gt;        &lt;span class=kwd&gt;public&lt;/span&gt; QueryCommand GetUpdateCommand(&lt;span class=kwd&gt;string&lt;/span&gt; userName)
&lt;b id=72&gt;72   &lt;/b&gt;        {
&lt;b id=73&gt;73   &lt;/b&gt;            Query q = &lt;span class=kwd&gt;new&lt;/span&gt; Query(table);
&lt;b id=74&gt;74   &lt;/b&gt;            q.QueryType = QueryType.Update;
&lt;b id=75&gt;75   &lt;/b&gt;            QueryCommand cmd = &lt;span class=kwd&gt;new&lt;/span&gt; QueryCommand(DataService.GetSql(q));
&lt;b id=76&gt;76   &lt;/b&gt;
&lt;b id=77&gt;77   &lt;/b&gt;            &lt;span class=cmt&gt;//loop the Columns and addin the params&lt;/span&gt;
&lt;b id=78&gt;78   &lt;/b&gt;            &lt;span class=kwd&gt;foreach&lt;/span&gt; (TableSchema.TableColumn column &lt;span class=kwd&gt;in&lt;/span&gt; table.Columns)
&lt;b id=79&gt;79   &lt;/b&gt;            {
&lt;b id=80&gt;80   &lt;/b&gt;                &lt;span class=kwd&gt;object&lt;/span&gt; oVal;
&lt;b id=81&gt;81   &lt;/b&gt;                &lt;span class=kwd&gt;if&lt;/span&gt; (Utility.IsMatch(column.ColumnName, ReservedColumnName.MODIFIED_BY))
&lt;b id=82&gt;82   &lt;/b&gt;                {
&lt;b id=83&gt;83   &lt;/b&gt;                    oVal = userName;
&lt;b id=84&gt;84   &lt;/b&gt;                }
&lt;b id=85&gt;85   &lt;/b&gt;                &lt;span class=kwd&gt;else if&lt;/span&gt; (Utility.IsMatch(column.ColumnName, ReservedColumnName.MODIFIED_ON))
&lt;b id=86&gt;86   &lt;/b&gt;                {
&lt;b id=87&gt;87   &lt;/b&gt;                    oVal = DateTime.Now;
&lt;b id=88&gt;88   &lt;/b&gt;                }
&lt;b id=89&gt;89   &lt;/b&gt;                &lt;span class=kwd&gt;else&lt;/span&gt;
&lt;b id=90&gt;90   &lt;/b&gt;                {
&lt;b id=91&gt;91   &lt;/b&gt;                    oVal = GetColumnValue(column.ColumnName);
&lt;b id=92&gt;92   &lt;/b&gt;                }
&lt;b id=93&gt;93   &lt;/b&gt;                &lt;span class=kwd&gt;if&lt;/span&gt; (oVal == &lt;span class=kwd&gt;null&lt;/span&gt;)
&lt;b id=94&gt;94   &lt;/b&gt;                {
&lt;b id=95&gt;95   &lt;/b&gt;                    oVal = DBNull.Value;
&lt;b id=96&gt;96   &lt;/b&gt;                }
&lt;b id=97&gt;97   &lt;/b&gt;                cmd.Parameters.Add(&lt;span class=st&gt;"@"&lt;/span&gt; + column.ColumnName, oVal,column.DataType);
&lt;b id=98&gt;98   &lt;/b&gt;            }
&lt;b id=99&gt;99   &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; cmd;
&lt;b id=100&gt;100  &lt;/b&gt;        }
&lt;b id=101&gt;101  &lt;/b&gt;        
&lt;b id=102&gt;102  &lt;/b&gt;        &lt;span class=kwd&gt;public static&lt;/span&gt; QueryCommand GetDeleteCommand(&lt;span class=kwd&gt;object&lt;/span&gt; keyID)
&lt;b id=103&gt;103  &lt;/b&gt;        {
&lt;b id=104&gt;104  &lt;/b&gt;            Query q = &lt;span class=kwd&gt;new&lt;/span&gt; Query(table);
&lt;b id=105&gt;105  &lt;/b&gt;            q.QueryType = QueryType.Delete;
&lt;b id=106&gt;106  &lt;/b&gt;            q.AddWhere(table.PrimaryKey.ColumnName, keyID);
&lt;b id=107&gt;107  &lt;/b&gt;
&lt;b id=108&gt;108  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DataService.BuildCommand(q);
&lt;b id=109&gt;109  &lt;/b&gt;        }
&lt;b id=110&gt;110  &lt;/b&gt;        
&lt;b id=111&gt;111  &lt;/b&gt;        &lt;span class=kwd&gt;public static&lt;/span&gt; QueryCommand GetDeleteCommand(&lt;span class=kwd&gt;string&lt;/span&gt; columnName, &lt;span class=kwd&gt;object&lt;/span&gt; oValue)
&lt;b id=112&gt;112  &lt;/b&gt;        {
&lt;b id=113&gt;113  &lt;/b&gt;            Query q = &lt;span class=kwd&gt;new&lt;/span&gt; Query(table);
&lt;b id=114&gt;114  &lt;/b&gt;            q.QueryType = QueryType.Delete;
&lt;b id=115&gt;115  &lt;/b&gt;            q.AddWhere(columnName, oValue);
&lt;b id=116&gt;116  &lt;/b&gt;
&lt;b id=117&gt;117  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DataService.BuildCommand(q);
&lt;b id=118&gt;118  &lt;/b&gt;        }
&lt;b id=119&gt;119  &lt;/b&gt;
&lt;b id=120&gt;120  &lt;/b&gt;        &lt;span class=kwd&gt;#endregion
&lt;b id=121&gt;121  &lt;/b&gt;
&lt;b id=122&gt;122  &lt;/b&gt;       
&lt;b id=123&gt;123  &lt;/b&gt;        #region&lt;/span&gt;&lt;span class=kwdt&gt; Persistence&lt;/span&gt;
&lt;b id=124&gt;124  &lt;/b&gt;
&lt;b id=125&gt;125  &lt;/b&gt;        &lt;span class=kwd&gt;protected virtual void&lt;/span&gt; PreUpdate()
&lt;b id=126&gt;126  &lt;/b&gt;        {
&lt;b id=127&gt;127  &lt;/b&gt;        }
&lt;b id=128&gt;128  &lt;/b&gt;
&lt;b id=129&gt;129  &lt;/b&gt;        &lt;span class=kwd&gt;protected virtual void&lt;/span&gt; PostUpdate()
&lt;b id=130&gt;130  &lt;/b&gt;        {
&lt;b id=131&gt;131  &lt;/b&gt;        }
&lt;b id=132&gt;132  &lt;/b&gt;
&lt;b id=133&gt;133  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=134&gt;134  &lt;/b&gt;        /// Saves this object's state to the selected Database.
&lt;b id=135&gt;135  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;b id=136&gt;136  &lt;/b&gt;        &lt;span class=kwd&gt;public void&lt;/span&gt; Save()
&lt;b id=137&gt;137  &lt;/b&gt;        {
&lt;b id=138&gt;138  &lt;/b&gt;            Save(String.Empty);
&lt;b id=139&gt;139  &lt;/b&gt;        }
&lt;b id=140&gt;140  &lt;/b&gt;
&lt;b id=141&gt;141  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=142&gt;142  &lt;/b&gt;        /// Saves this object's state to the selected Database.
&lt;b id=143&gt;143  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=144&gt;144  &lt;/b&gt;        /// &amp;lt;param name="userID"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;b id=145&gt;145  &lt;/b&gt;        &lt;span class=kwd&gt;public void&lt;/span&gt; Save(&lt;span class=kwd&gt;int&lt;/span&gt; userID)
&lt;b id=146&gt;146  &lt;/b&gt;        {
&lt;b id=147&gt;147  &lt;/b&gt;            Save(userID.ToString());
&lt;b id=148&gt;148  &lt;/b&gt;        }
&lt;b id=149&gt;149  &lt;/b&gt;
&lt;b id=150&gt;150  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=151&gt;151  &lt;/b&gt;        /// Saves this object's state to the selected Database.
&lt;b id=152&gt;152  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=153&gt;153  &lt;/b&gt;        /// &amp;lt;param name="userID"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;b id=154&gt;154  &lt;/b&gt;        &lt;span class=kwd&gt;public void&lt;/span&gt; Save(Guid userID)
&lt;b id=155&gt;155  &lt;/b&gt;        {
&lt;b id=156&gt;156  &lt;/b&gt;            &lt;span class=kwd&gt;string&lt;/span&gt; sUserID = &lt;span class=kwd&gt;string&lt;/span&gt;.Empty;
&lt;b id=157&gt;157  &lt;/b&gt;            &lt;span class=kwd&gt;if&lt;/span&gt; (userID!= &lt;span class=kwd&gt;null&lt;/span&gt;)
&lt;b id=158&gt;158  &lt;/b&gt;                sUserID = userID.ToString();
&lt;b id=159&gt;159  &lt;/b&gt;
&lt;b id=160&gt;160  &lt;/b&gt;            Save(sUserID);
&lt;b id=161&gt;161  &lt;/b&gt;        }
&lt;b id=162&gt;162  &lt;/b&gt;
&lt;b id=163&gt;163  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=164&gt;164  &lt;/b&gt;        /// Saves this object's state to the selected Database.
&lt;b id=165&gt;165  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=166&gt;166  &lt;/b&gt;        /// &amp;lt;param name="userName"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;b id=167&gt;167  &lt;/b&gt;        &lt;span class=kwd&gt;public void&lt;/span&gt; Save(&lt;span class=kwd&gt;string&lt;/span&gt; userName)
&lt;b id=168&gt;168  &lt;/b&gt;        {
&lt;b id=169&gt;169  &lt;/b&gt;            PreUpdate();
&lt;b id=170&gt;170  &lt;/b&gt;
&lt;b id=171&gt;171  &lt;/b&gt;            QueryCommand cmd;
&lt;b id=172&gt;172  &lt;/b&gt;            &lt;span class=kwd&gt;if&lt;/span&gt; (IsNew)
&lt;b id=173&gt;173  &lt;/b&gt;            {
&lt;b id=174&gt;174  &lt;/b&gt;                cmd = GetInsertCommand(userName);
&lt;b id=175&gt;175  &lt;/b&gt;            }
&lt;b id=176&gt;176  &lt;/b&gt;            &lt;span class=kwd&gt;else&lt;/span&gt;
&lt;b id=177&gt;177  &lt;/b&gt;            {
&lt;b id=178&gt;178  &lt;/b&gt;                cmd = GetUpdateCommand(userName);
&lt;b id=179&gt;179  &lt;/b&gt;            }
&lt;b id=180&gt;180  &lt;/b&gt;
&lt;b id=181&gt;181  &lt;/b&gt;            &lt;span class=cmt&gt;//reset the Primary Key with the id passed back by the operation&lt;/span&gt;
&lt;b id=182&gt;182  &lt;/b&gt;            &lt;span class=kwd&gt;object&lt;/span&gt; pkVal = DataService.ExecuteScalar(cmd);
&lt;b id=183&gt;183  &lt;/b&gt;            
&lt;b id=184&gt;184  &lt;/b&gt;            &lt;span class=cmt&gt;//set the primaryKey, only if an auto-increment
&lt;b id=185&gt;185  &lt;/b&gt;            //if (table.PrimaryKey.AutoIncrement)
&lt;b id=186&gt;186  &lt;/b&gt;            // HACK: GUID fix&lt;/span&gt;
&lt;b id=187&gt;187  &lt;/b&gt;            &lt;span class=kwd&gt;if&lt;/span&gt; (table.PrimaryKey.AutoIncrement || table.PrimaryKey.DataType == DbType.Guid)
&lt;b id=188&gt;188  &lt;/b&gt;            {
&lt;b id=189&gt;189  &lt;/b&gt;                &lt;span class=kwd&gt;try&lt;/span&gt; {
&lt;b id=190&gt;190  &lt;/b&gt;                    SetPrimaryKey(pkVal);
&lt;b id=191&gt;191  &lt;/b&gt;                } &lt;span class=kwd&gt;catch&lt;/span&gt; {
&lt;b id=192&gt;192  &lt;/b&gt;
&lt;b id=193&gt;193  &lt;/b&gt;                    &lt;span class=cmt&gt;//this will happen if there is no PK defined on a table. Catch this and notify&lt;/span&gt;
&lt;b id=194&gt;194  &lt;/b&gt;                    &lt;span class=kwd&gt;throw new&lt;/span&gt; Exception(&lt;span class=st&gt;"No Primary Key is defined for this table. A primary key is required to use SubSonic"&lt;/span&gt;);
&lt;b id=195&gt;195  &lt;/b&gt;                }
&lt;b id=196&gt;196  &lt;/b&gt;            }
&lt;b id=197&gt;197  &lt;/b&gt;            
&lt;b id=198&gt;198  &lt;/b&gt;            &lt;span class=cmt&gt;//set this object as old&lt;/span&gt;
&lt;b id=199&gt;199  &lt;/b&gt;            MarkOld();
&lt;b id=200&gt;200  &lt;/b&gt;            isDirty = &lt;span class=kwd&gt;false&lt;/span&gt;;
&lt;b id=201&gt;201  &lt;/b&gt;            PostUpdate();
&lt;b id=202&gt;202  &lt;/b&gt;            
&lt;b id=203&gt;203  &lt;/b&gt;        }
&lt;b id=204&gt;204  &lt;/b&gt;
&lt;b id=205&gt;205  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=206&gt;206  &lt;/b&gt;        /// If the record contains Deleted or IsDeleted flag columns, sets them to true. If not, invokes Destroy()
&lt;b id=207&gt;207  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=208&gt;208  &lt;/b&gt;        /// &amp;lt;returns&amp;gt;Number of rows affected by the operation&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=209&gt;209  &lt;/b&gt;        &lt;span class=kwd&gt;public static int&lt;/span&gt; Delete(&lt;span class=kwd&gt;object&lt;/span&gt; keyID) 
&lt;b id=210&gt;210  &lt;/b&gt;        {
&lt;b id=211&gt;211  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DeleteByParameter(BaseSchema.PrimaryKey.ColumnName, keyID, &lt;span class=kwd&gt;null&lt;/span&gt;);
&lt;b id=212&gt;212  &lt;/b&gt;        }
&lt;b id=213&gt;213  &lt;/b&gt;
&lt;b id=214&gt;214  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=215&gt;215  &lt;/b&gt;        /// If the record contains Deleted or IsDeleted flag columns, sets them to true. If not, invokes Destroy()
&lt;b id=216&gt;216  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=217&gt;217  &lt;/b&gt;        /// &amp;lt;param name="columnName"&amp;gt;The name of the column that whose value will be evaluated for deletion&amp;lt;/param&amp;gt;
&lt;b id=218&gt;218  &lt;/b&gt;        /// &amp;lt;param name="oValue"&amp;gt;The value that will be compared against columnName to determine deletion&amp;lt;/param&amp;gt;
&lt;b id=219&gt;219  &lt;/b&gt;        /// &amp;lt;returns&amp;gt;Number of rows affected by the operation&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=220&gt;220  &lt;/b&gt;        &lt;span class=kwd&gt;public static int&lt;/span&gt; Delete(&lt;span class=kwd&gt;string&lt;/span&gt; columnName, &lt;span class=kwd&gt;object&lt;/span&gt; oValue)
&lt;b id=221&gt;221  &lt;/b&gt;        {
&lt;b id=222&gt;222  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DeleteByParameter(columnName, oValue, &lt;span class=kwd&gt;null&lt;/span&gt;);
&lt;b id=223&gt;223  &lt;/b&gt;        }
&lt;b id=224&gt;224  &lt;/b&gt;        
&lt;b id=225&gt;225  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=226&gt;226  &lt;/b&gt;        /// If the record contains Deleted or IsDeleted flag columns, sets them to true. If not, invokes Destroy()
&lt;b id=227&gt;227  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=228&gt;228  &lt;/b&gt;        /// &amp;lt;param name="columnName"&amp;gt;The name of the column that whose value will be evaluated for deletion&amp;lt;/param&amp;gt;
&lt;b id=229&gt;229  &lt;/b&gt;        /// &amp;lt;param name="oValue"&amp;gt;The value that will be compared against columnName to determine deletion&amp;lt;/param&amp;gt;
&lt;b id=230&gt;230  &lt;/b&gt;        /// &amp;lt;param name="userName"&amp;gt;The userName that the record will be updated with. Only relevant if the record contains Deleted or IsDeleted properties&amp;lt;/param&amp;gt;
&lt;b id=231&gt;231  &lt;/b&gt;        /// &amp;lt;returns&amp;gt;Number of rows affected by the operation&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=232&gt;232  &lt;/b&gt;        &lt;span class=kwd&gt;public static int&lt;/span&gt; Delete(&lt;span class=kwd&gt;string&lt;/span&gt; columnName, &lt;span class=kwd&gt;object&lt;/span&gt; oValue, &lt;span class=kwd&gt;string&lt;/span&gt; userName)
&lt;b id=233&gt;233  &lt;/b&gt;        {
&lt;b id=234&gt;234  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DeleteByParameter(columnName, oValue, userName);
&lt;b id=235&gt;235  &lt;/b&gt;        }
&lt;b id=236&gt;236  &lt;/b&gt;
&lt;b id=237&gt;237  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=238&gt;238  &lt;/b&gt;        /// If the record contains Deleted or IsDeleted flag columns, sets them to true. If not, invokes Destroy()
&lt;b id=239&gt;239  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=240&gt;240  &lt;/b&gt;        /// &amp;lt;param name="columnName"&amp;gt;The name of the column that whose value will be evaluated for deletion&amp;lt;/param&amp;gt;
&lt;b id=241&gt;241  &lt;/b&gt;        /// &amp;lt;param name="oValue"&amp;gt;The value that will be compared against columnName to determine deletion&amp;lt;/param&amp;gt;
&lt;b id=242&gt;242  &lt;/b&gt;        /// &amp;lt;param name="userName"&amp;gt;The userName that the record will be updated with. Only relevant if the record contains Deleted or IsDeleted properties&amp;lt;/param&amp;gt;
&lt;b id=243&gt;243  &lt;/b&gt;        /// &amp;lt;returns&amp;gt;Number of rows affected by the operation&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=244&gt;244  &lt;/b&gt;        &lt;span class=kwd&gt;private static int&lt;/span&gt; DeleteByParameter(&lt;span class=kwd&gt;string&lt;/span&gt; columnName, &lt;span class=kwd&gt;object&lt;/span&gt; oValue, &lt;span class=kwd&gt;string&lt;/span&gt; userName)
&lt;b id=245&gt;245  &lt;/b&gt;        {
&lt;b id=246&gt;246  &lt;/b&gt;            &lt;span class=kwd&gt;int&lt;/span&gt; iOut = 0;
&lt;b id=247&gt;247  &lt;/b&gt;
&lt;b id=248&gt;248  &lt;/b&gt;            &lt;span class=kwd&gt;bool&lt;/span&gt; containsDeleted = BaseSchema.Columns.Contains(ReservedColumnName.DELETED);
&lt;b id=249&gt;249  &lt;/b&gt;            &lt;span class=kwd&gt;bool&lt;/span&gt; containsIsDeleted = BaseSchema.Columns.Contains(ReservedColumnName.IS_DELETED);
&lt;b id=250&gt;250  &lt;/b&gt;            &lt;span class=kwd&gt;bool&lt;/span&gt; containsModifiedBy = BaseSchema.Columns.Contains(ReservedColumnName.MODIFIED_BY);
&lt;b id=251&gt;251  &lt;/b&gt;            &lt;span class=kwd&gt;bool&lt;/span&gt; containsModifiedOn = BaseSchema.Columns.Contains(ReservedColumnName.MODIFIED_ON);
&lt;b id=252&gt;252  &lt;/b&gt;            &lt;span class=kwd&gt;if&lt;/span&gt; (containsDeleted || containsIsDeleted)
&lt;b id=253&gt;253  &lt;/b&gt;            {
&lt;b id=254&gt;254  &lt;/b&gt;                &lt;span class=cmt&gt;//update the column and set deleted=true;
&lt;b id=255&gt;255  &lt;/b&gt;                //new T();&lt;/span&gt;
&lt;b id=256&gt;256  &lt;/b&gt;                Query qry = &lt;span class=kwd&gt;new&lt;/span&gt; Query(BaseSchema);
&lt;b id=257&gt;257  &lt;/b&gt;                &lt;span class=kwd&gt;if&lt;/span&gt; (containsDeleted)
&lt;b id=258&gt;258  &lt;/b&gt;                {
&lt;b id=259&gt;259  &lt;/b&gt;                    qry.AddUpdateSetting(ReservedColumnName.DELETED, &lt;span class=kwd&gt;true&lt;/span&gt;);
&lt;b id=260&gt;260  &lt;/b&gt;                }
&lt;b id=261&gt;261  &lt;/b&gt;                
&lt;b id=262&gt;262  &lt;/b&gt;                &lt;span class=kwd&gt;if&lt;/span&gt; (containsIsDeleted)
&lt;b id=263&gt;263  &lt;/b&gt;                {
&lt;b id=264&gt;264  &lt;/b&gt;                    qry.AddUpdateSetting(ReservedColumnName.IS_DELETED, &lt;span class=kwd&gt;true&lt;/span&gt;);
&lt;b id=265&gt;265  &lt;/b&gt;                }
&lt;b id=266&gt;266  &lt;/b&gt;
&lt;b id=267&gt;267  &lt;/b&gt;                &lt;span class=kwd&gt;if&lt;/span&gt; (containsModifiedBy &amp;amp;&amp;amp; !String.IsNullOrEmpty(userName))
&lt;b id=268&gt;268  &lt;/b&gt;                {
&lt;b id=269&gt;269  &lt;/b&gt;                    qry.AddUpdateSetting(ReservedColumnName.MODIFIED_BY, userName);
&lt;b id=270&gt;270  &lt;/b&gt;                }
&lt;b id=271&gt;271  &lt;/b&gt;
&lt;b id=272&gt;272  &lt;/b&gt;                &lt;span class=kwd&gt;if&lt;/span&gt; (containsModifiedOn)
&lt;b id=273&gt;273  &lt;/b&gt;                {
&lt;b id=274&gt;274  &lt;/b&gt;                    qry.AddUpdateSetting(ReservedColumnName.MODIFIED_ON, DateTime.Now);
&lt;b id=275&gt;275  &lt;/b&gt;                }
&lt;b id=276&gt;276  &lt;/b&gt;                qry.AddWhere(columnName, oValue);
&lt;b id=277&gt;277  &lt;/b&gt;                qry.Execute();
&lt;b id=278&gt;278  &lt;/b&gt;            }
&lt;b id=279&gt;279  &lt;/b&gt;            &lt;span class=kwd&gt;else&lt;/span&gt;
&lt;b id=280&gt;280  &lt;/b&gt;            {
&lt;b id=281&gt;281  &lt;/b&gt;                iOut = DestroyByParameter(columnName, oValue);
&lt;b id=282&gt;282  &lt;/b&gt;            }
&lt;b id=283&gt;283  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; iOut;
&lt;b id=284&gt;284  &lt;/b&gt;        }
&lt;b id=285&gt;285  &lt;/b&gt;
&lt;b id=286&gt;286  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=287&gt;287  &lt;/b&gt;        /// Deletes the record in the table, even if it contains Deleted or IsDeleted flag columns
&lt;b id=288&gt;288  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=289&gt;289  &lt;/b&gt;        /// &amp;lt;returns&amp;gt;Number of rows affected by the operation&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=290&gt;290  &lt;/b&gt;        &lt;span class=kwd&gt;public static int&lt;/span&gt; Destroy(&lt;span class=kwd&gt;object&lt;/span&gt; keyID)
&lt;b id=291&gt;291  &lt;/b&gt;        {
&lt;b id=292&gt;292  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DestroyByParameter(BaseSchema.PrimaryKey.ColumnName, keyID);
&lt;b id=293&gt;293  &lt;/b&gt;        }
&lt;b id=294&gt;294  &lt;/b&gt;
&lt;b id=295&gt;295  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=296&gt;296  &lt;/b&gt;        /// Deletes the record in the table, even if it contains Deleted or IsDeleted flag columns
&lt;b id=297&gt;297  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=298&gt;298  &lt;/b&gt;        /// &amp;lt;param name="columnName"&amp;gt;The name of the column that whose value will be evaluated for deletion&amp;lt;/param&amp;gt;
&lt;b id=299&gt;299  &lt;/b&gt;        /// &amp;lt;param name="oValue"&amp;gt;The value that will be compared against columnName to determine deletion&amp;lt;/param&amp;gt;
&lt;b id=300&gt;300  &lt;/b&gt;        /// &amp;lt;returns&amp;gt;Number of rows affected by the operation&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=301&gt;301  &lt;/b&gt;        &lt;span class=kwd&gt;public static int&lt;/span&gt; Destroy(&lt;span class=kwd&gt;string&lt;/span&gt; columnName, &lt;span class=kwd&gt;object&lt;/span&gt; oValue)
&lt;b id=302&gt;302  &lt;/b&gt;        {
&lt;b id=303&gt;303  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DestroyByParameter(columnName, oValue);
&lt;b id=304&gt;304  &lt;/b&gt;        }
&lt;b id=305&gt;305  &lt;/b&gt;
&lt;b id=306&gt;306  &lt;/b&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;
&lt;b id=307&gt;307  &lt;/b&gt;        /// Deletes the record in the table, even if it contains Deleted or IsDeleted flag columns
&lt;b id=308&gt;308  &lt;/b&gt;        /// &amp;lt;/summary&amp;gt;
&lt;b id=309&gt;309  &lt;/b&gt;        /// &amp;lt;param name="columnName"&amp;gt;The name of the column that whose value will be evaluated for deletion&amp;lt;/param&amp;gt;
&lt;b id=310&gt;310  &lt;/b&gt;        /// &amp;lt;param name="oValue"&amp;gt;The value that will be compared against columnName to determine deletion&amp;lt;/param&amp;gt;
&lt;b id=311&gt;311  &lt;/b&gt;        /// &amp;lt;returns&amp;gt;Number of rows affected by the operation&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;b id=312&gt;312  &lt;/b&gt;        &lt;span class=kwd&gt;private static int&lt;/span&gt; DestroyByParameter(&lt;span class=kwd&gt;string&lt;/span&gt; columnName, &lt;span class=kwd&gt;object&lt;/span&gt; oValue)
&lt;b id=313&gt;313  &lt;/b&gt;        {
&lt;b id=314&gt;314  &lt;/b&gt;            QueryCommand cmd = GetDeleteCommand(columnName, oValue);
&lt;b id=315&gt;315  &lt;/b&gt;            &lt;span class=kwd&gt;return&lt;/span&gt; DataService.ExecuteQuery(cmd);
&lt;b id=316&gt;316  &lt;/b&gt;        }
&lt;b id=317&gt;317  &lt;/b&gt;        
&lt;b id=318&gt;318  &lt;/b&gt;        &lt;span class=kwd&gt;#endregion
&lt;b id=319&gt;319  &lt;/b&gt;
&lt;b id=320&gt;320  &lt;/b&gt;        #region&lt;/span&gt;&lt;span class=kwdt&gt; Object Overrides&lt;/span&gt;
&lt;b id=321&gt;321  &lt;/b&gt;        &lt;span class=cmt&gt;//public string Inspect() {
&lt;b id=322&gt;322  &lt;/b&gt;        //    return Inspect(true);
&lt;b id=323&gt;323  &lt;/b&gt;        //}
&lt;b id=324&gt;324  &lt;/b&gt;        //public string Inspect(bool useHtml) {
&lt;b id=325&gt;325  &lt;/b&gt;        //    System.Text.StringBuilder sb = new StringBuilder();
&lt;b id=326&gt;326  &lt;/b&gt;        //    string sOut = "";
&lt;b id=327&gt;327  &lt;/b&gt;        //    if (useHtml) {
&lt;b id=328&gt;328  &lt;/b&gt;        //        sb.Append("&amp;lt;table&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td colspan=2&amp;gt;&amp;lt;h3&amp;gt;" + this.TableName + " Inspection&amp;lt;/h3&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;");
&lt;b id=329&gt;329  &lt;/b&gt;
&lt;b id=330&gt;330  &lt;/b&gt;        //        foreach (TableSchema.TableColumn col in table.Columns) {
&lt;b id=331&gt;331  &lt;/b&gt;        //            sb.Append("&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;" + col.ColumnName + "&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;" + this.GetColumnValue(col.ColumnName).ToString() + "&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;");
&lt;b id=332&gt;332  &lt;/b&gt;
&lt;b id=333&gt;333  &lt;/b&gt;        //        }
&lt;b id=334&gt;334  &lt;/b&gt;        //        sb.Append("&amp;lt;/table&amp;gt;");
&lt;b id=335&gt;335  &lt;/b&gt;        //        sOut = sb.ToString();
&lt;b id=336&gt;336  &lt;/b&gt;        //    } else {
&lt;b id=337&gt;337  &lt;/b&gt;        //        sb.Append("#################" + this.TableName + " Inspection ####################\r\n");
&lt;b id=338&gt;338  &lt;/b&gt;
&lt;b id=339&gt;339  &lt;/b&gt;        //        foreach (TableSchema.TableColumn col in table.Columns) {
&lt;b id=340&gt;340  &lt;/b&gt;        //            sb.Append(col.ColumnName + ": " + this.GetColumnValue(col.ColumnName).ToString() + "\r\n");
&lt;b id=341&gt;341  &lt;/b&gt;
&lt;b id=342&gt;342  &lt;/b&gt;        //        }
&lt;b id=343&gt;343  &lt;/b&gt;        //        sb.Append("#############################################################################\r\n");
&lt;b id=344&gt;344  &lt;/b&gt;        //        sOut = sb.ToString();
&lt;b id=345&gt;345  &lt;/b&gt;
&lt;b id=346&gt;346  &lt;/b&gt;        //    }
&lt;b id=347&gt;347  &lt;/b&gt;        //    return sOut;
&lt;b id=348&gt;348  &lt;/b&gt;        //}&lt;/span&gt;
&lt;b id=349&gt;349  &lt;/b&gt;        &lt;span class=kwd&gt;#endregion&lt;/span&gt;
&lt;b id=350&gt;350  &lt;/b&gt;    }
&lt;b id=351&gt;351  &lt;/b&gt;}
&lt;/pre&gt;&amp;nbsp;</description></item><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1649250.aspx</link><pubDate>Tue, 03 Apr 2007 11:28:41 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1649250</guid><dc:creator>TATWORTH</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1649250.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1649250</wfw:commentRss><description>It looks like the save method is down yet another level. Search on item.Save in the class you just posted, highlight where the Save, right-click and goto to the definition. I need to see the save and the stored procedure it calls.</description></item><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1648243.aspx</link><pubDate>Mon, 02 Apr 2007 18:53:09 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1648243</guid><dc:creator>madkidd</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1648243.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1648243</wfw:commentRss><description>&lt;p&gt;I am using SubSonic, so I am not sure how I would do this. Here is the entire Contact class:&lt;/p&gt;&lt;pre class=coloredcode&gt;&lt;b id=1&gt;1    &lt;/b&gt;        &lt;span class=kwd&gt;Imports&lt;/span&gt; System
&lt;b id=2&gt;2    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Text
&lt;b id=3&gt;3    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Data
&lt;b id=4&gt;4    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Data.SqlClient
&lt;b id=5&gt;5    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Data.Common
&lt;b id=6&gt;6    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Collections
&lt;b id=7&gt;7    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Collections.Generic
&lt;b id=8&gt;8    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Configuration
&lt;b id=9&gt;9    &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Xml
&lt;b id=10&gt;10   &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; System.Xml.Serialization
&lt;b id=11&gt;11   &lt;/b&gt;&lt;span class=kwd&gt;Imports&lt;/span&gt; SubSonic
&lt;b id=12&gt;12   &lt;/b&gt;
&lt;b id=13&gt;13   &lt;/b&gt;
&lt;b id=14&gt;14   &lt;/b&gt;
&lt;b id=15&gt;15   &lt;/b&gt;&lt;span class=cmt&gt;''' &amp;lt;summary&amp;gt;
&lt;b id=16&gt;16   &lt;/b&gt;''' Strongly-typed collection for the Contact class.
&lt;b id=17&gt;17   &lt;/b&gt;''' &amp;lt;/summary&amp;gt;
&lt;/span&gt;&lt;b id=18&gt;18   &lt;/b&gt;&amp;lt;Serializable&amp;gt; _
&lt;b id=19&gt;19   &lt;/b&gt;&lt;span class=kwd&gt;Public&lt;/span&gt; Partial &lt;span class=kwd&gt;Class&lt;/span&gt; ContactCollection
&lt;b id=20&gt;20   &lt;/b&gt;    &lt;span class=kwd&gt;Inherits&lt;/span&gt; ActiveList(Of Contact)
&lt;b id=21&gt;21   &lt;/b&gt;
&lt;b id=22&gt;22   &lt;/b&gt;    &lt;span class=kwd&gt;Private&lt;/span&gt; wheres &lt;span class=kwd&gt;As&lt;/span&gt; List(Of Where) = &lt;span class=kwd&gt;New&lt;/span&gt; List(Of Where)()
&lt;b id=23&gt;23   &lt;/b&gt;    &lt;span class=kwd&gt;Private&lt;/span&gt; betweens &lt;span class=kwd&gt;As&lt;/span&gt; List(Of BetweenAnd) = &lt;span class=kwd&gt;New&lt;/span&gt; List(Of BetweenAnd)()
&lt;b id=24&gt;24   &lt;/b&gt;    &lt;span class=kwd&gt;Private&lt;/span&gt; orderBy &lt;span class=kwd&gt;As&lt;/span&gt; SubSonic.OrderBy
&lt;b id=25&gt;25   &lt;/b&gt;    &lt;span class=kwd&gt;Public Function&lt;/span&gt; OrderByAsc(&lt;span class=kwd&gt;ByVal&lt;/span&gt; columnName &lt;span class=kwd&gt;As String&lt;/span&gt;) &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=26&gt;26   &lt;/b&gt;        &lt;span class=kwd&gt;Me&lt;/span&gt;.orderBy = SubSonic.OrderBy.Asc(columnName)
&lt;b id=27&gt;27   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=28&gt;28   &lt;/b&gt;    End Function
&lt;b id=29&gt;29   &lt;/b&gt;    Public Function&lt;/span&gt; OrderByDesc(&lt;span class=kwd&gt;ByVal&lt;/span&gt; columnName &lt;span class=kwd&gt;As String&lt;/span&gt;) &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=30&gt;30   &lt;/b&gt;        &lt;span class=kwd&gt;Me&lt;/span&gt;.orderBy = SubSonic.OrderBy.Desc(columnName)
&lt;b id=31&gt;31   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=32&gt;32   &lt;/b&gt;    End Function
&lt;b id=33&gt;33   &lt;/b&gt;    Public Function&lt;/span&gt; WhereDatesBetween(&lt;span class=kwd&gt;ByVal&lt;/span&gt; columnName &lt;span class=kwd&gt;As String&lt;/span&gt;, &lt;span class=kwd&gt;ByVal&lt;/span&gt; dateStart &lt;span class=kwd&gt;As&lt;/span&gt; DateTime, &lt;span class=kwd&gt;ByVal&lt;/span&gt; dateEnd &lt;span class=kwd&gt;As&lt;/span&gt; DateTime) &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=34&gt;34   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=35&gt;35   &lt;/b&gt;
&lt;b id=36&gt;36   &lt;/b&gt;    End Function
&lt;b id=37&gt;37   &lt;/b&gt;
&lt;b id=38&gt;38   &lt;/b&gt;    Public Function&lt;/span&gt; Where(&lt;span class=kwd&gt;ByVal&lt;/span&gt; where_Renamed &lt;span class=kwd&gt;As&lt;/span&gt; Where) &lt;span class=kwd&gt;As&lt;/span&gt;  ContactCollection
&lt;b id=39&gt;39   &lt;/b&gt;        wheres.Add(where_Renamed)
&lt;b id=40&gt;40   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=41&gt;41   &lt;/b&gt;    End Function
&lt;b id=42&gt;42   &lt;/b&gt;    Public Function&lt;/span&gt; Where(&lt;span class=kwd&gt;ByVal&lt;/span&gt; columnName &lt;span class=kwd&gt;As String&lt;/span&gt;, &lt;span class=kwd&gt;ByVal&lt;/span&gt; value &lt;span class=kwd&gt;As Object&lt;/span&gt;) &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=43&gt;43   &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; where_Renamed &lt;span class=kwd&gt;As&lt;/span&gt; Where = &lt;span class=kwd&gt;New&lt;/span&gt; Where()
&lt;b id=44&gt;44   &lt;/b&gt;        where_Renamed.ColumnName = columnName
&lt;b id=45&gt;45   &lt;/b&gt;        where_Renamed.ParameterValue = value
&lt;b id=46&gt;46   &lt;/b&gt;        &lt;span class=kwd&gt;Me&lt;/span&gt;.Where(where_Renamed)
&lt;b id=47&gt;47   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=48&gt;48   &lt;/b&gt;    End Function
&lt;b id=49&gt;49   &lt;/b&gt;    Public Function&lt;/span&gt; Where(&lt;span class=kwd&gt;ByVal&lt;/span&gt; columnName &lt;span class=kwd&gt;As String&lt;/span&gt;, &lt;span class=kwd&gt;ByVal&lt;/span&gt; comp &lt;span class=kwd&gt;As&lt;/span&gt; Comparison, &lt;span class=kwd&gt;ByVal&lt;/span&gt; value &lt;span class=kwd&gt;As Object&lt;/span&gt;) &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=50&gt;50   &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; where_Renamed &lt;span class=kwd&gt;As&lt;/span&gt; Where = &lt;span class=kwd&gt;New&lt;/span&gt; Where()
&lt;b id=51&gt;51   &lt;/b&gt;        where_Renamed.ColumnName = columnName
&lt;b id=52&gt;52   &lt;/b&gt;        where_Renamed.Comparison = comp
&lt;b id=53&gt;53   &lt;/b&gt;        where_Renamed.ParameterValue = value
&lt;b id=54&gt;54   &lt;/b&gt;        &lt;span class=kwd&gt;Me&lt;/span&gt;.Where(where_Renamed)
&lt;b id=55&gt;55   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=56&gt;56   &lt;/b&gt;
&lt;b id=57&gt;57   &lt;/b&gt;    End Function
&lt;b id=58&gt;58   &lt;/b&gt;    Public Function&lt;/span&gt; BetweenAnd(&lt;span class=kwd&gt;ByVal&lt;/span&gt; columnName &lt;span class=kwd&gt;As String&lt;/span&gt;, &lt;span class=kwd&gt;ByVal&lt;/span&gt; dateStart &lt;span class=kwd&gt;As&lt;/span&gt; DateTime, &lt;span class=kwd&gt;ByVal&lt;/span&gt; dateEnd &lt;span class=kwd&gt;As&lt;/span&gt; DateTime) &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=59&gt;59   &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; between &lt;span class=kwd&gt;As&lt;/span&gt; BetweenAnd = &lt;span class=kwd&gt;New&lt;/span&gt; BetweenAnd()
&lt;b id=60&gt;60   &lt;/b&gt;        between.ColumnName = columnName
&lt;b id=61&gt;61   &lt;/b&gt;        between.StartDate = dateStart
&lt;b id=62&gt;62   &lt;/b&gt;        between.EndDate = dateEnd
&lt;b id=63&gt;63   &lt;/b&gt;        betweens.Add(between)
&lt;b id=64&gt;64   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=65&gt;65   &lt;/b&gt;    End Function
&lt;b id=66&gt;66   &lt;/b&gt;    Public Overloads Function&lt;/span&gt; Load() &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=67&gt;67   &lt;/b&gt;
&lt;b id=68&gt;68   &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; qry &lt;span class=kwd&gt;As&lt;/span&gt; Query = &lt;span class=kwd&gt;New&lt;/span&gt; Query(&lt;span class=st&gt;"Contact"&lt;/span&gt;)
&lt;b id=69&gt;69   &lt;/b&gt;        &lt;span class=kwd&gt;For Each&lt;/span&gt; where &lt;span class=kwd&gt;As&lt;/span&gt; Where &lt;span class=kwd&gt;In&lt;/span&gt; wheres
&lt;b id=70&gt;70   &lt;/b&gt;            qry.AddWhere(where)
&lt;b id=71&gt;71   &lt;/b&gt;        &lt;span class=kwd&gt;Next
&lt;b id=72&gt;72   &lt;/b&gt;        For Each&lt;/span&gt; between &lt;span class=kwd&gt;As&lt;/span&gt; BetweenAnd &lt;span class=kwd&gt;In&lt;/span&gt; betweens
&lt;b id=73&gt;73   &lt;/b&gt;            qry.AddBetweenAnd(between)
&lt;b id=74&gt;74   &lt;/b&gt;        &lt;span class=kwd&gt;Next
&lt;b id=75&gt;75   &lt;/b&gt;
&lt;b id=76&gt;76   &lt;/b&gt;        If Not&lt;/span&gt; orderBy &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt;
&lt;b id=77&gt;77   &lt;/b&gt;            qry.OrderBy = orderBy
&lt;b id=78&gt;78   &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=79&gt;79   &lt;/b&gt;
&lt;b id=80&gt;80   &lt;/b&gt;        Dim&lt;/span&gt; rdr &lt;span class=kwd&gt;As&lt;/span&gt; IDataReader = qry.ExecuteReader()
&lt;b id=81&gt;81   &lt;/b&gt;        &lt;span class=kwd&gt;Me&lt;/span&gt;.Load(rdr)
&lt;b id=82&gt;82   &lt;/b&gt;        rdr.Close()
&lt;b id=83&gt;83   &lt;/b&gt;
&lt;b id=84&gt;84   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=85&gt;85   &lt;/b&gt;    End Function
&lt;b id=86&gt;86   &lt;/b&gt;	
&lt;b id=87&gt;87   &lt;/b&gt;	Public Overloads Function&lt;/span&gt; Load(&lt;span class=kwd&gt;ByVal&lt;/span&gt; qry &lt;span class=kwd&gt;As&lt;/span&gt; Query) &lt;span class=kwd&gt;As&lt;/span&gt; ContactCollection
&lt;b id=88&gt;88   &lt;/b&gt;
&lt;b id=89&gt;89   &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; rdr &lt;span class=kwd&gt;As&lt;/span&gt; IDataReader = qry.ExecuteReader()
&lt;b id=90&gt;90   &lt;/b&gt;        &lt;span class=kwd&gt;Me&lt;/span&gt;.Load(rdr)
&lt;b id=91&gt;91   &lt;/b&gt;        rdr.Close()
&lt;b id=92&gt;92   &lt;/b&gt;
&lt;b id=93&gt;93   &lt;/b&gt;        &lt;span class=kwd&gt;Return Me
&lt;b id=94&gt;94   &lt;/b&gt;    End Function
&lt;b id=95&gt;95   &lt;/b&gt;
&lt;b id=96&gt;96   &lt;/b&gt;    Public Sub New&lt;/span&gt;()
&lt;b id=97&gt;97   &lt;/b&gt;
&lt;b id=98&gt;98   &lt;/b&gt;
&lt;b id=99&gt;99   &lt;/b&gt;    &lt;span class=kwd&gt;End Sub
&lt;b id=100&gt;100  &lt;/b&gt;
&lt;b id=101&gt;101  &lt;/b&gt;End Class&lt;/span&gt;
&lt;b id=102&gt;102  &lt;/b&gt;
&lt;b id=103&gt;103  &lt;/b&gt;&lt;span class=cmt&gt;''' &amp;lt;summary&amp;gt;
&lt;b id=104&gt;104  &lt;/b&gt;''' This is an ActiveRecord class which wraps the Contact table.
&lt;b id=105&gt;105  &lt;/b&gt;''' &amp;lt;/summary&amp;gt;
&lt;/span&gt;&lt;b id=106&gt;106  &lt;/b&gt;&amp;lt;Serializable&amp;gt; _
&lt;b id=107&gt;107  &lt;/b&gt;&lt;span class=kwd&gt;Public&lt;/span&gt; Partial &lt;span class=kwd&gt;Class&lt;/span&gt; Contact
&lt;b id=108&gt;108  &lt;/b&gt;    &lt;span class=kwd&gt;Inherits&lt;/span&gt; ActiveRecord(Of Contact)
&lt;b id=109&gt;109  &lt;/b&gt;
&lt;b id=110&gt;110  &lt;/b&gt;    &lt;span class=kwd&gt;#Region &lt;span class=st&gt;"Default Settings"&lt;/span&gt;&lt;/span&gt;
&lt;b id=111&gt;111  &lt;/b&gt;    &lt;span class=kwd&gt;Private Sub&lt;/span&gt; SetSQLProps()
&lt;b id=112&gt;112  &lt;/b&gt;        &lt;span class=kwd&gt;If&lt;/span&gt; Schema &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt;
&lt;b id=113&gt;113  &lt;/b&gt;            Schema = Query.BuildTableSchema(&lt;span class=st&gt;"Contact"&lt;/span&gt;)
&lt;b id=114&gt;114  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=115&gt;115  &lt;/b&gt;    End Sub
&lt;b id=116&gt;116  &lt;/b&gt;    #End Region
&lt;b id=117&gt;117  &lt;/b&gt;
&lt;b id=118&gt;118  &lt;/b&gt;    #Region &lt;span class=st&gt;"Schema Accessor"&lt;/span&gt;&lt;/span&gt;
&lt;b id=119&gt;119  &lt;/b&gt;    &lt;span class=kwd&gt;Public Shared Function&lt;/span&gt; GetTableSchema() &lt;span class=kwd&gt;As&lt;/span&gt; TableSchema.Table
&lt;b id=120&gt;120  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; item &lt;span class=kwd&gt;As&lt;/span&gt; Contact = &lt;span class=kwd&gt;New&lt;/span&gt; Contact()
&lt;b id=121&gt;121  &lt;/b&gt;        &lt;span class=kwd&gt;Return&lt;/span&gt; Contact.Schema
&lt;b id=122&gt;122  &lt;/b&gt;    &lt;span class=kwd&gt;End Function
&lt;b id=123&gt;123  &lt;/b&gt;    #End Region
&lt;b id=124&gt;124  &lt;/b&gt;
&lt;b id=125&gt;125  &lt;/b&gt;        #Region &lt;span class=st&gt;"Query Accessor"&lt;/span&gt;&lt;/span&gt;
&lt;b id=126&gt;126  &lt;/b&gt;    &lt;span class=kwd&gt;Public Shared Function&lt;/span&gt; CreateQuery() &lt;span class=kwd&gt;As&lt;/span&gt; Query
&lt;b id=127&gt;127  &lt;/b&gt;        &lt;span class=kwd&gt;Return New&lt;/span&gt; Query(&lt;span class=st&gt;"Contact"&lt;/span&gt;)
&lt;b id=128&gt;128  &lt;/b&gt;    &lt;span class=kwd&gt;End Function
&lt;b id=129&gt;129  &lt;/b&gt;    #End Region
&lt;b id=130&gt;130  &lt;/b&gt;
&lt;b id=131&gt;131  &lt;/b&gt;    #Region &lt;span class=st&gt;".ctors"&lt;/span&gt;&lt;/span&gt;
&lt;b id=132&gt;132  &lt;/b&gt;    &lt;span class=kwd&gt;Public Sub New&lt;/span&gt;()
&lt;b id=133&gt;133  &lt;/b&gt;        SetSQLProps()
&lt;b id=134&gt;134  &lt;/b&gt;        SetDefaults()
&lt;b id=135&gt;135  &lt;/b&gt;        &lt;span class=kwd&gt;Me&lt;/span&gt;.MarkNew()
&lt;b id=136&gt;136  &lt;/b&gt;    &lt;span class=kwd&gt;End Sub
&lt;b id=137&gt;137  &lt;/b&gt;
&lt;b id=138&gt;138  &lt;/b&gt;    Public Sub New&lt;/span&gt;(&lt;span class=kwd&gt;ByVal&lt;/span&gt; keyID &lt;span class=kwd&gt;As Object&lt;/span&gt;)
&lt;b id=139&gt;139  &lt;/b&gt;        SetSQLProps()
&lt;b id=140&gt;140  &lt;/b&gt;        &lt;span class=kwd&gt;MyBase&lt;/span&gt;.LoadByKey(keyID)
&lt;b id=141&gt;141  &lt;/b&gt;    &lt;span class=kwd&gt;End Sub
&lt;b id=142&gt;142  &lt;/b&gt;
&lt;b id=143&gt;143  &lt;/b&gt;    Public Sub New&lt;/span&gt;(&lt;span class=kwd&gt;ByVal&lt;/span&gt; columnName &lt;span class=kwd&gt;As String&lt;/span&gt;, &lt;span class=kwd&gt;ByVal&lt;/span&gt; columnValue &lt;span class=kwd&gt;As Object&lt;/span&gt;)
&lt;b id=144&gt;144  &lt;/b&gt;        SetSQLProps()
&lt;b id=145&gt;145  &lt;/b&gt;        &lt;span class=kwd&gt;MyBase&lt;/span&gt;.LoadByParam(columnName,columnValue)
&lt;b id=146&gt;146  &lt;/b&gt;    &lt;span class=kwd&gt;End Sub
&lt;b id=147&gt;147  &lt;/b&gt;    #End Region
&lt;b id=148&gt;148  &lt;/b&gt;
&lt;b id=149&gt;149  &lt;/b&gt;    #Region &lt;span class=st&gt;"Public Properties"&lt;/span&gt;&lt;/span&gt;
&lt;b id=150&gt;150  &lt;/b&gt;        &amp;lt;XmlAttribute(&lt;span class=st&gt;"OrderID"&lt;/span&gt;)&amp;gt; _
&lt;b id=151&gt;151  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; OrderID &lt;span class=kwd&gt;As&lt;/span&gt; Guid
&lt;b id=152&gt;152  &lt;/b&gt;        &lt;span class=kwd&gt;Get
&lt;b id=153&gt;153  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"OrderID"&lt;/span&gt;)
&lt;b id=154&gt;154  &lt;/b&gt;         &lt;span class=kwd&gt;Dim&lt;/span&gt; oOut &lt;span class=kwd&gt;As&lt;/span&gt; Guid=Guid.Empty
&lt;b id=155&gt;155  &lt;/b&gt;         &lt;span class=kwd&gt;Try&lt;/span&gt;
&lt;b id=156&gt;156  &lt;/b&gt;oOut= &lt;span class=kwd&gt;New&lt;/span&gt; Guid(result.ToString())
&lt;b id=157&gt;157  &lt;/b&gt;&lt;span class=kwd&gt;Catch
&lt;b id=158&gt;158  &lt;/b&gt;End Try
&lt;b id=159&gt;159  &lt;/b&gt;         Return&lt;/span&gt; oOut
&lt;b id=160&gt;160  &lt;/b&gt;
&lt;b id=161&gt;161  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=162&gt;162  &lt;/b&gt;        Set
&lt;b id=163&gt;163  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=164&gt;164  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"OrderID"&lt;/span&gt;, Value)
&lt;b id=165&gt;165  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=166&gt;166  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=167&gt;167  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"Type"&lt;/span&gt;)&amp;gt; _
&lt;b id=168&gt;168  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; Type &lt;span class=kwd&gt;As String
&lt;b id=169&gt;169  &lt;/b&gt;        Get
&lt;b id=170&gt;170  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"Type"&lt;/span&gt;)
&lt;b id=171&gt;171  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=172&gt;172  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=173&gt;173  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=174&gt;174  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=175&gt;175  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=176&gt;176  &lt;/b&gt;
&lt;b id=177&gt;177  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=178&gt;178  &lt;/b&gt;        Set
&lt;b id=179&gt;179  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=180&gt;180  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"Type"&lt;/span&gt;, Value)
&lt;b id=181&gt;181  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=182&gt;182  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=183&gt;183  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"LastName"&lt;/span&gt;)&amp;gt; _
&lt;b id=184&gt;184  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; LastName &lt;span class=kwd&gt;As String
&lt;b id=185&gt;185  &lt;/b&gt;        Get
&lt;b id=186&gt;186  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"LastName"&lt;/span&gt;)
&lt;b id=187&gt;187  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=188&gt;188  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=189&gt;189  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=190&gt;190  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=191&gt;191  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=192&gt;192  &lt;/b&gt;
&lt;b id=193&gt;193  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=194&gt;194  &lt;/b&gt;        Set
&lt;b id=195&gt;195  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=196&gt;196  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"LastName"&lt;/span&gt;, Value)
&lt;b id=197&gt;197  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=198&gt;198  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=199&gt;199  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"FirstName"&lt;/span&gt;)&amp;gt; _
&lt;b id=200&gt;200  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; FirstName &lt;span class=kwd&gt;As String
&lt;b id=201&gt;201  &lt;/b&gt;        Get
&lt;b id=202&gt;202  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"FirstName"&lt;/span&gt;)
&lt;b id=203&gt;203  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=204&gt;204  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=205&gt;205  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=206&gt;206  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=207&gt;207  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=208&gt;208  &lt;/b&gt;
&lt;b id=209&gt;209  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=210&gt;210  &lt;/b&gt;        Set
&lt;b id=211&gt;211  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=212&gt;212  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"FirstName"&lt;/span&gt;, Value)
&lt;b id=213&gt;213  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=214&gt;214  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=215&gt;215  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"Company"&lt;/span&gt;)&amp;gt; _
&lt;b id=216&gt;216  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; Company &lt;span class=kwd&gt;As String
&lt;b id=217&gt;217  &lt;/b&gt;        Get
&lt;b id=218&gt;218  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"Company"&lt;/span&gt;)
&lt;b id=219&gt;219  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=220&gt;220  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=221&gt;221  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=222&gt;222  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=223&gt;223  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=224&gt;224  &lt;/b&gt;
&lt;b id=225&gt;225  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=226&gt;226  &lt;/b&gt;        Set
&lt;b id=227&gt;227  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=228&gt;228  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"Company"&lt;/span&gt;, Value)
&lt;b id=229&gt;229  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=230&gt;230  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=231&gt;231  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"Address"&lt;/span&gt;)&amp;gt; _
&lt;b id=232&gt;232  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; Address &lt;span class=kwd&gt;As String
&lt;b id=233&gt;233  &lt;/b&gt;        Get
&lt;b id=234&gt;234  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"Address"&lt;/span&gt;)
&lt;b id=235&gt;235  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=236&gt;236  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=237&gt;237  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=238&gt;238  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=239&gt;239  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=240&gt;240  &lt;/b&gt;
&lt;b id=241&gt;241  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=242&gt;242  &lt;/b&gt;        Set
&lt;b id=243&gt;243  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=244&gt;244  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"Address"&lt;/span&gt;, Value)
&lt;b id=245&gt;245  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=246&gt;246  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=247&gt;247  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"City"&lt;/span&gt;)&amp;gt; _
&lt;b id=248&gt;248  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; City &lt;span class=kwd&gt;As String
&lt;b id=249&gt;249  &lt;/b&gt;        Get
&lt;b id=250&gt;250  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"City"&lt;/span&gt;)
&lt;b id=251&gt;251  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=252&gt;252  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=253&gt;253  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=254&gt;254  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=255&gt;255  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=256&gt;256  &lt;/b&gt;
&lt;b id=257&gt;257  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=258&gt;258  &lt;/b&gt;        Set
&lt;b id=259&gt;259  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=260&gt;260  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"City"&lt;/span&gt;, Value)
&lt;b id=261&gt;261  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=262&gt;262  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=263&gt;263  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"StateID"&lt;/span&gt;)&amp;gt; _
&lt;b id=264&gt;264  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; StateID &lt;span class=kwd&gt;As Integer
&lt;b id=265&gt;265  &lt;/b&gt;        Get
&lt;b id=266&gt;266  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"StateID"&lt;/span&gt;)
&lt;b id=267&gt;267  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; oOut &lt;span class=kwd&gt;As Integer&lt;/span&gt; = 0
&lt;b id=268&gt;268  &lt;/b&gt;        &lt;span class=kwd&gt;Try&lt;/span&gt;
&lt;b id=269&gt;269  &lt;/b&gt;oOut = &lt;span class=kwd&gt;Integer&lt;/span&gt;.Parse(result.ToString())
&lt;b id=270&gt;270  &lt;/b&gt;&lt;span class=kwd&gt;Catch
&lt;b id=271&gt;271  &lt;/b&gt;End Try
&lt;b id=272&gt;272  &lt;/b&gt;        Return&lt;/span&gt; oOut
&lt;b id=273&gt;273  &lt;/b&gt;
&lt;b id=274&gt;274  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=275&gt;275  &lt;/b&gt;        Set
&lt;b id=276&gt;276  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=277&gt;277  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"StateID"&lt;/span&gt;, Value)
&lt;b id=278&gt;278  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=279&gt;279  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=280&gt;280  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"ZipCode"&lt;/span&gt;)&amp;gt; _
&lt;b id=281&gt;281  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; ZipCode &lt;span class=kwd&gt;As Integer
&lt;b id=282&gt;282  &lt;/b&gt;        Get
&lt;b id=283&gt;283  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"ZipCode"&lt;/span&gt;)
&lt;b id=284&gt;284  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; oOut &lt;span class=kwd&gt;As Integer&lt;/span&gt; = 0
&lt;b id=285&gt;285  &lt;/b&gt;        &lt;span class=kwd&gt;Try&lt;/span&gt;
&lt;b id=286&gt;286  &lt;/b&gt;oOut = &lt;span class=kwd&gt;Integer&lt;/span&gt;.Parse(result.ToString())
&lt;b id=287&gt;287  &lt;/b&gt;&lt;span class=kwd&gt;Catch
&lt;b id=288&gt;288  &lt;/b&gt;End Try
&lt;b id=289&gt;289  &lt;/b&gt;        Return&lt;/span&gt; oOut
&lt;b id=290&gt;290  &lt;/b&gt;
&lt;b id=291&gt;291  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=292&gt;292  &lt;/b&gt;        Set
&lt;b id=293&gt;293  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=294&gt;294  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"ZipCode"&lt;/span&gt;, Value)
&lt;b id=295&gt;295  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=296&gt;296  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=297&gt;297  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"Phone"&lt;/span&gt;)&amp;gt; _
&lt;b id=298&gt;298  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; Phone &lt;span class=kwd&gt;As String
&lt;b id=299&gt;299  &lt;/b&gt;        Get
&lt;b id=300&gt;300  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"Phone"&lt;/span&gt;)
&lt;b id=301&gt;301  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=302&gt;302  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=303&gt;303  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=304&gt;304  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=305&gt;305  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=306&gt;306  &lt;/b&gt;
&lt;b id=307&gt;307  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=308&gt;308  &lt;/b&gt;        Set
&lt;b id=309&gt;309  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=310&gt;310  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"Phone"&lt;/span&gt;, Value)
&lt;b id=311&gt;311  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=312&gt;312  &lt;/b&gt;    End Property&lt;/span&gt;
&lt;b id=313&gt;313  &lt;/b&gt;    &amp;lt;XmlAttribute(&lt;span class=st&gt;"Email"&lt;/span&gt;)&amp;gt; _
&lt;b id=314&gt;314  &lt;/b&gt;    &lt;span class=kwd&gt;Public Property&lt;/span&gt; Email &lt;span class=kwd&gt;As String
&lt;b id=315&gt;315  &lt;/b&gt;        Get
&lt;b id=316&gt;316  &lt;/b&gt;        Dim&lt;/span&gt; result &lt;span class=kwd&gt;As Object&lt;/span&gt; = &lt;span class=kwd&gt;Me&lt;/span&gt;.GetColumnValue(&lt;span class=st&gt;"Email"&lt;/span&gt;)
&lt;b id=317&gt;317  &lt;/b&gt;        &lt;span class=kwd&gt;Dim&lt;/span&gt; sOut &lt;span class=kwd&gt;As String
&lt;b id=318&gt;318  &lt;/b&gt;        If&lt;/span&gt; result &lt;span class=kwd&gt;Is Nothing Then&lt;/span&gt; : sOut = &lt;span class=kwd&gt;String&lt;/span&gt;.Empty
&lt;b id=319&gt;319  &lt;/b&gt;        &lt;span class=kwd&gt;Else&lt;/span&gt; : sOut = result.ToString()
&lt;b id=320&gt;320  &lt;/b&gt;        &lt;span class=kwd&gt;End If
&lt;b id=321&gt;321  &lt;/b&gt;        Return&lt;/span&gt; sOut
&lt;b id=322&gt;322  &lt;/b&gt;
&lt;b id=323&gt;323  &lt;/b&gt;        &lt;span class=kwd&gt;End Get
&lt;b id=324&gt;324  &lt;/b&gt;        Set
&lt;b id=325&gt;325  &lt;/b&gt;            Me&lt;/span&gt;.MarkDirty()
&lt;b id=326&gt;326  &lt;/b&gt;            &lt;span class=kwd&gt;Me&lt;/span&gt;.SetColumnValue(&lt;span class=st&gt;"Email"&lt;/span&gt;, Value)
&lt;b id=327&gt;327  &lt;/b&gt;        &lt;span class=kwd&gt;End Set
&lt;b id=328&gt;328  &lt;/b&gt;    End Property
&lt;b id=329&gt;329  &lt;/b&gt;
&lt;b id=330&gt;330  &lt;/b&gt;    #End Region
&lt;b id=331&gt;331  &lt;/b&gt;
&lt;b id=332&gt;332  &lt;/b&gt;   #Region &lt;span class=st&gt;"ObjectDataSource support"&lt;/span&gt;&lt;/span&gt;
&lt;b id=333&gt;333  &lt;/b&gt;             &lt;span class=cmt&gt;''' &amp;lt;summary&amp;gt;
&lt;b id=334&gt;334  &lt;/b&gt;          ''' Inserts a record, can be used with the ObjectDataSource
&lt;b id=335&gt;335  &lt;/b&gt;         ''' &amp;lt;/summary&amp;gt;
&lt;/span&gt;&lt;b id=336&gt;336  &lt;/b&gt;          &lt;span class=kwd&gt;Public Shared Sub&lt;/span&gt; Insert(&lt;span class=kwd&gt;ByVal&lt;/span&gt; OrderID &lt;span class=kwd&gt;As&lt;/span&gt; Guid,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Type &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; LastName &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; FirstName &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Company &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Address &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; City &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; StateID &lt;span class=kwd&gt;As Integer&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; ZipCode &lt;span class=kwd&gt;As Integer&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Phone &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Email &lt;span class=kwd&gt;As String&lt;/span&gt;)
&lt;b id=337&gt;337  &lt;/b&gt;                 &lt;span class=kwd&gt;Dim&lt;/span&gt; item &lt;span class=kwd&gt;As&lt;/span&gt; Contact = &lt;span class=kwd&gt;New&lt;/span&gt; Contact()
&lt;b id=338&gt;338  &lt;/b&gt;                 		item.OrderID = OrderID
&lt;b id=339&gt;339  &lt;/b&gt;		item.Type = Type
&lt;b id=340&gt;340  &lt;/b&gt;		item.LastName = LastName
&lt;b id=341&gt;341  &lt;/b&gt;		item.FirstName = FirstName
&lt;b id=342&gt;342  &lt;/b&gt;		item.Company = Company
&lt;b id=343&gt;343  &lt;/b&gt;		item.Address = Address
&lt;b id=344&gt;344  &lt;/b&gt;		item.City = City
&lt;b id=345&gt;345  &lt;/b&gt;		item.StateID = StateID
&lt;b id=346&gt;346  &lt;/b&gt;		item.ZipCode = ZipCode
&lt;b id=347&gt;347  &lt;/b&gt;		item.Phone = Phone
&lt;b id=348&gt;348  &lt;/b&gt;		item.Email = Email
&lt;b id=349&gt;349  &lt;/b&gt;
&lt;b id=350&gt;350  &lt;/b&gt;                 item.Save(System.Web.HttpContext.Current.User.Identity.Name)
&lt;b id=351&gt;351  &lt;/b&gt;          &lt;span class=kwd&gt;End Sub&lt;/span&gt;
&lt;b id=352&gt;352  &lt;/b&gt;
&lt;b id=353&gt;353  &lt;/b&gt;             &lt;span class=cmt&gt;''' &amp;lt;summary&amp;gt;
&lt;b id=354&gt;354  &lt;/b&gt;          ''' Updates a record, can be used with the ObjectDataSource
&lt;b id=355&gt;355  &lt;/b&gt;         ''' &amp;lt;/summary&amp;gt;
&lt;/span&gt;&lt;b id=356&gt;356  &lt;/b&gt;          &lt;span class=kwd&gt;Public Shared Sub&lt;/span&gt; Update(&lt;span class=kwd&gt;ByVal&lt;/span&gt; OrderID &lt;span class=kwd&gt;As&lt;/span&gt; Guid,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Type &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; LastName &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; FirstName &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Company &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Address &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; City &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; StateID &lt;span class=kwd&gt;As Integer&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; ZipCode &lt;span class=kwd&gt;As Integer&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Phone &lt;span class=kwd&gt;As String&lt;/span&gt;,&lt;span class=kwd&gt;ByVal&lt;/span&gt; Email &lt;span class=kwd&gt;As String&lt;/span&gt;)
&lt;b id=357&gt;357  &lt;/b&gt;                 &lt;span class=kwd&gt;Dim&lt;/span&gt; item &lt;span class=kwd&gt;As&lt;/span&gt; Contact = &lt;span class=kwd&gt;New&lt;/span&gt; Contact()
&lt;b id=358&gt;358  &lt;/b&gt;                 		item.OrderID = OrderID
&lt;b id=359&gt;359  &lt;/b&gt;		item.Type = Type
&lt;b id=360&gt;360  &lt;/b&gt;		item.LastName = LastName
&lt;b id=361&gt;361  &lt;/b&gt;		item.FirstName = FirstName
&lt;b id=362&gt;362  &lt;/b&gt;		item.Company = Company
&lt;b id=363&gt;363  &lt;/b&gt;		item.Address = Address
&lt;b id=364&gt;364  &lt;/b&gt;		item.City = City
&lt;b id=365&gt;365  &lt;/b&gt;		item.StateID = StateID
&lt;b id=366&gt;366  &lt;/b&gt;		item.ZipCode = ZipCode
&lt;b id=367&gt;367  &lt;/b&gt;		item.Phone = Phone
&lt;b id=368&gt;368  &lt;/b&gt;		item.Email = Email
&lt;b id=369&gt;369  &lt;/b&gt;
&lt;b id=370&gt;370  &lt;/b&gt;                 item.IsNew = &lt;span class=kwd&gt;False&lt;/span&gt;
&lt;b id=371&gt;371  &lt;/b&gt;                 item.Save(System.Web.HttpContext.Current.User.Identity.Name)
&lt;b id=372&gt;372  &lt;/b&gt;          &lt;span class=kwd&gt;End Sub
&lt;b id=373&gt;373  &lt;/b&gt;
&lt;b id=374&gt;374  &lt;/b&gt;   #End Region
&lt;b id=375&gt;375  &lt;/b&gt;
&lt;b id=376&gt;376  &lt;/b&gt;   #Region &lt;span class=st&gt;"Columns Struct"&lt;/span&gt;&lt;/span&gt;
&lt;b id=377&gt;377  &lt;/b&gt;    &lt;span class=kwd&gt;Public Structure&lt;/span&gt; Columns
&lt;b id=378&gt;378  &lt;/b&gt;        		&lt;span class=kwd&gt;Public Shared&lt;/span&gt; OrderID &lt;span class=kwd&gt;As String
&lt;b id=379&gt;379  &lt;/b&gt;		Public Shared&lt;/span&gt; Type &lt;span class=kwd&gt;As String
&lt;b id=380&gt;380  &lt;/b&gt;		Public Shared&lt;/span&gt; LastName &lt;span class=kwd&gt;As String
&lt;b id=381&gt;381  &lt;/b&gt;		Public Shared&lt;/span&gt; FirstName &lt;span class=kwd&gt;As String
&lt;b id=382&gt;382  &lt;/b&gt;		Public Shared&lt;/span&gt; Company &lt;span class=kwd&gt;As String
&lt;b id=383&gt;383  &lt;/b&gt;		Public Shared&lt;/span&gt; Address &lt;span class=kwd&gt;As String
&lt;b id=384&gt;384  &lt;/b&gt;		Public Shared&lt;/span&gt; City &lt;span class=kwd&gt;As String
&lt;b id=385&gt;385  &lt;/b&gt;		Public Shared&lt;/span&gt; StateID &lt;span class=kwd&gt;As String
&lt;b id=386&gt;386  &lt;/b&gt;		Public Shared&lt;/span&gt; ZipCode &lt;span class=kwd&gt;As String
&lt;b id=387&gt;387  &lt;/b&gt;		Public Shared&lt;/span&gt; Phone &lt;span class=kwd&gt;As String
&lt;b id=388&gt;388  &lt;/b&gt;		Public Shared&lt;/span&gt; Email &lt;span class=kwd&gt;As String
&lt;b id=389&gt;389  &lt;/b&gt;Private&lt;/span&gt; x &lt;span class=kwd&gt;As Integer
&lt;b id=390&gt;390  &lt;/b&gt;
&lt;b id=391&gt;391  &lt;/b&gt;
&lt;b id=392&gt;392  &lt;/b&gt;        Shared Sub New&lt;/span&gt;()
&lt;b id=393&gt;393  &lt;/b&gt;        OrderID = &lt;span class=st&gt;"OrderID"&lt;/span&gt;
&lt;b id=394&gt;394  &lt;/b&gt;Type = &lt;span class=st&gt;"Type"&lt;/span&gt;
&lt;b id=395&gt;395  &lt;/b&gt;LastName = &lt;span class=st&gt;"LastName"&lt;/span&gt;
&lt;b id=396&gt;396  &lt;/b&gt;FirstName = &lt;span class=st&gt;"FirstName"&lt;/span&gt;
&lt;b id=397&gt;397  &lt;/b&gt;Company = &lt;span class=st&gt;"Company"&lt;/span&gt;
&lt;b id=398&gt;398  &lt;/b&gt;Address = &lt;span class=st&gt;"Address"&lt;/span&gt;
&lt;b id=399&gt;399  &lt;/b&gt;City = &lt;span class=st&gt;"City"&lt;/span&gt;
&lt;b id=400&gt;400  &lt;/b&gt;StateID = &lt;span class=st&gt;"StateID"&lt;/span&gt;
&lt;b id=401&gt;401  &lt;/b&gt;ZipCode = &lt;span class=st&gt;"ZipCode"&lt;/span&gt;
&lt;b id=402&gt;402  &lt;/b&gt;Phone = &lt;span class=st&gt;"Phone"&lt;/span&gt;
&lt;b id=403&gt;403  &lt;/b&gt;Email = &lt;span class=st&gt;"Email"&lt;/span&gt;
&lt;b id=404&gt;404  &lt;/b&gt;
&lt;b id=405&gt;405  &lt;/b&gt;        &lt;span class=kwd&gt;End Sub
&lt;b id=406&gt;406  &lt;/b&gt;    End Structure
&lt;b id=407&gt;407  &lt;/b&gt;   #End Region
&lt;b id=408&gt;408  &lt;/b&gt;
&lt;b id=409&gt;409  &lt;/b&gt;End Class&lt;/span&gt;
&lt;b id=410&gt;410  &lt;/b&gt;
&lt;b id=411&gt;411  &lt;/b&gt;        
&lt;/pre&gt;&amp;nbsp;</description></item><item><title>Re: Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1647466.aspx</link><pubDate>Mon, 02 Apr 2007 10:53:56 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1647466</guid><dc:creator>TATWORTH</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1647466.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1647466</wfw:commentRss><description>Please post the code of the Save method of your Contact class, the stored procedure that it calls and the table definition.</description></item><item><title>Cannot insert the value NULL into column 'OrderID' -- BUT IT IS NOT NULL!</title><link>http://forums.asp.net/thread/1647280.aspx</link><pubDate>Mon, 02 Apr 2007 08:11:05 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1647280</guid><dc:creator>madkidd</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1647280.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=54&amp;PostID=1647280</wfw:commentRss><description>&lt;p&gt;I am getting this error: "&lt;em&gt;Cannot insert the value NULL into column 'OrderID', table 'outman.outman.Contact'; column does not allow nulls. INSERT fails." -- &lt;/em&gt;But my value is not null. I did a response.write on it and it show the value. Of course, it would be nice if I could do a breakpoint but that doesn't seem to be working. I'll attach a couple of images below of my code, the error, and the breakpoint error.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.madkidd.com/asp/thecode.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.madkidd.com/asp/theerror.jpg" /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h1&gt;Server Error in '/' Application. 
&lt;hr /&gt;
&lt;/h1&gt;
&lt;h2&gt;&lt;i&gt;Cannot insert the value NULL into column 'OrderID', table 'outman.outman.Contact'; column does not allow nulls. INSERT fails.&lt;/i&gt; &lt;/h2&gt;
&lt;p&gt;&lt;font face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif "&gt;&lt;b&gt;Description: &lt;/b&gt;An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Exception Details: &lt;/b&gt;System.Data.SqlClient.SqlException: Cannot insert the value NULL into column 'OrderID', table 'outman.outman.Contact'; column does not allow nulls. INSERT fails.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Source Error:&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;
&lt;table class="" bgColor=#ffffcc&gt;

&lt;tr&gt;
&lt;td class=""&gt;&lt;code&gt;&lt;pre&gt;Line 89:         sContact.Phone = sPhone.Text.Trim
Line 90:         sContact.Email = sEmail.Text.Trim
&lt;font color=red&gt;Line 91:         sContact.Save()
&lt;/font&gt;Line 92: 
Line 93:         Dim bContact As Contact = New Contact()&lt;/pre&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;b&gt;&lt;font face=Verdana&gt;Source File: &lt;/font&gt;&lt;/b&gt;F:\Inetpub\wwwroot\Outman Knife\Checkout.aspx.vb&lt;b&gt;&lt;font face=Verdana&gt; &amp;nbsp;&amp;nbsp; Line: &lt;/font&gt;&lt;/b&gt;91 &lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font face=Verdana&gt;Stack Trace:&lt;/font&gt;&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;
&lt;table class="" bgColor=#ffffcc&gt;

&lt;tr&gt;
&lt;td class=""&gt;&lt;code&gt;&lt;pre&gt;[SqlException (0x80131904): Cannot insert the value NULL into column 'OrderID', table 'outman.outman.Contact'; column does not allow nulls. INSERT fails.]
   System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +857354
   System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +734966
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +188
   System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +1838
   System.Data.SqlClient.SqlDataReader.HasMoreRows() +150
   System.Data.SqlClient.SqlDataReader.ReadInternal(Boolean setTimeout) +214
   System.Data.SqlClient.SqlDataReader.Read() +9
   System.Data.SqlClient.SqlCommand.CompleteExecuteScalar(SqlDataReader ds, Boolean returnSqlValue) +39
   System.Data.SqlClient.SqlCommand.ExecuteScalar() +148
   SubSonic.SqlDataProvider.ExecuteScalar(QueryCommand qry) +209
   SubSonic.DataService.ExecuteScalar(QueryCommand cmd) +37
   SubSonic.ActiveRecord`1.Save(String userName) +120
   SubSonic.ActiveRecord`1.Save() +31
   Checkout.btnCheckout_Click(Object sender, EventArgs e) in F:\Inetpub\wwwroot\Outman Knife\Checkout.aspx.vb:91
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +105
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +107
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102
&lt;/pre&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;&lt;b&gt;&lt;font face=Verdana&gt;Version Information:&lt;/font&gt;&lt;/b&gt;&amp;nbsp;Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42 &lt;/p&gt;</description></item></channel></rss>