<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>www.kevincornwell.com &#187; .NET</title>
	<atom:link href="http://www.kevincornwell.com/blog/index.php/category/net/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kevincornwell.com/blog</link>
	<description></description>
	<lastBuildDate>Thu, 02 Dec 2010 16:31:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.2</generator>
		<item>
		<title>ASP.NET Add Sub Header Row (Group) To GridView Control</title>
		<link>http://www.kevincornwell.com/blog/index.php/asp-net-add-subheader-row-group-to-gridview-control/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/asp-net-add-subheader-row-group-to-gridview-control/#comments</comments>
		<pubDate>Thu, 02 Dec 2010 15:16:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[microsoft]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/?p=275</guid>
		<description><![CDATA[''' &#60;summary&#62; ''' Insert a sub header in a grid view. ''' &#60;/summary&#62; ''' &#60;param name=&#34;gv&#34;&#62;The GridView to insert the sub header row into.&#60;/param&#62; ''' &#60;param name=&#34;gvrBeforeRow&#34;&#62;The GridViewRow to insert the sub header before.&#60;/param&#62; ''' &#60;param name=&#34;sSubHeaderText&#34;&#62;The text to render in the sub header.&#60;/param&#62; ''' &#60;remarks&#62;&#60;/remarks&#62; Protected Sub insertGroupHeaderToGridView&#40;ByRef gv As GridView, ByVal gvrBeforeRow As [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.kevincornwell.com/blog/wp-content/uploads/2010/12/sub_group_headers_gridview.jpg"><img src="http://www.kevincornwell.com/blog/wp-content/uploads/2010/12/sub_group_headers_gridview-300x200.jpg" alt="" title="sub_group_headers_gridview" width="300" height="200" class="alignnone size-medium wp-image-288" /></a></p>

<div class="wp_syntax"><div class="code"><pre class="vbnet">    <span style="color: #008080; font-style: italic;">''' &lt;summary&gt;</span>
    <span style="color: #008080; font-style: italic;">''' Insert a sub header in a grid view.</span>
    <span style="color: #008080; font-style: italic;">''' &lt;/summary&gt;</span>
    <span style="color: #008080; font-style: italic;">''' &lt;param name=&quot;gv&quot;&gt;The GridView to insert the sub header row into.&lt;/param&gt;</span>
    <span style="color: #008080; font-style: italic;">''' &lt;param name=&quot;gvrBeforeRow&quot;&gt;The GridViewRow to insert the sub header before.&lt;/param&gt;</span>
    <span style="color: #008080; font-style: italic;">''' &lt;param name=&quot;sSubHeaderText&quot;&gt;The text to render in the sub header.&lt;/param&gt;</span>
    <span style="color: #008080; font-style: italic;">''' &lt;remarks&gt;&lt;/remarks&gt;</span>
    Protected <span style="color: #0600FF;">Sub</span> insertGroupHeaderToGridView<span style="color: #000000;">&#40;</span><span style="color: #FF8000;">ByRef</span> gv <span style="color: #FF8000;">As</span> GridView, <span style="color: #FF8000;">ByVal</span> gvrBeforeRow <span style="color: #FF8000;">As</span> GridViewRow, <span style="color: #FF8000;">ByVal</span> sSubHeaderText <span style="color: #FF8000;">As</span> <span style="color: #FF8000;">String</span><span style="color: #000000;">&#41;</span>
&nbsp;
        <span style="color: #0600FF;">Dim</span> visibleColumns <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> = gv.<span style="color: #0000FF;">Columns</span>.<span style="color: #0000FF;">Count</span>
&nbsp;
        <span style="color: #0600FF;">Dim</span> tbl <span style="color: #FF8000;">As</span> Table = gv.<span style="color: #0000FF;">Controls</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>
        <span style="color: #0600FF;">Dim</span> newRowIndex <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> = tbl.<span style="color: #0000FF;">Rows</span>.<span style="color: #0000FF;">GetRowIndex</span><span style="color: #000000;">&#40;</span>gvrBeforeRow<span style="color: #000000;">&#41;</span>
        <span style="color: #0600FF;">Dim</span> newRow <span style="color: #FF8000;">As</span> GridViewRow = <span style="color: #FF8000;">New</span> GridViewRow<span style="color: #000000;">&#40;</span>newRowIndex, newRowIndex, DataControlRowType.<span style="color: #0000FF;">DataRow</span>, DataControlRowState.<span style="color: #0600FF;">Normal</span><span style="color: #000000;">&#41;</span>
&nbsp;
        newRow.<span style="color: #0000FF;">Cells</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #FF8000;">New</span> TableCell<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
&nbsp;
        <span style="color: #0600FF;">If</span> <span style="color: #000000;">&#40;</span>visibleColumns &gt; <span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span> <span style="color: #FF8000;">Then</span>
            newRow.<span style="color: #0000FF;">Cells</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ColumnSpan</span> = visibleColumns
            newRow.<span style="color: #0000FF;">Cells</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Text</span> = sSubHeaderText
        <span style="color: #0600FF;">End</span> <span style="color: #0600FF;">If</span>
&nbsp;
        tbl.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">AddAt</span><span style="color: #000000;">&#40;</span>newRowIndex, newRow<span style="color: #000000;">&#41;</span>
&nbsp;
    <span style="color: #0600FF;">End</span> <span style="color: #0600FF;">Sub</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/asp-net-add-subheader-row-group-to-gridview-control/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.NET DataGrid (or GridView) To Excel Utility</title>
		<link>http://www.kevincornwell.com/blog/index.php/net-datagrid-or-gridview-to-excel-utility/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/net-datagrid-or-gridview-to-excel-utility/#comments</comments>
		<pubDate>Fri, 13 Mar 2009 15:00:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/net-datagrid-to-excel-utility/</guid>
		<description><![CDATA[protected void Button3_Click&#40;object sender, EventArgs e&#41; &#123; &#160; &#160; DataSet dsExport = dataSet; DataGrid dgExport = new DataGrid&#40;&#41;; dgExport.DataSource = dsExport; &#160; //ExportToExcel(); &#160; DataGridToExcel&#40;dgExport, Response&#41;; &#125; &#160; protected void DataGridToExcel&#40;DataGrid dGridExport, HttpResponse httpResp&#41; &#123; httpResp.Clear&#40;&#41;; httpResp.Charset = &#34;&#34;; httpResp.ContentType = &#34;application/vnd.ms-excel&#34;; StringWriter stringWrite = new StringWriter&#40;&#41;; HtmlTextWriter htmlWrite = new HtmlTextWriter&#40;stringWrite&#41;; DataGrid dGrid = [...]]]></description>
			<content:encoded><![CDATA[
<div class="wp_syntax"><div class="code"><pre class="csharp">    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> Button3_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
&nbsp;
&nbsp;
        DataSet dsExport = dataSet;
        DataGrid dgExport = <span style="color: #008000;">new</span> DataGrid<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        dgExport.<span style="color: #0000FF;">DataSource</span> = dsExport;
&nbsp;
        <span style="color: #008080; font-style: italic;">//ExportToExcel();</span>
&nbsp;
        DataGridToExcel<span style="color: #000000;">&#40;</span>dgExport, Response<span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> DataGridToExcel<span style="color: #000000;">&#40;</span>DataGrid dGridExport, HttpResponse httpResp<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        httpResp.<span style="color: #0000FF;">Clear</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        httpResp.<span style="color: #0000FF;">Charset</span> = <span style="color: #808080;">&quot;&quot;</span>;
        httpResp.<span style="color: #0000FF;">ContentType</span> = <span style="color: #808080;">&quot;application/vnd.ms-excel&quot;</span>;
        StringWriter stringWrite = <span style="color: #008000;">new</span> StringWriter<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        HtmlTextWriter htmlWrite = <span style="color: #008000;">new</span> HtmlTextWriter<span style="color: #000000;">&#40;</span>stringWrite<span style="color: #000000;">&#41;</span>;
        DataGrid dGrid = <span style="color: #008000;">new</span> DataGrid<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        dGrid = dGridExport;
        dGrid.<span style="color: #0000FF;">HeaderStyle</span>.<span style="color: #0000FF;">Font</span>.<span style="color: #0000FF;">Bold</span> = <span style="color: #0600FF;">true</span>;
        dGrid.<span style="color: #0000FF;">DataBind</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        dGrid.<span style="color: #0000FF;">RenderControl</span><span style="color: #000000;">&#40;</span>htmlWrite<span style="color: #000000;">&#41;</span>;
        httpResp.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>stringWrite.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
        httpResp.<span style="color: #0000FF;">End</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span></pre></div></div>

<p>Or to export a DataGrid to Excel use:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp">    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> LinkButton1_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        exportToExcel<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> exportToExcel<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        VerifyRenderingInServerForm<span style="color: #000000;">&#40;</span>GridView1<span style="color: #000000;">&#41;</span>;
&nbsp;
        <span style="color: #008080; font-style: italic;">/* This is a limit in Excel prior to Office 2007 */</span>
        <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>GridView1.<span style="color: #0000FF;">Rows</span>.<span style="color: #0000FF;">Count</span> &gt; <span style="color: #FF0000;">65536</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Page.<span style="color: #0000FF;">Response</span>.<span style="color: #0000FF;">Clear</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            Page.<span style="color: #0000FF;">Response</span>.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;Too many lines to export.&quot;</span><span style="color: #000000;">&#41;</span>;
            Page.<span style="color: #0000FF;">Response</span>.<span style="color: #0000FF;">End</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        <span style="color: #000000;">&#125;</span>
        GridView1.<span style="color: #0000FF;">AllowPaging</span> = <span style="color: #0600FF;">false</span>;
        GridView1.<span style="color: #0000FF;">AllowSorting</span> = <span style="color: #0600FF;">false</span>;
        GridView1.<span style="color: #0000FF;">DataBind</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        Response.<span style="color: #0000FF;">Clear</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        Response.<span style="color: #0000FF;">AddHeader</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;content-disposition&quot;</span>, <span style="color: #808080;">&quot;attachment; filename=FileName.xls&quot;</span><span style="color: #000000;">&#41;</span>;
        Response.<span style="color: #0000FF;">Charset</span> = <span style="color: #808080;">&quot;&quot;</span>;
        <span style="color: #008080; font-style: italic;">// If you want the option to open the Excel file without saving than</span>
        <span style="color: #008080; font-style: italic;">// comment out the line below</span>
        <span style="color: #008080; font-style: italic;">// Response.Cache.SetCacheability(HttpCacheability.NoCache);</span>
        Response.<span style="color: #0000FF;">ContentType</span> = <span style="color: #808080;">&quot;application/vnd.xls&quot;</span>;
        <span style="color: #000000;">System</span>.<span style="color: #0000FF;">IO</span>.<span style="color: #0000FF;">StringWriter</span> stringWrite = <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">IO</span>.<span style="color: #0000FF;">StringWriter</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>.<span style="color: #0000FF;">HtmlTextWriter</span> htmlWrite = <span style="color: #008000;">new</span> HtmlTextWriter<span style="color: #000000;">&#40;</span>stringWrite<span style="color: #000000;">&#41;</span>;
        GridView1.<span style="color: #0000FF;">RenderControl</span><span style="color: #000000;">&#40;</span>htmlWrite<span style="color: #000000;">&#41;</span>;
        Response.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>stringWrite.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
        Response.<span style="color: #0000FF;">End</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">override</span> <span style="color: #0600FF;">void</span> VerifyRenderingInServerForm<span style="color: #000000;">&#40;</span>Control control<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080; font-style: italic;">/* Confirms that an HtmlForm control is rendered for the specified ASP.NET
           server control at run time. */</span>
    <span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/net-datagrid-or-gridview-to-excel-utility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.NET: Convert A String Into A Compressed String</title>
		<link>http://www.kevincornwell.com/blog/index.php/net-compress-a-sring-into-a-compressed-string/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/net-compress-a-sring-into-a-compressed-string/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 20:53:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/net-compress-a-sring-into-a-compressed-string/</guid>
		<description><![CDATA[Written with .NET 2.0. Should work with 3.x as well. using System.IO.Compression; using System.Text; &#160; protected string Compress&#40;string text&#41; &#123; byte&#91;&#93; buffer = Encoding.UTF8.GetBytes&#40;text&#41;; MemoryStream ms = new MemoryStream&#40;&#41;; using &#40;GZipStream zip = new GZipStream&#40;ms, CompressionMode.Compress, true&#41;&#41; &#123; zip.Write&#40;buffer, 0, buffer.Length&#41;; &#125; &#160; ms.Position = 0; MemoryStream outStream = new MemoryStream&#40;&#41;; &#160; byte&#91;&#93; compressed = [...]]]></description>
			<content:encoded><![CDATA[<p>Written with .NET 2.0.  Should work with 3.x as well.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp"><span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">IO</span>.<span style="color: #0000FF;">Compression</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Text</span>;
&nbsp;
<span style="color: #0600FF;">protected</span> <span style="color: #FF0000;">string</span> Compress<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> text<span style="color: #000000;">&#41;</span>
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> buffer = Encoding.<span style="color: #0000FF;">UTF8</span>.<span style="color: #0000FF;">GetBytes</span><span style="color: #000000;">&#40;</span>text<span style="color: #000000;">&#41;</span>;
    MemoryStream ms = <span style="color: #008000;">new</span> MemoryStream<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #0600FF;">using</span> <span style="color: #000000;">&#40;</span>GZipStream zip = <span style="color: #008000;">new</span> GZipStream<span style="color: #000000;">&#40;</span>ms, CompressionMode.<span style="color: #0000FF;">Compress</span>, <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        zip.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>buffer, <span style="color: #FF0000;">0</span>, buffer.<span style="color: #0000FF;">Length</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    ms.<span style="color: #0000FF;">Position</span> = <span style="color: #FF0000;">0</span>;
    MemoryStream outStream = <span style="color: #008000;">new</span> MemoryStream<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
    <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> compressed = <span style="color: #008000;">new</span> <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span>ms.<span style="color: #0000FF;">Length</span><span style="color: #000000;">&#93;</span>;
    ms.<span style="color: #0000FF;">Read</span><span style="color: #000000;">&#40;</span>compressed, <span style="color: #FF0000;">0</span>, compressed.<span style="color: #0000FF;">Length</span><span style="color: #000000;">&#41;</span>;
&nbsp;
    <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> gzBuffer = <span style="color: #008000;">new</span> <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span>compressed.<span style="color: #0000FF;">Length</span> + <span style="color: #FF0000;">4</span><span style="color: #000000;">&#93;</span>;
    <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Buffer</span>.<span style="color: #0000FF;">BlockCopy</span><span style="color: #000000;">&#40;</span>compressed, <span style="color: #FF0000;">0</span>, gzBuffer, <span style="color: #FF0000;">4</span>, compressed.<span style="color: #0000FF;">Length</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Buffer</span>.<span style="color: #0000FF;">BlockCopy</span><span style="color: #000000;">&#40;</span>BitConverter.<span style="color: #0000FF;">GetBytes</span><span style="color: #000000;">&#40;</span>buffer.<span style="color: #0000FF;">Length</span><span style="color: #000000;">&#41;</span>, <span style="color: #FF0000;">0</span>, gzBuffer, <span style="color: #FF0000;">0</span>, <span style="color: #FF0000;">4</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #0600FF;">return</span> Convert.<span style="color: #0000FF;">ToBase64String</span><span style="color: #000000;">&#40;</span>gzBuffer<span style="color: #000000;">&#41;</span>;
<span style="color: #000000;">&#125;</span>
&nbsp;
&nbsp;
<span style="color: #0600FF;">protected</span> <span style="color: #FF0000;">string</span> Decompress<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> compressedText<span style="color: #000000;">&#41;</span>
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> gzBuffer = Convert.<span style="color: #0000FF;">FromBase64String</span><span style="color: #000000;">&#40;</span>compressedText<span style="color: #000000;">&#41;</span>;
    <span style="color: #0600FF;">using</span> <span style="color: #000000;">&#40;</span>MemoryStream ms = <span style="color: #008000;">new</span> MemoryStream<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">int</span> msgLength = BitConverter.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>gzBuffer, <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>;
        ms.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>gzBuffer, <span style="color: #FF0000;">4</span>, gzBuffer.<span style="color: #0000FF;">Length</span> - <span style="color: #FF0000;">4</span><span style="color: #000000;">&#41;</span>;
&nbsp;
        <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> buffer = <span style="color: #008000;">new</span> <span style="color: #FF0000;">byte</span><span style="color: #000000;">&#91;</span>msgLength<span style="color: #000000;">&#93;</span>;
&nbsp;
        ms.<span style="color: #0000FF;">Position</span> = <span style="color: #FF0000;">0</span>;
        <span style="color: #0600FF;">using</span> <span style="color: #000000;">&#40;</span>GZipStream zip = <span style="color: #008000;">new</span> GZipStream<span style="color: #000000;">&#40;</span>ms, CompressionMode.<span style="color: #0000FF;">Decompress</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            zip.<span style="color: #0000FF;">Read</span><span style="color: #000000;">&#40;</span>buffer, <span style="color: #FF0000;">0</span>, buffer.<span style="color: #0000FF;">Length</span><span style="color: #000000;">&#41;</span>;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">return</span> Encoding.<span style="color: #0000FF;">UTF8</span>.<span style="color: #0000FF;">GetString</span><span style="color: #000000;">&#40;</span>buffer<span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/net-compress-a-sring-into-a-compressed-string/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.net versions rant</title>
		<link>http://www.kevincornwell.com/blog/index.php/net-versions-rant/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/net-versions-rant/#comments</comments>
		<pubDate>Wed, 21 Nov 2007 16:21:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/net-versions-rant/</guid>
		<description><![CDATA[I am fairly certain the .NET versioning (numbering release) scheme is the dumbest ever created. Seriously who in their right mind does a point release that is a extension of the previous point but not the one before that (2.0 -> 3.0)? Then 3.0 -> to 3.5? wtf? Remember 1.0 and 1.1? Hmmm. How does [...]]]></description>
			<content:encoded><![CDATA[<p>I am fairly certain the .NET versioning (numbering release) scheme is the dumbest ever created.  Seriously who in their right mind does a point release that is a extension of the previous point but not the one before that (2.0 -> 3.0)?  Then 3.0 -> to 3.5?  wtf?  Remember 1.0 and 1.1?  Hmmm.  How does that fit in?  Oh yea, it doesn&#8217;t.</p>
<p>It went like this&#8230; </p>
<p>1.0 to 1.1.  Perfect.  Basically the 1.0 framework fixed with a couple new things.  That&#8217;s actually how it took place.</p>
<p>Then 2.0.  A whole new framework.  Yay!  We are good at this point.</p>
<p>Then 3.0.  Huh?  Another new framework?  Yay!? Wait, no, huh?  It&#8217;s not a framework? It&#8217;s a extension but only for 2.0 and not related at all to 1.0 or 1.1?  Oh good heavens MS.  </p>
<p>Then 3.5  Another extension to 2.0 or actually 3.0? Ok, now I&#8217;m getting mad.  What happened to 3.1, 3.2, etc.?  </p>
<p>What&#8217;s next? 8.0 with 10.0 extentions?</p>
<p>Might as well number it 38.5.  What&#8217;s the difference at this point?  There is NO consistency anyway and the higher the number the better right?</p>
<p>Anyway here is the 2.0 -> 3.5 relationships&#8230;<br />
<a href='http://www.kevincornwell.com/blog/wp-content/uploads/2007/11/dotnetframework35.png' title='dotnetframework35.png'><img src='http://www.kevincornwell.com/blog/wp-content/uploads/2007/11/dotnetframework35.thumbnail.png' alt='dotnetframework35.png' /></a></p>
<p>Seriously, if you know what the hell MS was thinking, post a comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/net-versions-rant/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>ASP.NET &#8211; Test NTFS Directory Access</title>
		<link>http://www.kevincornwell.com/blog/index.php/aspnet-test-ntfs-directory-access/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/aspnet-test-ntfs-directory-access/#comments</comments>
		<pubDate>Fri, 05 Oct 2007 20:42:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/aspnet-test-ntfs-directory-access/</guid>
		<description><![CDATA[protected void Page_Load&#40;object sender, EventArgs e&#41; &#123; &#160; // Show admin link if they have access to the admin directory. // &#160; hyperLinkAdmin.Visible = hasAccessToDir&#40;&#34;admin&#34;&#41;; &#125; &#160; protected bool hasAccessToDir&#40;string dir&#41; &#123; return System.IO.Directory.Exists&#40;MapPath&#40;dir&#41;&#41;; &#125;]]></description>
			<content:encoded><![CDATA[
<div class="wp_syntax"><div class="code"><pre class="csharp">    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> Page_Load<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">// Show admin link if they have access to the admin directory. //</span>
&nbsp;
        hyperLinkAdmin.<span style="color: #0000FF;">Visible</span> = hasAccessToDir<span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;admin&quot;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">protected</span> <span style="color: #FF0000;">bool</span> hasAccessToDir<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> dir<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #0600FF;">return</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">IO</span>.<span style="color: #0000FF;">Directory</span>.<span style="color: #0000FF;">Exists</span><span style="color: #000000;">&#40;</span>MapPath<span style="color: #000000;">&#40;</span>dir<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/aspnet-test-ntfs-directory-access/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create Active Directory User In .NET</title>
		<link>http://www.kevincornwell.com/blog/index.php/create-active-directory-user-in-net/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/create-active-directory-user-in-net/#comments</comments>
		<pubDate>Wed, 26 Sep 2007 20:43:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[active directory]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/create-active-directory-user-in-net/</guid>
		<description><![CDATA[C# public string CreateADUser&#40;string szUsername, string szDisplayName, string szFirstName, string szLastName, string szMiddleInitial, string szPhone, string szEmail, string szOrgUnit&#41; &#123; string szPassword = &#34;fooBar_123&#34;; //temp only. string szCNName = &#34;CN=&#34; + szUsername; &#160; try &#123; DirectoryEntry objContainer = new DirectoryEntry&#40;&#34;LDAP://OU=mySubOU,OU=myMainOU,DC=KEVINCORNWELL,DC=com&#34;&#41;; DirectoryEntry objUser = objContainer.Children.Add&#40;szCNName.ToLower&#40;&#41;, &#34;user&#34;&#41;; objUser.Properties&#91;&#34;sAMAccountName&#34;&#93;.Value = szUsername; objUser.Properties&#91;&#34;userPrincipalName&#34;&#93;.Value = szUsername + &#34;@KEVINCORNWELL.COM&#34;; objUser.Properties&#91;&#34;displayName&#34;&#93;.Value = [...]]]></description>
			<content:encoded><![CDATA[<p>C#</p>

<div class="wp_syntax"><div class="code"><pre class="csharp">    <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">string</span> CreateADUser<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> szUsername, <span style="color: #FF0000;">string</span> szDisplayName, <span style="color: #FF0000;">string</span> szFirstName, <span style="color: #FF0000;">string</span> szLastName, <span style="color: #FF0000;">string</span> szMiddleInitial, <span style="color: #FF0000;">string</span> szPhone, <span style="color: #FF0000;">string</span> szEmail, <span style="color: #FF0000;">string</span> szOrgUnit<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">string</span> szPassword = <span style="color: #808080;">&quot;fooBar_123&quot;</span>;  <span style="color: #008080; font-style: italic;">//temp only.</span>
        <span style="color: #FF0000;">string</span> szCNName = <span style="color: #808080;">&quot;CN=&quot;</span> + szUsername;
&nbsp;
        <span style="color: #0600FF;">try</span>
        <span style="color: #000000;">&#123;</span>
            DirectoryEntry objContainer = <span style="color: #008000;">new</span> DirectoryEntry<span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;LDAP://OU=mySubOU,OU=myMainOU,DC=KEVINCORNWELL,DC=com&quot;</span><span style="color: #000000;">&#41;</span>;
            DirectoryEntry objUser = objContainer.<span style="color: #0000FF;">Children</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>szCNName.<span style="color: #0000FF;">ToLower</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>, <span style="color: #808080;">&quot;user&quot;</span><span style="color: #000000;">&#41;</span>;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;sAMAccountName&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szUsername;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;userPrincipalName&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szUsername + <span style="color: #808080;">&quot;@KEVINCORNWELL.COM&quot;</span>;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;displayName&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szDisplayName;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;GivenName&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szFirstName;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;sn&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szLastName;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;Initials&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szMiddleInitial;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;mail&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szEmail;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;TelephoneNumber&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szPhone;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;Description&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = szOrgUnit;
            objUser.<span style="color: #0000FF;">CommitChanges</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            objUser.<span style="color: #0000FF;">Invoke</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;SetPassword&quot;</span>, szPassword<span style="color: #000000;">&#41;</span>;
            objUser.<span style="color: #0000FF;">CommitChanges</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            <span style="color: #FF0000;">int</span> flags = <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span><span style="color: #000000;">&#41;</span>objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;userAccountControl&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span>;
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;userAccountControl&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = flags &amp; ~0x2;  <span style="color: #008080; font-style: italic;">//Enable User Account</span>
            objUser.<span style="color: #0000FF;">Properties</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;pwdLastSet&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Value</span> = <span style="color: #FF0000;">0</span>;
            objUser.<span style="color: #0000FF;">CommitChanges</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            <span style="color: #0600FF;">return</span> <span style="color: #808080;">&quot;&quot;</span>;
        <span style="color: #000000;">&#125;</span>
        <span style="color: #0600FF;">catch</span> <span style="color: #000000;">&#40;</span>Exception ex<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">return</span> ex.<span style="color: #0000FF;">InnerException</span> + ex.<span style="color: #0000FF;">Message</span> + ex.<span style="color: #0000FF;">Source</span> + ex.<span style="color: #0000FF;">StackTrace</span> + ex.<span style="color: #0000FF;">Data</span>;
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/create-active-directory-user-in-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DD-WRT MAC Address Toolkit</title>
		<link>http://www.kevincornwell.com/blog/index.php/dd-wrt-mac-address-toolkit/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/dd-wrt-mac-address-toolkit/#comments</comments>
		<pubDate>Mon, 02 Jul 2007 19:56:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/dd-wrt-mac-address-toolkit/</guid>
		<description><![CDATA[This .NET 2.0 website adds additional functionality to associate a name and notes to the MAC addresses in a DD-WRT flashed router. I did this because the built in only has MAC fields which makes it cumbersome to associate names/computer to MACs when you have dozens of clients. The C# source code is included in [...]]]></description>
			<content:encoded><![CDATA[<p>This .NET 2.0 website adds additional functionality to associate a name and notes to the MAC addresses in a DD-WRT flashed router.    I did this because the built in only has MAC fields which makes it cumbersome to associate names/computer to MACs when you have dozens of clients.  The C# source code is included in the zip file.  I make use of the open source <a href="http://www.tamirgal.com/home/dev.aspx?Item=SharpSsh">SharpSSH</a> library to gain access to the router over SSH.   </p>
<p>You will have to edit several files for your particular environment.</p>
<p><a href='http://www.kevincornwell.com/blog/wp-content/uploads/2007/07/screen.gif' title='Screenie'><img src='http://www.kevincornwell.com/blog/wp-content/uploads/2007/07/screen.thumbnail.gif' alt='Screenie' /></a></p>
<p><a href='http://www.kevincornwell.com/blog/wp-content/uploads/2007/07/wireless-router-admin.zip' title='DD-WRT MAC Address Toolkit Website'>DD-WRT MAC Address Toolkit Website</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/dd-wrt-mac-address-toolkit/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to dynamically add a table row with input fields in .NET.</title>
		<link>http://www.kevincornwell.com/blog/index.php/how-to-dynamically-add-a-table-row-with-input-fields-in-net/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/how-to-dynamically-add-a-table-row-with-input-fields-in-net/#comments</comments>
		<pubDate>Wed, 27 Jun 2007 21:57:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/how-to-dynamically-add-a-table-row-with-input-fields-in-net/</guid>
		<description><![CDATA[C# using Visual Studio 2005&#8230; using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; &#160; public partial class _Default : System.Web.UI.Page &#123; // How many rows when the page initially loads. static int tDefaultRow_Count = 10; // Max number of rows. static int tMaxRows = 50; [...]]]></description>
			<content:encoded><![CDATA[<p>C# using Visual Studio 2005&#8230;</p>

<div class="wp_syntax"><div class="code"><pre class="csharp"><span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Data</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Configuration</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">Security</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>.<span style="color: #0000FF;">WebControls</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>.<span style="color: #0000FF;">WebControls</span>.<span style="color: #0000FF;">WebParts</span>;
<span style="color: #0600FF;">using</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>.<span style="color: #0000FF;">HtmlControls</span>;
&nbsp;
<span style="color: #0600FF;">public</span> partial <span style="color: #FF0000;">class</span> _Default : <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>.<span style="color: #0000FF;">Page</span> 
<span style="color: #000000;">&#123;</span>
    <span style="color: #008080; font-style: italic;">// How many rows when the page initially loads.</span>
    <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">int</span> tDefaultRow_Count = <span style="color: #FF0000;">10</span>;
    <span style="color: #008080; font-style: italic;">// Max number of rows.</span>
    <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">int</span> tMaxRows = <span style="color: #FF0000;">50</span>;
&nbsp;
    <span style="color: #008080; font-style: italic;">// Do not modify the following.</span>
    <span style="color: #0600FF;">private</span> <span style="color: #FF0000;">int</span> tUserAddedRowCount = <span style="color: #FF0000;">0</span>;
    <span style="color: #0600FF;">static</span> TextBox<span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> TextBox_Item = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#91;</span>tMaxRows<span style="color: #000000;">&#93;</span>;
    <span style="color: #0600FF;">static</span> TextBox<span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> TextBox_Desc = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#91;</span>tMaxRows<span style="color: #000000;">&#93;</span>;
    <span style="color: #0600FF;">static</span> TextBox<span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> TextBox_Quantity = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#91;</span>tMaxRows<span style="color: #000000;">&#93;</span>;
    <span style="color: #0600FF;">static</span> TextBox<span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> TextBox_Price = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#91;</span>tMaxRows<span style="color: #000000;">&#93;</span>;
    <span style="color: #0600FF;">static</span> TextBox<span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> TextBox_Total = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#91;</span>tMaxRows<span style="color: #000000;">&#93;</span>;
&nbsp;
    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> Page_Load<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        tUserAddedRowCount = <span style="color: #000000;">&#40;</span>ViewState<span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;tUserAddedRowCount&quot;</span><span style="color: #000000;">&#93;</span> != <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span> ? <span style="color: #FF0000;">int</span>.<span style="color: #0000FF;">Parse</span><span style="color: #000000;">&#40;</span>ViewState<span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;tUserAddedRowCount&quot;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> : <span style="color: #FF0000;">0</span>;
        <span style="color: #008080; font-style: italic;">//Response.Write(&quot;User Rows: &quot; + tUserAddedRowCount + &quot;\r\n&quot;);</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">// Recreate the extra rows created by the user on postback</span>
        <span style="color: #008080; font-style: italic;">// events (required to maintain state).</span>
        Add_Table_Rows<span style="color: #000000;">&#40;</span>tUserAddedRowCount + tDefaultRow_Count<span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> Button1_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
            <span style="color: #008080; font-style: italic;">// User clicked &quot;add a row&quot; button.</span>
&nbsp;
            Add_Table_Rows<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span>;
            ViewState<span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;tUserAddedRowCount&quot;</span><span style="color: #000000;">&#93;</span> = ++tUserAddedRowCount;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">void</span> Button2_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080; font-style: italic;">// User clicked &quot;Submit&quot; button.</span>
&nbsp;
        <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> x = <span style="color: #FF0000;">0</span>; x &lt; tDefaultRow_Count + tUserAddedRowCount; x++<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>TextBox_Item<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Text</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Length</span> &gt; <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span> 
            <span style="color: #000000;">&#123;</span> 
                Response.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>TextBox_Item<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Text</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
                Response.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>TextBox_Desc<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Text</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
                Response.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>TextBox_Quantity<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Text</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
                Response.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>TextBox_Price<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Text</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
                Response.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>TextBox_Total<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Text</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> Add_Table_Rows<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> NumberOfRows<span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> x = <span style="color: #FF0000;">0</span>; x &lt; NumberOfRows; x++<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            TableRow myRow = <span style="color: #008000;">new</span> TableRow<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            Table1.<span style="color: #0000FF;">Rows</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>myRow<span style="color: #000000;">&#41;</span>;
&nbsp;
            TableCell myCell0 = <span style="color: #008000;">new</span> TableCell<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            myRow.<span style="color: #0000FF;">Cells</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>myCell0<span style="color: #000000;">&#41;</span>;
            TextBox myTextbox0 = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            TextBox_Item<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span> = myTextbox0;
            myCell0.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>TextBox_Item<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
            TableCell myCell1 = <span style="color: #008000;">new</span> TableCell<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            myRow.<span style="color: #0000FF;">Cells</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>myCell1<span style="color: #000000;">&#41;</span>;
            TextBox myTextbox1 = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            TextBox_Desc<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span> = myTextbox1;
            myCell1.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>TextBox_Desc<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
            TableCell myCell2 = <span style="color: #008000;">new</span> TableCell<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            myRow.<span style="color: #0000FF;">Cells</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>myCell2<span style="color: #000000;">&#41;</span>;
            TextBox myTextbox2 = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            TextBox_Quantity<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span> = myTextbox2;
            myCell2.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>TextBox_Quantity<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
            TableCell myCell3 = <span style="color: #008000;">new</span> TableCell<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            myRow.<span style="color: #0000FF;">Cells</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>myCell3<span style="color: #000000;">&#41;</span>;
            TextBox myTextbox3 = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            TextBox_Price<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span> = myTextbox3;
            myCell3.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>TextBox_Price<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
            TableCell myCell4 = <span style="color: #008000;">new</span> TableCell<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            myRow.<span style="color: #0000FF;">Cells</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>myCell4<span style="color: #000000;">&#41;</span>;
            TextBox myTextbox4 = <span style="color: #008000;">new</span> TextBox<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
            TextBox_Total<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span> = myTextbox4;
            myCell4.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>TextBox_Total<span style="color: #000000;">&#91;</span>x<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/how-to-dynamically-add-a-table-row-with-input-fields-in-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Enable .NET Web Extensions In ISS via Command Line</title>
		<link>http://www.kevincornwell.com/blog/index.php/enable-net-web-extensions-in-iss-via-command-line/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/enable-net-web-extensions-in-iss-via-command-line/#comments</comments>
		<pubDate>Tue, 22 May 2007 18:56:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/enable-net-web-extensions-in-iss-via-command-line/</guid>
		<description><![CDATA[From command line C:\WINDOWS\Microsoft.NET\Framework\[framework version]\aspnet_regiis.exe -r After that has run, goto IIS &#8211;> Web Service Extensions &#8211;> ASP.NET [framework version] &#8211;> Enable.]]></description>
			<content:encoded><![CDATA[<p>From command line</p>
<pre>
C:\WINDOWS\Microsoft.NET\Framework\[framework version]\aspnet_regiis.exe -r
</pre>
<p>After that has run, goto IIS &#8211;> Web Service Extensions &#8211;> ASP.NET [framework version] &#8211;> Enable.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/enable-net-web-extensions-in-iss-via-command-line/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>.NET ConnectionString Encyption</title>
		<link>http://www.kevincornwell.com/blog/index.php/net-connectionstring-encyption/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/net-connectionstring-encyption/#comments</comments>
		<pubDate>Wed, 25 Apr 2007 20:23:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/net-connectionstring-encyption/</guid>
		<description><![CDATA[The following command will encrypt your connection sting in your web.config file. The connection string must all ready be in place. For C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG -pkm switch encrypts the machine.config rather and web.config (default). aspnet_regiis.exe -pef "connectionStrings" "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config" -prov "DataProtectionConfigurationProvider"]]></description>
			<content:encoded><![CDATA[<p>The following command will encrypt your connection sting in your web.config file.  The connection string must all ready be in place.</p>
<p>For C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG</p>
<p>-pkm switch encrypts the machine.config rather and web.config (default).</p>
<pre>
aspnet_regiis.exe -pef "connectionStrings" "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config" -prov "DataProtectionConfigurationProvider"
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/net-connectionstring-encyption/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET Excel Function</title>
		<link>http://www.kevincornwell.com/blog/index.php/aspnet-excel-function/</link>
		<comments>http://www.kevincornwell.com/blog/index.php/aspnet-excel-function/#comments</comments>
		<pubDate>Wed, 18 Apr 2007 17:50:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevincornwell.com/blog/index.php/aspnet-excel-function/</guid>
		<description><![CDATA[This function written in c# builds a MS excel out of a dataSet. private DataSet dataSet = new DataSet&#40;&#41;; private DataView dView = new DataView&#40;&#41;; &#160; private void LoadPeople&#40;&#41; &#123; SqlConnection conn = new SqlConnection&#40;&#34;Data Source=asdf;User ID=asdf;Password=asdf;Database=Directory&#34;&#41;; SqlDataAdapter dAdapter = new SqlDataAdapter&#40;&#34;SELECT * FROM People&#34;, conn&#41;; dAdapter.Fill&#40;dataSet, &#34;peeps&#34;&#41;; dView.Table = dataSet.Tables&#91;&#34;peeps&#34;&#93;; personel_cnt = dView.Count; dView.Table.Columns.Add&#40;&#34;is_a_member&#34;&#41;; [...]]]></description>
			<content:encoded><![CDATA[<p>This function written in c# builds a MS excel out of a dataSet.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp">    <span style="color: #0600FF;">private</span> DataSet dataSet = <span style="color: #008000;">new</span> DataSet<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #0600FF;">private</span> DataView dView = <span style="color: #008000;">new</span> DataView<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
    <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> LoadPeople<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        SqlConnection conn = <span style="color: #008000;">new</span> SqlConnection<span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;Data Source=asdf;User ID=asdf;Password=asdf;Database=Directory&quot;</span><span style="color: #000000;">&#41;</span>;
        SqlDataAdapter dAdapter = <span style="color: #008000;">new</span> SqlDataAdapter<span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;SELECT * FROM People&quot;</span>, conn<span style="color: #000000;">&#41;</span>;
        dAdapter.<span style="color: #0000FF;">Fill</span><span style="color: #000000;">&#40;</span>dataSet, <span style="color: #808080;">&quot;peeps&quot;</span><span style="color: #000000;">&#41;</span>;
        dView.<span style="color: #0000FF;">Table</span> = dataSet.<span style="color: #0000FF;">Tables</span><span style="color: #000000;">&#91;</span><span style="color: #808080;">&quot;peeps&quot;</span><span style="color: #000000;">&#93;</span>;
        personel_cnt = dView.<span style="color: #0000FF;">Count</span>;
        dView.<span style="color: #0000FF;">Table</span>.<span style="color: #0000FF;">Columns</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;is_a_member&quot;</span><span style="color: #000000;">&#41;</span>;
        conn.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> buildExcelReport<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
    <span style="color: #000000;">&#123;</span>
        DataSet dsExport = dataSet;
        <span style="color: #000000;">System</span>.<span style="color: #0000FF;">IO</span>.<span style="color: #0000FF;">StringWriter</span> tw = <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">IO</span>.<span style="color: #0000FF;">StringWriter</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>.<span style="color: #0000FF;">HtmlTextWriter</span> hw =
           <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Web</span>.<span style="color: #0000FF;">UI</span>.<span style="color: #0000FF;">HtmlTextWriter</span><span style="color: #000000;">&#40;</span>tw<span style="color: #000000;">&#41;</span>;
        DataGrid dgGrid = <span style="color: #008000;">new</span> DataGrid<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        dgGrid.<span style="color: #0000FF;">DataSource</span> = dsExport;
&nbsp;
        <span style="color: #008080; font-style: italic;">//Report Header</span>
        hw.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;My Super Duper Excel Report&quot;</span><span style="color: #000000;">&#41;</span>;
        hw.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;&amp;lt;br&amp;gt;&amp;mp;nbsp;&quot;</span><span style="color: #000000;">&#41;</span>;
        <span style="color: #008080; font-style: italic;">// Get the HTML for the control.</span>
        dgGrid.<span style="color: #0000FF;">HeaderStyle</span>.<span style="color: #0000FF;">Font</span>.<span style="color: #0000FF;">Bold</span> = <span style="color: #0600FF;">true</span>;
        dgGrid.<span style="color: #0000FF;">DataBind</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
        dgGrid.<span style="color: #0000FF;">RenderControl</span><span style="color: #000000;">&#40;</span>hw<span style="color: #000000;">&#41;</span>;
&nbsp;
        <span style="color: #008080; font-style: italic;">// Write the HTML back to the browser.</span>
        Response.<span style="color: #0000FF;">ContentType</span> = <span style="color: #808080;">&quot;application/vnd.ms-excel&quot;</span>;
        <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">EnableViewState</span> = <span style="color: #0600FF;">false</span>;
        Response.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>tw.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;
        Response.<span style="color: #0000FF;">End</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;
    <span style="color: #000000;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.kevincornwell.com/blog/index.php/aspnet-excel-function/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

