<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" version="2.0"><channel><title>Daily Coding</title><link>http://www.dailycoding.com</link><description>Daily Coding</description><copyright>Copyright 2008 dailycoding.com. All rights reserved.</copyright><creativeCommons:license>http://creativecommons.org/licenses/by/2.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by/2.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/DailyCoding" type="application/rss+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">DailyCoding</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><title>JavaScript Exception Handling Techniques</title><comments>http://www.dailycoding.com/Posts/javascript_exception_handling_techniques.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Scripting</category><description>&lt;p&gt;&lt;p&gt;Like the &lt;a href="http://www.dailycoding.com/Posts/object_oriented_programming_with_javascript__timer_class.aspx"&gt;Object oriented programming&lt;/a&gt; the exception handling is also not used while coding in JavaScript. That why in most of cases if there is any  problem in one part in a page then surprisingly other part also stops working. In this post we will be discussing the various techniques to handle exceptions in JavaScript.&lt;/p&gt;

&lt;h3&gt;Using try..catch block&lt;/h3&gt;

&lt;p&gt;try..catch block in JavaScript is very much similar to the regular C# try..catch block. The suspected code will be put in try block and all exceptions which will occur in the try block will be caught in catch block.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;window.onload = &lt;span ="kwrd"&gt;function&lt;/span&gt;()
{
    &lt;span class="kwrd"&gt;try&lt;/span&gt;
    {
        &lt;span class="kwrd"&gt;var&lt;/span&gt; x = 90;
        &lt;span class="kwrd"&gt;var&lt;/span&gt; value = x / y;
    }
    &lt;span class="kwrd"&gt;catch&lt;/span&gt;(err)
    {
        document.write(err.name + &lt;span class="str"&gt;&amp;quot;: &amp;quot;&lt;/span&gt; + err.message + &lt;span class="str"&gt;&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;&lt;/span&gt;);
    }
}
Output:
TypeError: 'y' is undefined&lt;/pre&gt;
&lt;!--more--&gt;
&lt;p&gt;In catch you will get the  object containing type and description of the exception. More over you can also use finally block in the same way as you use in C#.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;window.onload = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
{
    &lt;span class="kwrd"&gt;try&lt;/span&gt;
    {
        &lt;span class="kwrd"&gt;var&lt;/span&gt; x = 90;
        &lt;span class="kwrd"&gt;var&lt;/span&gt; value = x / y;
    }
    &lt;span class="kwrd"&gt;catch&lt;/span&gt;(err)
    {
        document.write(err.name + &lt;span class="str"&gt;&amp;quot;: &amp;quot;&lt;/span&gt; + err.message + &lt;span class="str"&gt;&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;&lt;/span&gt;);
    }
    &lt;span class="kwrd"&gt;finally&lt;/span&gt;
    {
        alert(&lt;span class="str"&gt;'This is finally block'&lt;/span&gt;);
    }
}&lt;/pre&gt;

&lt;h3&gt;Using onerror event&lt;/h3&gt;

&lt;p&gt;onerror event will be raised each time there is any error while performing a action in the document. This like on place exception handling similar to Application_Error in ASP.NET. Here is sample code which demonstrate this:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;window.onload = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
{
    &lt;span class="kwrd"&gt;var&lt;/span&gt; x = 90;
    &lt;span class="kwrd"&gt;var&lt;/span&gt; value = x / y;
}

window.onerror = &lt;span class="kwrd"&gt;function&lt;/span&gt;(errorMeaage, fileName, lineNumber)
{
    document.write(&lt;span class="str"&gt;'Error: '&lt;/span&gt; + errorMeaage);
}&lt;/pre&gt;

&lt;h3&gt;Using jQuery Solution&lt;/h3&gt;

&lt;p&gt;It is similar to using onerror but with jQuery syntax. The syntax is:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;$(window).error(
    &lt;span class="kwrd"&gt;function&lt;/span&gt;(errorMeaage, fileName, lineNumber)
    {
        &lt;span class="rem"&gt;// handle error here&lt;/span&gt;
    }
);&lt;/pre&gt;</description><link>http://www.dailycoding.com/Posts/javascript_exception_handling_techniques.aspx</link><pubDate>Tue, 04 Aug 2009 03:49</pubDate></item><item><title>Top 5 Small but Must have Extension Methods</title><comments>http://www.dailycoding.com/Posts/top_5_small_but_must_have_extension_methods.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>General</category><description>&lt;p&gt;In this post I want to cover some very basic and small extension methods which are very useful for any developer. All below mentioned extension method are not doing any complex operation. Rather they are just performing very simple task which you generally encounter a lots of times in your day today coding.&lt;/p&gt;

&lt;div class="downloadSource"&gt;&lt;a href="http://www.dailycoding.com/Uploads/2009/05/DailyCodingExtensions.zip"&gt;Download Source Files&lt;/a&gt;&lt;/div&gt;

&lt;h3&gt;1. IsNull&lt;/h3&gt;

&lt;p&gt;This is probably most commonly used expression. A lots of places in out code we check to null references. We usually add the obj == null or obj != null check to do this. Here is the IsNull extension method&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; IsNull(&lt;span class="kwrd"&gt;this&lt;/span&gt; &lt;span class="kwrd"&gt;object&lt;/span&gt; source)
{
    &lt;span class="kwrd"&gt;return&lt;/span&gt; source == &lt;span class="kwrd"&gt;null&lt;/span&gt;;
}&lt;/pre&gt;

&lt;p&gt;Using the you can avoid the lazy null check. Example:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ProcessData(DataSet input)
{
    &lt;span class="kwrd"&gt;if&lt;/span&gt; (!input.IsNull())
    {
        &lt;span class="rem"&gt;// business logic here&lt;/span&gt;
    }
}&lt;/pre&gt;
&lt;!--more--&gt;
&lt;h3&gt;2. FormatString&lt;/h3&gt;

&lt;p&gt;We often use string.Format to format the string like&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;string&lt;/span&gt; message = &lt;span class="kwrd"&gt;string&lt;/span&gt;.Format(&lt;span class="str"&gt;&amp;quot;Welcome {0} (Last login: {1})&amp;quot;&lt;/span&gt;, 
    userName, lastLogin);&lt;/pre&gt;

&lt;p&gt;The alternative way to do this is using below extension method&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; FormatString(&lt;span class="kwrd"&gt;this&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; format, &lt;span class="kwrd"&gt;params&lt;/span&gt; &lt;span class="kwrd"&gt;object&lt;/span&gt;[] args)
{
    &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt;.Format(format, args);
}&lt;/pre&gt;

&lt;p&gt;Now the above example can be re-written as&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;string&lt;/span&gt; message = &lt;span class="str"&gt;&amp;quot;Welcome {0} (Last login: {1})&amp;quot;&lt;/span&gt;.FormatString(userName, lastLogin);&lt;/pre&gt;

&lt;h3&gt;3. RaiseEvent&lt;/h3&gt;

&lt;p&gt;How you generally raise you events? I guess something like below&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnMyEvent(EventArgs e)
{
    &lt;span class="kwrd"&gt;if&lt;/span&gt; (MyEvent != &lt;span class="kwrd"&gt;null&lt;/span&gt;)
    {
        MyEvent(&lt;span class="kwrd"&gt;this&lt;/span&gt;, e);
    }
}&lt;/pre&gt;

&lt;p&gt;Here for each event you need to check the null reference before you raise it and also you create a new method so that you don’t have to add this check each place from where you are raising the event even if there is no special logic in the function. Here it the set of extension method to raise the events that matches the signature of EventHandler or EventHalder&amp;lt;TEventArgs&amp;gt;:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Raise(&lt;span class="kwrd"&gt;this&lt;/span&gt; EventHandler eventHandler, 
    &lt;span class="kwrd"&gt;object&lt;/span&gt; sender, EventArgs e)
{
    &lt;span class="kwrd"&gt;if&lt;/span&gt; (eventHandler != &lt;span class="kwrd"&gt;null&lt;/span&gt;)
    {
        eventHandler(sender, e);
    }
}

&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Raise&amp;lt;T&amp;gt;(&lt;span class="kwrd"&gt;this&lt;/span&gt; EventHandler&amp;lt;T&amp;gt; eventHandler,
    &lt;span class="kwrd"&gt;object&lt;/span&gt; sender, T e) &lt;span class="kwrd"&gt;where&lt;/span&gt; T : EventArgs
{
    &lt;span class="kwrd"&gt;if&lt;/span&gt; (eventHandler != &lt;span class="kwrd"&gt;null&lt;/span&gt;)
    {
        eventHandler(sender, e);
    }
}&lt;/pre&gt;

&lt;p&gt;Now this is how to raise the above event&lt;/p&gt;

&lt;pre class="csharpcode"&gt;MyEvent.Raise(&lt;span class="kwrd"&gt;this&lt;/span&gt;, e);&lt;/pre&gt;

&lt;h3&gt;4. Match&lt;/h3&gt;

&lt;p&gt;This extension method is for pattern matching in any string using Regex. This is how you generally use it&lt;/p&gt;

&lt;pre class="csharpcode"&gt;Regex regex = &lt;span class="kwrd"&gt;new&lt;/span&gt; Regex(&lt;span class="str"&gt;&amp;quot;[0-9]&amp;quot;&lt;/span&gt;);
&lt;span class="kwrd"&gt;if&lt;/span&gt; (regex.IsMatch(myData))
{
    &lt;span class="rem"&gt;// do someting&lt;/span&gt;
}&lt;/pre&gt;

&lt;p&gt;And here is the extension method to do this simply&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; Match(&lt;span class="kwrd"&gt;this&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;, &lt;span class="kwrd"&gt;string&lt;/span&gt; pattern)
{
    Regex regex = &lt;span class="kwrd"&gt;new&lt;/span&gt; Regex(pattern);
    &lt;span class="kwrd"&gt;return&lt;/span&gt; regex.IsMatch(&lt;span class="kwrd"&gt;value&lt;/span&gt;);
}&lt;/pre&gt;

&lt;p&gt;After this look at the code below. It became much simpler than the traditional approach:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;if&lt;/span&gt; (myData.Match(&lt;span class="str"&gt;&amp;quot;[0-9]&amp;quot;&lt;/span&gt;))
{
    &lt;span class="rem"&gt;// do someting&lt;/span&gt;
}&lt;/pre&gt;

&lt;p&gt;5. ToInt&lt;/p&gt;

&lt;p&gt;This method has three flavors, for Int16, Int32 and Int64. This can be easily used while doing string to int conversion. Here are the methods:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;long&lt;/span&gt; ToInt16(&lt;span class="kwrd"&gt;this&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;)
{
    Int16 result = 0;

    &lt;span class="kwrd"&gt;if&lt;/span&gt; (!&lt;span class="kwrd"&gt;string&lt;/span&gt;.IsNullOrEmpty(&lt;span class="kwrd"&gt;value&lt;/span&gt;))
        Int16.TryParse(&lt;span class="kwrd"&gt;value&lt;/span&gt;, &lt;span class="kwrd"&gt;out&lt;/span&gt; result);

    &lt;span class="kwrd"&gt;return&lt;/span&gt; result;
}

&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;long&lt;/span&gt; ToInt32(&lt;span class="kwrd"&gt;this&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;)
{
    Int32 result = 0;

    &lt;span class="kwrd"&gt;if&lt;/span&gt; (!&lt;span class="kwrd"&gt;string&lt;/span&gt;.IsNullOrEmpty(&lt;span class="kwrd"&gt;value&lt;/span&gt;))
        Int32.TryParse(&lt;span class="kwrd"&gt;value&lt;/span&gt;, &lt;span class="kwrd"&gt;out&lt;/span&gt; result);

    &lt;span class="kwrd"&gt;return&lt;/span&gt; result;
}

&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;long&lt;/span&gt; ToInt64(&lt;span class="kwrd"&gt;this&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;)
{
    Int64 result = 0;

    &lt;span class="kwrd"&gt;if&lt;/span&gt; (!&lt;span class="kwrd"&gt;string&lt;/span&gt;.IsNullOrEmpty(&lt;span class="kwrd"&gt;value&lt;/span&gt;))
        Int64.TryParse(&lt;span class="kwrd"&gt;value&lt;/span&gt;, &lt;span class="kwrd"&gt;out&lt;/span&gt; result);

    &lt;span class="kwrd"&gt;return&lt;/span&gt; result;
}&lt;/pre&gt;

&lt;p&gt;I hope you enjoyed reading this article. You can download the source file from here also&lt;/p&gt;

&lt;p&gt;&lt;a class="downloadSource" href="http://www.dailycoding.com/Uploads/2009/05/DailyCodingExtensions.zip"&gt;Download Source Files&lt;/a&gt;&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/top_5_small_but_must_have_extension_methods.aspx</link><pubDate>Thu, 28 May 2009 00:00</pubDate></item><item><title>Business Cards and Postcards Giveaway : Comment and Win</title><comments>http://www.dailycoding.com/Posts/business_cards_and_postcards_giveaway__comment_and_win.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Others</category><description>&lt;div style="margin: 8px; background-color: LightYellow; padding: 8px; border: solid 1px #a1a1a1;"&gt;
        &lt;p&gt;
            &lt;strong&gt;&lt;span&gt;
            This contest is closed now. There were very few comments; so it was not difficult
            to choose the winners. Here are the winners 
            &lt;/span&gt;&lt;/strong&gt;
        &lt;/p&gt;
        &lt;p style="padding-left: 10px;"&gt;
            &lt;strong&gt;&lt;span&gt;
            1st Prize - 1000 Standard Size Business Cards - Alex Lyman
            &lt;br /&gt;
            2nd Prize - 500 4x6" Postcards - Alin-T &lt;/span&gt;&lt;/strong&gt;
        &lt;/p&gt;
        &lt;p&gt;
            &lt;strong&gt;&lt;span&gt;
            Congrats winner. You will be soon contacted by UPrinting for the preferences. &lt;/span&gt;
            &lt;/strong&gt;
        &lt;/p&gt;
    &lt;/div&gt;
&lt;p&gt;Here is business card giveaway for the readers of DailyCoding. The prizes are sponsored by the &lt;a href="http://www.uprinting.com/"&gt;UPrinting&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;1st Prize - 1000 Standard Size Business Cards&lt;/p&gt;

&lt;p&gt;2nd Prize - 500 4x6&amp;quot; Postcards&lt;/p&gt;

&lt;p&gt;You can choose from any of their stocks for these items. The rules are very simple:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Leave a comment (along with your email address) at the end of this post, describing what you would use the free business cards and/or postcards for. &lt;/li&gt;

  &lt;li&gt;Two winners will be chosen based on most interesting comments.&lt;/li&gt;

  &lt;li&gt;There is no fix end date of this contest.&lt;/li&gt;

  &lt;li&gt;Winners in the United States and Canada qualify for free shipping. Shipping fees will apply to winners outside these areas.
    &lt;br /&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;!--more--&gt;
&lt;p&gt;&lt;img src="http://www.dailycoding.com/Uploads/2009/03/UPrinting.com.jpg" border="0" /&gt;&lt;/p&gt;
&lt;p&gt;Those who don’t know about the UPrinting; It is a leading online printing &lt;a href="http://www.uprinting.com/Business-Cards.html"&gt;business card printing&lt;/a&gt; company that provides high quality printing of business cards¸&lt;a href="http://www.uprinting.com/Postcards.html"&gt;postcards&lt;/a&gt;, brochures, catalogues, posters, flyers&amp;#160; at the most affordable prices.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/business_cards_and_postcards_giveaway__comment_and_win.aspx</link><pubDate>Thu, 26 Mar 2009 00:46</pubDate></item><item><title>Add Vista Look to your WPF Control on Windows XP</title><comments>http://www.dailycoding.com/Posts/add_vista_look_to_your_wpf_control_on_windows_xp.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Design</category><description>&lt;p&gt;Vista had come with new and cool look &amp;amp; feel. If you want to add the Vista Aero style theme to you WPF application running on Window XP then it is very easy trick. You don’t need any third party library or tool to achieve this.&lt;/p&gt;

&lt;p&gt;To do this all you need to do is to add following lines of xaml code into the designer of your window right after window tag:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ResourceDictionary&lt;/span&gt; &lt;span class="attr"&gt;Source&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;/PresentationFramework.Aero, 
   Version=3.0.0.0, Culture=neutral, 
   PublicKeyToken=31bf3856ad364e35, 
   ProcessorArchitecture=MSIL;component/themes/aero.normalcolor.xaml&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;If you want to apply this look through out the application then add this to app.xaml under &amp;lt;Application.Resources&amp;gt; section.&lt;/p&gt;
&lt;!--more--&gt;
&lt;h3&gt;Before Aero Theme&lt;/h3&gt;

&lt;p&gt;&lt;img title="xp_default_theme" style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="381" alt="xp_default_theme" src="http://www.dailycoding.com/Uploads/2009/01/xp_default_theme.png" width="426" border="0" /&gt; &lt;/p&gt;

&lt;h3&gt;After Aero Theme&lt;/h3&gt;

&lt;p&gt;&lt;img title="vista_aero_theme" style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="381" alt="vista_aero_theme" src="http://www.dailycoding.com/Uploads/2009/01/vista_aero_theme.png" width="426" border="0" /&gt;&lt;/p&gt;
&lt;p&gt;The limitation of this technique is that it don't change the look of container form. You can see it still looks like a normal XP form.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/add_vista_look_to_your_wpf_control_on_windows_xp.aspx</link><pubDate>Tue, 27 Jan 2009 06:22</pubDate></item><item><title>Customized Html Controls: Creating Custom Checkbox</title><comments>http://www.dailycoding.com/Posts/customized_html_controls_creating_custom_checkbox.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Design</category><description>&lt;p&gt;Under “Customized Html Controls” section I will discuss about how to create and customized standard html controls. This is first article in this category. This will discuss about how we can create a custom checkbox using CSS and jQuery.&lt;/p&gt;

&lt;h3&gt;Checkbox Image&lt;/h3&gt;

&lt;p&gt;For this you need two images, one for checked state of checkbox and another for unchecked state of the checkbox. However, you can also use a single image containing both checked and unchecked state and use CSS trick like I use. 
&lt;!--more--&gt;
  &lt;br /&gt;&lt;img src="http://www.dailycoding.com/Uploads/2008/12/CheckBox.png" /&gt; &lt;/p&gt;

&lt;h3&gt;Checkbox CSS&lt;/h3&gt;

&lt;p&gt;Here is the CSS classes we will be going to use for the checkbox&lt;/p&gt;

&lt;pre class="csharpcode"&gt;.checkBox
{
    background-position: 0px 0px;
}

.checkBoxClear
{
    background-position: -21px 0px;
}

.checkBox, .checkBoxClear
{
    background-image: url('CheckBox.png');
    background-repeat: no-repeat;
    display: inline-block;
    float: left;
    width: 21px;
    height: 21px;
    padding: 0px;
    margin: 0px;
    cursor: hand;
}&lt;/pre&gt;

&lt;h3&gt;Checkbox JavaScript&lt;/h3&gt;

&lt;p&gt;Finally below is the JavaScript code using jQuery which will control the checking and un-checking of our checkbox using click event. It will basically toggle the CSS which will change the state. 
  &lt;br /&gt;&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt; &lt;span class="attr"&gt;language&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&amp;lt;!--
$(document).ready(&lt;span class="kwrd"&gt;function&lt;/span&gt;()
{
    $(&lt;span class="str"&gt;&amp;quot;.checkBox,.checkBoxClear&amp;quot;&lt;/span&gt;).click(&lt;span class="kwrd"&gt;function&lt;/span&gt;(srcc)
    {
        &lt;span class="kwrd"&gt;if&lt;/span&gt; ($(&lt;span class="kwrd"&gt;this&lt;/span&gt;).hasClass(&lt;span class="str"&gt;&amp;quot;checkBox&amp;quot;&lt;/span&gt;))
        {
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).removeClass(&lt;span class="str"&gt;&amp;quot;checkBox&amp;quot;&lt;/span&gt;);
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).addClass(&lt;span class="str"&gt;&amp;quot;checkBoxClear&amp;quot;&lt;/span&gt;);
        }
        &lt;span class="kwrd"&gt;else&lt;/span&gt;
        {
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).removeClass(&lt;span class="str"&gt;&amp;quot;checkBoxClear&amp;quot;&lt;/span&gt;);
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).addClass(&lt;span class="str"&gt;&amp;quot;checkBox&amp;quot;&lt;/span&gt;);
        }
    });        
});
&lt;span class="rem"&gt;//--&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;Html Code&lt;/h3&gt;

&lt;p&gt;Here is a sample Custom Checkbox with the html code. 
  &lt;br /&gt; 
&lt;script language="javascript" type="text/javascript"&gt;
	&lt;!--
	$(document).ready(function()
	{
		$(".checkBox,.checkBoxClear").click(function(srcc)
		{
		    if ($(this).hasClass("checkBox"))
		    {
			    $(this).removeClass("checkBox");
			    $(this).addClass("checkBoxClear");
			}
			else
			{
			    $(this).removeClass("checkBoxClear");
			    $(this).addClass("checkBox");
			}
		});		
	});
	//--&gt;
	&lt;/script&gt;

&lt;style type="text/css"&gt;
.checkBox
{
	background-position: 0px 0px;
}

.checkBoxClear
{
	background-position: -21px 0px;
}

.checkBox, .checkBoxClear
{
	background-image: url('http://www.dailycoding.com/Uploads/2008/12/CheckBox.png');
	background-repeat: no-repeat;
	display: inline-block;
	float: left;
	width: 21px;
	height: 21px;
	padding: 0px;
	margin: 0px;
	cursor: hand;
}
&lt;/style&gt;

    &lt;h3&gt;Select options&lt;/h3&gt;
    &lt;div id="Div1" class="checkBox"&gt;&amp;nbsp;&lt;/div&gt;
	&lt;label for="Div1"&gt;
        Lorem ipsum dolor sit amet&lt;/label&gt;&lt;br /&gt;
    &lt;div id="Div2" class="checkBox"&gt;
        &amp;nbsp;&lt;/div&gt;
    &lt;label for="Div2"&gt;
        Aenean vitae elit quis erat interdum tempus&lt;/label&gt;
    &lt;div id="Div3" class="checkBox"&gt;
        &amp;nbsp;&lt;/div&gt;
    &lt;label for="Div3"&gt;
        Duis laoreet viverra quam&lt;/label&gt;
    &lt;div id="Div4" class="checkBox"&gt;
        &amp;nbsp;&lt;/div&gt;
    &lt;label for="Div4"&gt;
        Mauris pellentesque tristique erat&lt;/label&gt;
  &lt;br /&gt;&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;h3&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Select options&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;h3&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div1&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;checkBox&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;span class="attr"&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt; &lt;span class="attr"&gt;for&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div1&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    Lorem ipsum dolor sit amet&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div2&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;checkBox&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="attr"&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt; &lt;span class="attr"&gt;for&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div2&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    Aenean vitae elit quis erat interdum tempus&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div3&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;checkBox&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="attr"&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt; &lt;span class="attr"&gt;for&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div3&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    Duis laoreet viverra quam&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div4&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;checkBox&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="attr"&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt; &lt;span class="attr"&gt;for&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Div4&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    Mauris pellentesque tristique erat&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;</description><link>http://www.dailycoding.com/Posts/customized_html_controls_creating_custom_checkbox.aspx</link><pubDate>Wed, 17 Dec 2008 02:21</pubDate></item><item><title>Random Sort a List Using LINQ</title><comments>http://www.dailycoding.com/Posts/random_sort_a_list_using_linq.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>General</category><description>&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb397897.aspx"&gt;LINQ (Language Integrated Query)&lt;/a&gt; is a one of very useful feature of .net 3.5 framework. This allows you to query objects and perform complex operations simply and efficiently. There are lots of trick which can be used with the help of LINQ. In this article I am explaining how can we random sort a List using LINQ&lt;/p&gt;

&lt;h3&gt;Random Sort&lt;/h3&gt;

&lt;!--more--&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Consider the below Employee class:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; Employee
{
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; Id
    {
        get;
        set;
    }
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; Name
    {
        get;
        set;
    }
}&lt;/pre&gt;

&lt;p&gt;This is how you can randomly sort the List&amp;lt;Employee&amp;gt; object:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;List&amp;lt;Employee&amp;gt; list = &lt;span class="kwrd"&gt;new&lt;/span&gt; List&amp;lt;Employee&amp;gt;();

list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 1, Name = &lt;span class="str"&gt;&amp;quot;Davolio Nancy&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 2, Name = &lt;span class="str"&gt;&amp;quot;Fuller Andrew&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 3, Name = &lt;span class="str"&gt;&amp;quot;Leverling Janet&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 4, Name = &lt;span class="str"&gt;&amp;quot;Peacock Margaret&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 5, Name = &lt;span class="str"&gt;&amp;quot;Buchanan Steven&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 6, Name = &lt;span class="str"&gt;&amp;quot;Suyama Michael&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 7, Name = &lt;span class="str"&gt;&amp;quot;King Robert&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 8, Name = &lt;span class="str"&gt;&amp;quot;Callahan Laura&amp;quot;&lt;/span&gt; });
list.Add(&lt;span class="kwrd"&gt;new&lt;/span&gt; Employee { Id = 9, Name = &lt;span class="str"&gt;&amp;quot;Dodsworth Anne&amp;quot;&lt;/span&gt; });

list = list.OrderBy(emp =&amp;gt; Guid.NewGuid()).ToList();&lt;/pre&gt;</description><link>http://www.dailycoding.com/Posts/random_sort_a_list_using_linq.aspx</link><pubDate>Fri, 21 Nov 2008 02:16</pubDate></item><item><title>Purely CSS Callouts</title><comments>http://www.dailycoding.com/Posts/purely_css_callouts.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Design</category><description>&lt;p&gt;This article explains how you can create callouts using CSS and without using a single image. This will use the CSS thick border technique for creating slant area. Look at the callouts below:&lt;/p&gt;
&lt;style type="text/css"&gt;
	.calloutUp
	{
		height: 0;
		width: 0;
		border-bottom: 12px solid #ffffff;
		border-left: 12px dotted transparent;
		border-right: 12px dotted transparent;
		left: 0px;
		top: 0px;
		margin-left: 20px;
		z-index: 10;
	}
	.calloutUp2
	{
		position: relative;
		left: -10px;
		top: 2px;
		height: 0;
		width: 0;
		border-bottom: 10px solid #9999ff;
		border-left: 10px dotted transparent;
		border-right: 10px dotted transparent;
		z-index: 11;
	}
	.calloutDown
	{
		height: 0;
		width: 0;
		border-top: 12px solid #ffffff;
		border-left: 12px dotted transparent;
		border-right: 12px dotted transparent;
		left: 0px;
		top: 0px;
		margin-left: 20px;
		z-index: 11;
	}
	.calloutDown2
	{
		position: relative;
		left: -10px;
		top: -12px;
		height: 0;
		width: 0;
		border-top: 10px solid #9999ff;
		border-left: 10px dotted transparent;
		border-right: 10px dotted transparent;
		z-index: 10;
	}
	.divContainerUp
	{
		background-color: #9999ff;
		border: solid 1px #ffffff;
		position: relative;
		top: -1px;
		z-index: 9;
		width: 500px;
		padding: 4px;
	}
	.divContainerDown
	{
		background-color: #9999ff;
		border: solid 1px #ffffff;
		position: relative;
		top: 1px;
		z-index: 3;
		width: 500px;
		padding: 4px;
	}
	.divContainerMain
	{
		background-color: #ccccff;
		padding: 16px;
	}
&lt;/style&gt;
&lt;p&gt;
&lt;div class="divContainerMain"&gt;
&lt;div class="divContainerDown"&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam dignissim tincidunt turpis. Mauris pede. Vestibulum gravida magna id nibh. In nec urna. Sed ut purus. Duis sit amet lacus ornare massa mattis consequat. Donec nec tellus. Nam quis nulla viverra diam faucibus dictum. Nulla facilisi. Donec sit amet dolor at sapien accumsan consectetuer. &lt;/div&gt;
&lt;div class="calloutDown"&gt;
&lt;div class="calloutDown2"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;a href="#"&gt;Ramesh Soni&lt;/a&gt; Said&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;This callout is created only using CSS. The arrow shown in the callout is basically a DIV with thick up border and transparent left and right border. 
&lt;!--more--&gt;
And its height and width are 0. You only see the border or the DIV which will create the arrow like effect. 
&lt;p&gt;Here is the complete CSS and html code of this: 
&lt;p&gt;
&lt;h3&gt;CSS Code&lt;/h3&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="text/css"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;    
    .calloutUp
    {
        height: 0;
        width: 0;
        border-bottom: 12px solid #ffffff;
        border-left: 12px dotted transparent;
        border-right: 12px dotted transparent;
        left: 0px;
        top: 0px;
        margin-left: 20px;
        z-index: 10;
    }
    .calloutUp2
    {
        position: relative;
        left: -10px;
        top: 2px;
        height: 0;
        width: 0;
        border-bottom: 10px solid #9999ff;
        border-left: 10px dotted transparent;
        border-right: 10px dotted transparent;
        z-index: 11;
    }
    .calloutDown
    {
        height: 0;
        width: 0;
        border-top: 12px solid #ffffff;
        border-left: 12px dotted transparent;
        border-right: 12px dotted transparent;
        left: 0px;
        top: 0px;
        margin-left: 20px;
        z-index: 11;
    }
    .calloutDown2
    {
        position: relative;
        left: -10px;
        top: -12px;
        height: 0;
        width: 0;
        border-top: 10px solid #9999ff;
        border-left: 10px dotted transparent;
        border-right: 10px dotted transparent;
        z-index: 10;
    }
    .divContainerUp
    {
        background-color: #9999ff;
        border: solid 1px #ffffff;
        position: relative;
        top: -1px;
        z-index: 9;
        width: 500px;
        padding: 4px;
    }
    .divContainerDown
    {
        background-color: #9999ff;
        border: solid 1px #ffffff;
        position: relative;
        top: 1px;
        z-index: 3;
        width: 500px;
        padding: 4px;
    }
    .divContainerMain
    {
        background-color: #ccccff;
        padding: 8px;
    }
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
&lt;h3&gt;Html Code&lt;/h3&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="divContainerMain"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;h3&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Up Side Callout&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;h3&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Ramesh Soni&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; Said&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="calloutUp"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="calloutUp2"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="divContainerUp"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam dignissim tincidunt
        turpis. Mauris pede. Vestibulum gravida magna id nibh. In nec urna. Sed ut purus.
        Duis sit amet lacus ornare massa mattis consequat. Donec nec tellus. Nam quis nulla
        viverra diam faucibus dictum. Nulla facilisi. Donec sit amet dolor at sapien accumsan
        consectetuer.
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;h3&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Down Side Callout&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;h3&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="divContainerDown"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam dignissim tincidunt
        turpis. Mauris pede. Vestibulum gravida magna id nibh. In nec urna. Sed ut purus.
        Duis sit amet lacus ornare massa mattis consequat. Donec nec tellus. Nam quis nulla
        viverra diam faucibus dictum. Nulla facilisi. Donec sit amet dolor at sapien accumsan
        consectetuer.
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="calloutDown"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="calloutDown2"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Ramesh Soni&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; Said&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;Here is a full example and up side and down side callouts.
&lt;div class="divContainerMain"&gt;
	&lt;h3&gt;
		Up Side Callout&lt;/h3&gt;
	&lt;div&gt;
		&lt;a href="#"&gt;Ramesh Soni&lt;/a&gt; Said&lt;/div&gt;
	&lt;div class="calloutUp"&gt;
		&lt;div class="calloutUp2"&gt;
		&lt;/div&gt;
	&lt;/div&gt;
	&lt;div class="divContainerUp"&gt;
		Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam dignissim tincidunt
		turpis. Mauris pede. Vestibulum gravida magna id nibh. In nec urna. Sed ut purus.
		Duis sit amet lacus ornare massa mattis consequat. Donec nec tellus. Nam quis nulla
		viverra diam faucibus dictum. Nulla facilisi. Donec sit amet dolor at sapien accumsan
		consectetuer.
	&lt;/div&gt;
	&lt;br /&gt;
	&lt;h3&gt;
		Down Side Callout&lt;/h3&gt;
	&lt;div class="divContainerDown"&gt;
		Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam dignissim tincidunt
		turpis. Mauris pede. Vestibulum gravida magna id nibh. In nec urna. Sed ut purus.
		Duis sit amet lacus ornare massa mattis consequat. Donec nec tellus. Nam quis nulla
		viverra diam faucibus dictum. Nulla facilisi. Donec sit amet dolor at sapien accumsan
		consectetuer.
	&lt;/div&gt;
	&lt;div class="calloutDown"&gt;
		&lt;div class="calloutDown2"&gt;
		&lt;/div&gt;
	&lt;/div&gt;
	&lt;div&gt;
		&lt;a href="#"&gt;Ramesh Soni&lt;/a&gt; Said&lt;/div&gt;
&lt;/div&gt;&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/purely_css_callouts.aspx</link><pubDate>Thu, 16 Oct 2008 02:16</pubDate></item><item><title>Top 7 Tip for Optimizing CSS</title><comments>http://www.dailycoding.com/Posts/top_7_tip_for_optimizing_css.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Design</category><description>&lt;p&gt;CSS is very important component for design and layout of web pages. These includes all the syles like colors, size, position, backgrounds, fonts etc. to enrich the look and feel of you pages, but it is very easy for CSS to grow to a huge size if you are not following proper guidelines to optimize this. By doing so you are not only making you css cleaner but also decreasing the response size of file. Here are some tip for optimizing the CSS:&lt;/p&gt;
&lt;!--more--&gt;
&lt;img src="http://www.dailycoding.com/Uploads/2008/10/css_logo_medium.png" width="100" height="100" /&gt;
&lt;h3&gt;1. Aggregate Multiple Properties&lt;/h3&gt;

&lt;p&gt;Combine multiple properties. For example&lt;/p&gt;

&lt;p&gt;for margin, instead of&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;margin-top: 8px;
margin-right: 4px;
margin-bottom: 8px;
margin-left: 4px;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;you can use&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;margin: 8px 4px 8px 4px;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;for font instead of&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;font-family: Tahoma;
font-weight: bold;
font-style: italic;
font-size: 12px;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;you can use&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;font: italic bold 12px Tahoma;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;for background instead of&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;background-image: url(bk_main.jpg);
background-repeat: repeat-x;
background-color: #ccccff;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;you can use&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;background: #ccccff url(bk_main.jpg) repeat-x;&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;2. Group Common Styles&lt;/h3&gt;

&lt;p&gt;If you are having something like below where two element share some common properties&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;H2
{
    font-size: 16pt;
    color: #4169e1;
    font-family: 'Trebuchet MS' , Arial;
    margin: 4px 0px 2px;
    padding-left: 10px;
    text-decoration: underline;
}

H3
{
    font-size: 14pt;
    color: #4169e1;
    font-family: 'Trebuchet MS' , Arial;
    margin: 4px 0px 2px;
    padding-left: 10px;
    text-decoration: underline;
}&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;Then you can share their common properties like below&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;H2, H3
{
    color: #4169e1;
    font-family: 'Trebuchet MS' , Arial;
    margin: 4px 0px 2px;
    padding-left: 10px;
    text-decoration: underline;
}

H2
{
    font-size: 16pt;
}

H3
{
    font-size: 14pt;
}&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;3. Use Shorthand Hexadecimal for Simple Colors&lt;/h3&gt;

&lt;p&gt;You can also specify simple colors using shorthand color names. For example&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="op"&gt;#99ff33 can be replace with #9f3
#ff0000 can be replace with #f00
#000000 can be replace with #000&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;4. Use Classes in Parent Elements&lt;/h3&gt;

&lt;p&gt;You may specify element style in the parent control. Instead of using&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Home&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;About&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Contact&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Sitemap&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;you may also do this&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Home&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;About&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Contact&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Sitemap&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;5. Don't Use Giddy Comments&lt;/h3&gt;

&lt;p&gt;The below comment&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;/*****************************/&lt;/span&gt;
&lt;span class="rem"&gt;/**********Header CSS*********/&lt;/span&gt;
&lt;span class="rem"&gt;/*****************************/&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;can also simply written as&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;/*Header CSS*/&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;6. Never Attach Style to Elements&lt;/h3&gt;

&lt;p&gt;Always specify styles in CSS. Don't add styles directly to elements. Instead of &lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;font-size: 14pt ;font-family: Arial; text-decoration: underline;&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Home&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;font-size: 14pt ;font-family: Arial; text-decoration: underline;&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;About&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;font-size: 14pt ;font-family: Arial; text-decoration: underline;&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Contact&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;font-size: 14pt ;font-family: Arial; text-decoration: underline;&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Sitemap&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;use&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Home&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;About&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Contact&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;myClass&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Sitemap&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;7. Remove Extra White Spaces and Line breaks&lt;/h3&gt;

&lt;p&gt;For decreasing the file size you can remove the extra white spaces and lines breaks between styles.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/top_7_tip_for_optimizing_css.aspx</link><pubDate>Mon, 06 Oct 2008 02:13</pubDate></item><item><title>Animated Progress Bar without Images</title><comments>http://www.dailycoding.com/Posts/animated_progress_bar_without_images.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Scripting</category><description>&lt;p&gt;Look at below progress bars&lt;/p&gt;

&lt;p&gt;&lt;style type="text/css" media="screen"&gt;



		.progressTable
		{
			border: solid 1px #e1e1e1;
		}
		
		.size, .cell1, .cell2, .cell3
		{
			width: 15px;
			height: 15px;	
		}
		.cell1
		{		
			background-color: #22dd22;
			display: none;
		}
		.cell2
		{		
			background-color: #dd2222;
			display: none;
		}
		.cell3
		{		
			background-color: #2222dd;
			display: none;
		}
	&lt;/style&gt;&lt;script language="javascript"&gt;



	&lt;!--
	$(document).ready(function()
	{
		var bar1 = new ProgressBar("progressContainer1", 10, "progressTable", "cell1", "size");
		bar1.Start();
		
		var bar2 = new ProgressBar("progressContainer2", 10, "progressTable", "cell2", "size");
		bar2.Start();
		
		var bar3 = new ProgressBar("progressContainer3", 10, "progressTable", "cell3", "size");
		bar3.Start();
	});
		
	var ProgressBar = function(divId, cellCount, tableCss, cellCss, sizeCss)
	{
		var index = -1;
		var timerObj = new Timer();
		
		this.Init = function()
		{
			var str = "&lt;table class='" + tableCss + "' cellpadding='0' cellspacing='1'&gt;&lt;tr&gt;";
			for(var cnt=0; cnt&lt;cellCount; cnt++)
			{
				str += "&lt;td class='" + sizeCss + "'&gt;&lt;div class='" + cellCss + " " + cellCss + cnt + "'&gt;&lt;/div&gt;&lt;/td&gt;";
			}
			str += "&lt;/tr&gt;&lt;/table&gt;";
			$("#" + divId).append(str);
			
			timerObj.Interval = 100;
			timerObj.Tick = timer_tick;
		}
		
		this.Start = function()
		{
			this.Init();
			timerObj.Start();
		}
		
		function timer_tick()
		{
			//debugger;
			index = index + 1;
			index = index % cellCount;
			
			$("#" + divId + " ." + cellCss + index).fadeIn(10);
			$("#" + divId + " ." + cellCss + index).fadeOut(500);
		}
	}
	
	// Declaring class "Timer"
	var Timer = function()
	{		
		// Property: Frequency of elapse event of the timer in millisecond
		this.Interval = 1000;
		
		// Property: Whether the timer is enable or not
		this.Enable = new Boolean(false);
		
		// Event: Timer tick
		this.Tick;
		
		// Member variable: Hold interval id of the timer
		var timerId = 0;
		
		// Member variable: Hold instance of this class
		var thisObject;
		
		// Function: Start the timer
		this.Start = function()
		{
			this.Enable = new Boolean(true);
	
			thisObject = this;
			if (thisObject.Enable)
			{
				thisObject.timerId = setInterval(
				function()
				{
					thisObject.Tick(); 
				}, thisObject.Interval);
			}
		};
		
		// Function: Stops the timer
		this.Stop = function()
		{			
			thisObject.Enable = new Boolean(false);
			clearInterval(thisObject.timerId);
		};
	
	};
	
	//--&gt;
	&lt;/script&gt;&lt;/p&gt;

&lt;div id="progressContainer1"&gt;&lt;/div&gt;

&lt;br /&gt;

&lt;div id="progressContainer2"&gt;&lt;/div&gt;

&lt;br /&gt;

&lt;div id="progressContainer3"&gt;&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;These don't contain any images. They all are pure JavaScript based progress bars. They uses the &lt;a href="http://www.dailycoding.com/Posts/object_oriented_programming_with_javascript__timer_class.aspx"&gt;JavaScript Timer Class&lt;/a&gt; for the delay and jQuery fading function transparency for animated effect.&lt;!--more--&gt; To add a progress bar to the page is very easy, just add include the ProgressBar class and add following code:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;var&lt;/span&gt; bar1 = &lt;span class="kwrd"&gt;new&lt;/span&gt; ProgressBar(&lt;span class="str"&gt;&amp;quot;progressContainer1&amp;quot;&lt;/span&gt;, 10, 
  &lt;span class="str"&gt;&amp;quot;progressTable&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;cell1&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;size&amp;quot;&lt;/span&gt;);
bar1.Start();&lt;/pre&gt;

&lt;p&gt;First parameter is the ID of the div which will contain the progress bar. Second parameter is number of cells you want to have in progress bar. Third is the css class for outer table of the progress bar. Fourth is the the css class for each celll and fifth the the css class for the size of each cell.&lt;/p&gt;

&lt;p&gt;Here is the code for the whole example and &lt;a href="http://www.dailycoding.com/Uploads/2008/09/Progress.htm"&gt;this&lt;/a&gt; is the link to the live demo.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt; &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Animated Progress Bar without images&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;

    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;jquery.js&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;

    &amp;lt;style media=&lt;span class="str"&gt;&amp;quot;screen&amp;quot;&lt;/span&gt; type=&lt;span class="str"&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt;&amp;gt;
        .progressTable
        {
            border: solid 1px #e1e1e1;
        }
        
        .size, .cell1, .cell2, .cell3
        {
            width: 15px;
            height: 15px;    
        }
        .cell1
        {        
            background-color: #22dd22;
            display: none;
        }
        .cell2
        {        
            background-color: #dd2222;
            display: none;
        }
        .cell3
        {        
            background-color: #2222dd;
            display: none;
        }
    &amp;lt;/style&amp;gt;
    &amp;lt;script language=&lt;span class="str"&gt;&amp;quot;javascript&amp;quot;&lt;/span&gt;&amp;gt;
    &amp;lt;!--
    $(document).ready(&lt;span class="kwrd"&gt;function&lt;/span&gt;()
    {
        &lt;span class="kwrd"&gt;var&lt;/span&gt; bar1 = &lt;span class="kwrd"&gt;new&lt;/span&gt; ProgressBar(&lt;span class="str"&gt;&amp;quot;progressContainer1&amp;quot;&lt;/span&gt;, 10, 
          &lt;span class="str"&gt;&amp;quot;progressTable&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;cell1&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;size&amp;quot;&lt;/span&gt;);
        bar1.Start();
        
        &lt;span class="kwrd"&gt;var&lt;/span&gt; bar2 = &lt;span class="kwrd"&gt;new&lt;/span&gt; ProgressBar(&lt;span class="str"&gt;&amp;quot;progressContainer2&amp;quot;&lt;/span&gt;, 10, 
          &lt;span class="str"&gt;&amp;quot;progressTable&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;cell2&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;size&amp;quot;&lt;/span&gt;);
        bar2.Start();
        
        &lt;span class="kwrd"&gt;var&lt;/span&gt; bar3 = &lt;span class="kwrd"&gt;new&lt;/span&gt; ProgressBar(&lt;span class="str"&gt;&amp;quot;progressContainer3&amp;quot;&lt;/span&gt;, 10, 
          &lt;span class="str"&gt;&amp;quot;progressTable&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;cell3&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;size&amp;quot;&lt;/span&gt;);
        bar3.Start();
    });
        
    &lt;span class="kwrd"&gt;var&lt;/span&gt; ProgressBar = &lt;span class="kwrd"&gt;function&lt;/span&gt;(divId, cellCount, tableCss, cellCss, sizeCss)
    {
        &lt;span class="kwrd"&gt;var&lt;/span&gt; index = -1;
        &lt;span class="kwrd"&gt;var&lt;/span&gt; timerObj = &lt;span class="kwrd"&gt;new&lt;/span&gt; Timer();
        
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Init = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
        {
            &lt;span class="kwrd"&gt;var&lt;/span&gt; str = &lt;span class="str"&gt;&amp;quot;&amp;lt;table class='&amp;quot;&lt;/span&gt; + tableCss + &lt;span class="str"&gt;&amp;quot;' cellpadding='0' cellspacing='1'&amp;gt;&amp;lt;tr&amp;gt;&amp;quot;&lt;/span&gt;;
            &lt;span class="kwrd"&gt;for&lt;/span&gt;(&lt;span class="kwrd"&gt;var&lt;/span&gt; cnt=0; cnt&amp;lt;cellCount; cnt++)
            {
                str += &lt;span class="str"&gt;&amp;quot;&amp;lt;td class='&amp;quot;&lt;/span&gt; + sizeCss + &lt;span class="str"&gt;&amp;quot;'&amp;gt;&amp;lt;div class='&amp;quot;&lt;/span&gt; 
                  + cellCss + &lt;span class="str"&gt;&amp;quot; &amp;quot;&lt;/span&gt; + cellCss + cnt + &lt;span class="str"&gt;&amp;quot;'&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;&amp;quot;&lt;/span&gt;;
            }
            str += &lt;span class="str"&gt;&amp;quot;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;quot;&lt;/span&gt;;
            $(&lt;span class="str"&gt;&amp;quot;#&amp;quot;&lt;/span&gt; + divId).append(str);
            
            timerObj.Interval = 100;
            timerObj.Tick = timer_tick;
        }
        
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Start = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
        {
            &lt;span class="kwrd"&gt;this&lt;/span&gt;.Init();
            timerObj.Start();
        }
        
        &lt;span class="kwrd"&gt;function&lt;/span&gt; timer_tick()
        {
            &lt;span class="rem"&gt;//debugger;&lt;/span&gt;
            index = index + 1;
            index = index % cellCount;
            
            $(&lt;span class="str"&gt;&amp;quot;#&amp;quot;&lt;/span&gt; + divId + &lt;span class="str"&gt;&amp;quot; .&amp;quot;&lt;/span&gt; + cellCss + index).fadeIn(10);
            $(&lt;span class="str"&gt;&amp;quot;#&amp;quot;&lt;/span&gt; + divId + &lt;span class="str"&gt;&amp;quot; .&amp;quot;&lt;/span&gt; + cellCss + index).fadeOut(500);
        }
    }
    
    &lt;span class="rem"&gt;// Declaring class &amp;quot;Timer&amp;quot;&lt;/span&gt;
    &lt;span class="kwrd"&gt;var&lt;/span&gt; Timer = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
    {        
        &lt;span class="rem"&gt;// Property: Frequency of elapse event of the timer in millisecond&lt;/span&gt;
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Interval = 1000;
        
        &lt;span class="rem"&gt;// Property: Whether the timer is enable or not&lt;/span&gt;
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;false&lt;/span&gt;);
        
        &lt;span class="rem"&gt;// Event: Timer tick&lt;/span&gt;
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Tick;
        
        &lt;span class="rem"&gt;// Member variable: Hold interval id of the timer&lt;/span&gt;
        &lt;span class="kwrd"&gt;var&lt;/span&gt; timerId = 0;
        
        &lt;span class="rem"&gt;// Member variable: Hold instance of this class&lt;/span&gt;
        &lt;span class="kwrd"&gt;var&lt;/span&gt; thisObject;
        
        &lt;span class="rem"&gt;// Function: Start the timer&lt;/span&gt;
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Start = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
        {
            &lt;span class="kwrd"&gt;this&lt;/span&gt;.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;true&lt;/span&gt;);
    
            thisObject = &lt;span class="kwrd"&gt;this&lt;/span&gt;;
            &lt;span class="kwrd"&gt;if&lt;/span&gt; (thisObject.Enable)
            {
                thisObject.timerId = setInterval(
                &lt;span class="kwrd"&gt;function&lt;/span&gt;()
                {
                    thisObject.Tick(); 
                }, thisObject.Interval);
            }
        };
        
        &lt;span class="rem"&gt;// Function: Stops the timer&lt;/span&gt;
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Stop = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
        {            
            thisObject.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;false&lt;/span&gt;);
            clearInterval(thisObject.timerId);
        };
    
    };
    
    &lt;span class="rem"&gt;//--&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;

&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;progressContainer1&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;progressContainer2&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;progressContainer3&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;</description><link>http://www.dailycoding.com/Posts/animated_progress_bar_without_images.aspx</link><pubDate>Wed, 03 Sep 2008 02:13</pubDate></item><item><title>Maintaining Dirty and New state of objects</title><comments>http://www.dailycoding.com/Posts/maintaining_dirty_and_new_state_of_objects.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>General</category><description>&lt;p&gt;I have worked on &lt;a href="http://www.lhotka.net/cslanet/"&gt;CSLA&lt;/a&gt; on few projects and I am very much impressed from all of its features. However not every application wants to use CSLA but may be some features out of it. This post is about adding IsDirty and IsNew capabilities to our object. I used CSLA as reference for create these classes.&lt;/p&gt;

&lt;!--more--&gt;
&lt;h3&gt;Base Classes Definitions&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;ObjectBase&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ObjectBase
{
    &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; _isDirty;
    &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; _isNew = &lt;span class="kwrd"&gt;true&lt;/span&gt;;

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; IsDirty
    {
        get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _isDirty; }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; IsNew
    {
        get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _isNew; }
    }

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; MarkDirty()
    {
        _isDirty = &lt;span class="kwrd"&gt;true&lt;/span&gt;;
    }

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; MarkClean()
    {
        _isDirty = &lt;span class="kwrd"&gt;false&lt;/span&gt;;
    }

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; MarkAsNew()
    {
        _isNew = &lt;span class="kwrd"&gt;true&lt;/span&gt;;
    }

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; MarkAsOld()
    {
        _isNew = &lt;span class="kwrd"&gt;false&lt;/span&gt;;
        _isDirty = &lt;span class="kwrd"&gt;false&lt;/span&gt;;
    }
}&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;ObjectListBase&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ObjectListBase&amp;lt;T&amp;gt; : List&amp;lt;T&amp;gt; &lt;span class="kwrd"&gt;where&lt;/span&gt; T : ObjectBase
{
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; IsDirty
    {
        get
        {
            &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (T item &lt;span class="kwrd"&gt;in&lt;/span&gt; &lt;span class="kwrd"&gt;this&lt;/span&gt;)
            {
                &lt;span class="kwrd"&gt;if&lt;/span&gt; (item.IsDirty)
                    &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;true&lt;/span&gt;;
            }
            &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;false&lt;/span&gt;;
        }
    }
}&lt;/pre&gt;

&lt;h3&gt;Using Base Classes&lt;/h3&gt;
&lt;p&gt;To use these base classes, simply inherit your business object from ObjectBase and collection objects from ObjectListBase. Let take example:&lt;/p&gt;

&lt;p&gt;Suppose a class Employee represents an employee entity and its collection class EmployeeList.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Employee&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; Employee : ObjectBase
{
    &lt;span class="rem"&gt;// Member Variables&lt;/span&gt;
    &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; _employeeCode;
    &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; _employeeName;
    &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;decimal&lt;/span&gt; _salary;

    &lt;span class="rem"&gt;// Public properties&lt;/span&gt;
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; EmployeeCode
    {
        get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _employeeCode; }
        set
        {
            &lt;span class="kwrd"&gt;if&lt;/span&gt; (_employeeCode != &lt;span class="kwrd"&gt;value&lt;/span&gt;)
            {
                _employeeCode = &lt;span class="kwrd"&gt;value&lt;/span&gt;;
                &lt;span class="kwrd"&gt;base&lt;/span&gt;.MarkDirty();
            }
        }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; EmployeeName
    {
        get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _employeeName; }
        set
        {
            &lt;span class="kwrd"&gt;if&lt;/span&gt; (_employeeName != &lt;span class="kwrd"&gt;value&lt;/span&gt;)
            {
                _employeeName = &lt;span class="kwrd"&gt;value&lt;/span&gt;;
                &lt;span class="kwrd"&gt;base&lt;/span&gt;.MarkDirty();
            }
        }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;decimal&lt;/span&gt; Salary
    {
        get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _salary; }
        set
        {
            &lt;span class="kwrd"&gt;if&lt;/span&gt; (_salary != &lt;span class="kwrd"&gt;value&lt;/span&gt;)
            {
                _salary = &lt;span class="kwrd"&gt;value&lt;/span&gt;;
                &lt;span class="kwrd"&gt;base&lt;/span&gt;.MarkDirty();
            }
        }
    }

    &lt;span class="rem"&gt;// Constructor&lt;/span&gt;
    &lt;span class="kwrd"&gt;public&lt;/span&gt; Employee()
    {
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Fetch(&lt;span class="kwrd"&gt;int&lt;/span&gt; employeeCode)
    {
        &lt;span class="rem"&gt;// Code to fetch employee&lt;/span&gt;
        &lt;span class="kwrd"&gt;base&lt;/span&gt;.MarkAsOld();
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Save()
    {
        &lt;span class="rem"&gt;// Code to save employee&lt;/span&gt;
        &lt;span class="kwrd"&gt;if&lt;/span&gt; (&lt;span class="kwrd"&gt;base&lt;/span&gt;.IsNew)
        {
            &lt;span class="rem"&gt;// Code Insert into database&lt;/span&gt;
        }
        &lt;span class="kwrd"&gt;else&lt;/span&gt;
        {
            &lt;span class="rem"&gt;// Code to Update into databse&lt;/span&gt;
        }

        &lt;span class="kwrd"&gt;base&lt;/span&gt;.MarkClean();
        &lt;span class="kwrd"&gt;base&lt;/span&gt;.MarkAsOld();
    }
}&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;EmployeeList&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; EmployeeList : ObjectListBase&amp;lt;Employee&amp;gt;
{
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; EmployeeList GetAllEmployees()
    {
        EmployeeList employes = &lt;span class="kwrd"&gt;new&lt;/span&gt; EmployeeList();
        employes.FetchAll();
    }

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; EmployeeList()
    {
    }

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; FetchAll()
    {
        &lt;span class="rem"&gt;// Code to fetch employee list and &lt;/span&gt;
        &lt;span class="rem"&gt;// add to this list&lt;/span&gt;
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Save()
    {
        &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (Employee employee &lt;span class="kwrd"&gt;in&lt;/span&gt; &lt;span class="kwrd"&gt;this&lt;/span&gt;)
        {
            &lt;span class="kwrd"&gt;if&lt;/span&gt; (employee.IsDirty)
            {
                employee.Save();
            }
        }
    }
}&lt;/pre&gt;

&lt;h3&gt;Using Objects&lt;/h3&gt;

&lt;p&gt;See the code below:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;EmployeeList employess = EmployeeList.GetAllEmployees();

&lt;span class="rem"&gt;// ..
// do operation of list
// ..&lt;/span&gt;

&lt;span class="rem"&gt;// Saves the list&lt;/span&gt;
&lt;span class="kwrd"&gt;if&lt;/span&gt; (employess.IsDirty)
{
    employess.Save();
}&lt;/pre&gt;

&lt;p&gt;Above code fetch list employee from database. You may perform add/edit operations on this. The class will manage the dirty and new state of object itself and Saves only those object in which changes are done. In this way we can save unnecessary trips to database.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/maintaining_dirty_and_new_state_of_objects.aspx</link><pubDate>Tue, 26 Aug 2008 02:10</pubDate></item><item><title>Object Oriented Programming with JavaScript : Timer Class</title><comments>http://www.dailycoding.com/Posts/object_oriented_programming_with_javascript__timer_class.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Scripting</category><description>&lt;p&gt;JavaScript with Oops is not much used by developers while creating application however we can make our life easy if we use JavaScript with Oops.&lt;/p&gt;
&lt;p&gt;Let's started object oriented programming in JavaScript by taking example of a Timer class, similar to the Timer control in windows application.&lt;/p&gt;

&lt;h3&gt;Create Class&lt;/h3&gt;

&lt;p&gt;Create the class Timer. Below code shows how to declare the class&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;// Declaring class &amp;quot;Timer&amp;quot;&lt;/span&gt;
&lt;span class="kwrd"&gt;var&lt;/span&gt; Timer = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
{
    &lt;span class="rem"&gt;// ....        &lt;/span&gt;
    &lt;span class="rem"&gt;// Class body&lt;/span&gt;
    &lt;span class="rem"&gt;// ....&lt;/span&gt;
}&lt;/pre&gt;
&lt;!--more--&gt;
&lt;h3&gt;Add Public Properties&lt;/h3&gt;

&lt;p&gt;To add public properties to the class we use this keyword as shown below&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;// Declaring class &amp;quot;Timer&amp;quot;&lt;/span&gt;
&lt;span class="kwrd"&gt;var&lt;/span&gt; Timer = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
{        
    &lt;span class="rem"&gt;// Property: Frequency of elapse event of the timer in millisecond&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Interval = 1000;
    
    &lt;span class="rem"&gt;// Property: Whether the timer is enable or not&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;false&lt;/span&gt;);
}&lt;/pre&gt;

&lt;p&gt;You can see that we have created 2 properties (Interval and Enable) of Timer class and assigned default values to them.&lt;/p&gt;

&lt;h3&gt;Add Events (If any)&lt;/h3&gt;

&lt;p&gt;Now we might want to add events to the class in case we need. For Timer class we need &amp;quot;Tick&amp;quot; event which will be fired every after &amp;quot;Interval&amp;quot;. Event are added the same way as the public properties.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;// Declaring class &amp;quot;Timer&amp;quot;&lt;/span&gt;
&lt;span class="kwrd"&gt;var&lt;/span&gt; Timer = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
{        
    &lt;span class="rem"&gt;// Property: Frequency of elapse event of the timer in millisecond&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Interval = 1000;
    
    &lt;span class="rem"&gt;// Property: Whether the timer is enable or not&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;false&lt;/span&gt;);
    
    &lt;span class="rem"&gt;// Event: Timer tick&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Tick;
}&lt;/pre&gt;

&lt;h3&gt;Add Private Member Variables&lt;/h3&gt;

&lt;p&gt;We need 2 private variable in the class to hold the timer Id and the class instance. The private variable are added using 'var' keyword.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;// Declaring class &amp;quot;Timer&amp;quot;&lt;/span&gt;
&lt;span class="kwrd"&gt;var&lt;/span&gt; Timer = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
{        
    &lt;span class="rem"&gt;// Property: Frequency of elapse event of the timer in millisecond&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Interval = 1000;
    
    &lt;span class="rem"&gt;// Property: Whether the timer is enable or not&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;false&lt;/span&gt;);
    
    &lt;span class="rem"&gt;// Event: Timer tick&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Tick;
    
    &lt;span class="rem"&gt;// Member variable: Hold interval id of the timer&lt;/span&gt;
    &lt;span class="kwrd"&gt;var&lt;/span&gt; timerId = 0;
    
    &lt;span class="rem"&gt;// Member variable: Hold instance of this class&lt;/span&gt;
    &lt;span class="kwrd"&gt;var&lt;/span&gt; thisObject;
}&lt;/pre&gt;

&lt;h3&gt;Add Functions&lt;/h3&gt;

&lt;p&gt;Public functions are also added the same way as public properties using this keyword. We need 2 function in the timer, first &amp;quot;Start&amp;quot; to start the timer and second &amp;quot;Stop&amp;quot; to stop the timer.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;// Declaring class &amp;quot;Timer&amp;quot;&lt;/span&gt;
&lt;span class="kwrd"&gt;var&lt;/span&gt; Timer = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
{        
    &lt;span class="rem"&gt;// Property: Frequency of elapse event of the timer in millisecond&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Interval = 1000;
    
    &lt;span class="rem"&gt;// Property: Whether the timer is enable or not&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;false&lt;/span&gt;);
    
    &lt;span class="rem"&gt;// Event: Timer tick&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Tick;
    
    &lt;span class="rem"&gt;// Member variable: Hold interval id of the timer&lt;/span&gt;
    &lt;span class="kwrd"&gt;var&lt;/span&gt; timerId = 0;
    
    &lt;span class="rem"&gt;// Member variable: Hold instance of this class&lt;/span&gt;
    &lt;span class="kwrd"&gt;var&lt;/span&gt; thisObject;
    
    &lt;span class="rem"&gt;// Function: Start the timer&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Start = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
    {
        &lt;span class="kwrd"&gt;this&lt;/span&gt;.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;true&lt;/span&gt;);

        thisObject = &lt;span class="kwrd"&gt;this&lt;/span&gt;;
        &lt;span class="kwrd"&gt;if&lt;/span&gt; (thisObject.Enable)
        {
            thisObject.timerId = setInterval(
            &lt;span class="kwrd"&gt;function&lt;/span&gt;()
            {
                thisObject.Tick(); 
            }, thisObject.Interval);
        }
    };
    
    &lt;span class="rem"&gt;// Function: Stops the timer&lt;/span&gt;
    &lt;span class="kwrd"&gt;this&lt;/span&gt;.Stop = &lt;span class="kwrd"&gt;function&lt;/span&gt;()
    {            
        thisObject.Enable = &lt;span class="kwrd"&gt;new&lt;/span&gt; Boolean(&lt;span class="kwrd"&gt;false&lt;/span&gt;);
        clearInterval(thisObject.timerId);
    };

};&lt;/pre&gt;

&lt;p&gt;You can see I have incorporated the timer functionality using the setInterval function of the JavaScript. Our class is ready for use now.&lt;/p&gt;

&lt;h3&gt;Using the Class&lt;/h3&gt;

&lt;p&gt;To use the class first create the instance of Timer.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;var&lt;/span&gt; obj = &lt;span class="kwrd"&gt;new&lt;/span&gt; Timer();&lt;/pre&gt;

&lt;p&gt;Now assign the value to its properties as needed.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;obj.Interval = 300;&lt;/pre&gt;

&lt;p&gt;Attach handler to the events&lt;/p&gt;

&lt;pre class="csharpcode"&gt;obj.Tick = timer_tick;

&lt;span class="kwrd"&gt;function&lt;/span&gt; timer_tick()
{
    &lt;span class="rem"&gt;// Do something..&lt;/span&gt;
}&lt;/pre&gt;

&lt;p&gt;Now call the &amp;quot;Start&amp;quot; function to start the timer&lt;/p&gt;

&lt;pre class="csharpcode"&gt;obj.Start();&lt;/pre&gt;

&lt;p&gt;To stop the timer anytime in between just call the &amp;quot;Stop&amp;quot; function.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;obj.Stop();&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://www.dailycoding.com/Uploads/2008/08/TimerClass.htm"&gt;Here&lt;/a&gt; is a working example of this class for you reference.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/object_oriented_programming_with_javascript__timer_class.aspx</link><pubDate>Wed, 13 Aug 2008 02:10</pubDate></item><item><title>Avoiding Event != null Check</title><comments>http://www.dailycoding.com/Posts/avoiding_event__null_check.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>General</category><description>&lt;p&gt;Lets take a simple example of declaring and raising a custom event. Look at the code below:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; EventTestClass
{
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;event&lt;/span&gt; EventHandler NewEvent;

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnNewEvent()
    {
        NewEvent(&lt;span class="kwrd"&gt;this&lt;/span&gt;, EventArgs.Empty);
        &lt;span class="rem"&gt;// Above code will raise System.NullReferenceException&lt;/span&gt;
        &lt;span class="rem"&gt;// exception if there is no handler registered with it.&lt;/span&gt;
    }
}&lt;/pre&gt;
&lt;!--more--&gt;
&lt;p&gt;As you know if if don't attach any handler to the NewEvent above then the OnNewEvent will throw exception because the NewEvent is null at that time. To get rid of this we generally put a null check on the event as shown below:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; EventTestClass
{
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;event&lt;/span&gt; EventHandler NewEvent;

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnNewEvent()
    {
        &lt;span class="kwrd"&gt;if&lt;/span&gt; (NewEvent != &lt;span class="kwrd"&gt;null&lt;/span&gt;)
        {
            NewEvent(&lt;span class="kwrd"&gt;this&lt;/span&gt;, EventArgs.Empty);
        }
    }
}&lt;/pre&gt;

&lt;p&gt;There could be better way solving problem look at the solution below:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; EventTestClass
{
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;event&lt;/span&gt; EventHandler NewEvent = &lt;span class="kwrd"&gt;delegate&lt;/span&gt; { };

    &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnNewEvent()
    {
        NewEvent(&lt;span class="kwrd"&gt;this&lt;/span&gt;, EventArgs.Empty);
    }
}&lt;/pre&gt;

&lt;p&gt;The above code will work perfectly fine even if you don't attach any handler to the event. This is because the event is not null now as we have already registered on empty handler with it.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/avoiding_event__null_check.aspx</link><pubDate>Thu, 07 Aug 2008 02:10</pubDate></item><item><title>Layout Form without Tables with CSS Trick</title><comments>http://www.dailycoding.com/Posts/layout_form_without_tables_with_css_trick.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Design</category><description>&lt;p&gt;Creating a form with lots of field could be a tedious task as it involves playing with TR and TD in html table. Along with that it also increases the size and complexity of the html code of out page. e.g. Look at the below form:&lt;/p&gt;

&lt;style type="text/css"&gt;
	.formLayout
	{
		background-color: #f3f3f3;
		border: solid 1px #a1a1a1;
		padding: 10px;
		width: 300px;
	}
	
    .formLayout label, .formLayout input
    {
		display: block;
		width: 120px;
		float: left;
		margin-bottom: 10px;
	}
 
	.formLayout label
	{
		text-align: right;
		padding-right: 20px;
	}
 
	br
	{
		clear: left;
	}
    &lt;/style&gt;

&lt;p&gt;

&lt;div class="formLayout"&gt;&lt;label&gt;Title&lt;/label&gt; &lt;select&gt; &lt;option&gt;Mr.&lt;/option&gt; &lt;option&gt;Dr.&lt;/option&gt; &lt;option&gt;Ms.&lt;/option&gt; &lt;option&gt;Mrs.&lt;/option&gt;&lt;/select&gt;

  &lt;br /&gt;&lt;label&gt;First Name&lt;/label&gt; &lt;input id="name" name="name" /&gt;

  &lt;br /&gt;&lt;label&gt;Last Name&lt;/label&gt; &lt;input id="Text1" name="name" /&gt;

  &lt;br /&gt;&lt;label&gt;Address&lt;/label&gt; &lt;input id="address1" /&gt;

  &lt;br /&gt;&lt;label&gt;&lt;/label&gt;&lt;input id="address2" /&gt;

  &lt;br /&gt;&lt;label&gt;City&lt;/label&gt; &lt;select id="city"&gt; &lt;option&gt;New York&lt;/option&gt; &lt;option&gt;Chicago&lt;/option&gt; &lt;option&gt;etc.&lt;/option&gt;&lt;/select&gt;

  &lt;br /&gt;&lt;label&gt;Zip&lt;/label&gt; &lt;input id="zip" /&gt;

  &lt;br /&gt;&lt;/div&gt;

&lt;/p&gt;
&lt;!--more--&gt;
&lt;p&gt;Could you imagine it to create without using table or nested div. Well if no then you can just by using easy CSS trick. here is the whole css + html code for doing this.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt; &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Layout Form without Tables&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;text/css&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    .formLayout
    {
        background-color: #f3f3f3;
        border: solid 1px #a1a1a1;
        padding: 10px;
        width: 300px;
    }
    
    .formLayout label, .formLayout input
    {
        display: block;
        width: 120px;
        float: left;
        margin-bottom: 10px;
    }
 
    .formLayout label
    {
        text-align: right;
        padding-right: 20px;
    }
 
    br
    {
        clear: left;
    }
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;formLayout&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Title&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;select&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Mr.&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Dr.&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Ms.&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Mrs.&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;select&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;First Name&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;input&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;name&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;name&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Last Name&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;input&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Text1&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;name&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Address&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;input&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;address1&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;input&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;address2&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;City&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;select&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;city&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;New York&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Chicago&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;etc.&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;option&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;select&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Zip&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;label&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;input&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;zip&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;</description><link>http://www.dailycoding.com/Posts/layout_form_without_tables_with_css_trick.aspx</link><pubDate>Mon, 04 Aug 2008 02:08</pubDate></item><item><title>"Default Text" Fields Using Simple jQuery Trick</title><comments>http://www.dailycoding.com/Posts/default_text_fields_using_simple_jquery_trick.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Design</category><description>&lt;p&gt;A lots of the time you want to add instructions to text box fields of the page to provide usability information to the users. Alternate way of doing this could be using default text in the input fields. A default text is the text which appears in the text box when it is empty. e.g.&lt;/p&gt;
&lt;p&gt;
	&lt;script src="http://www.dailycoding.com/Uploads/2008/08/jquery.js" type="text/javascript"&gt;&lt;/script&gt;
	&lt;style media="screen" type="text/css"&gt;
	&lt;!--
		.tableMain { border: solid 1px #a1a1a1; background-color: #f1f1f1; }
		.defaultText { width: 300px; }
		.defaultTextActive { color: #a1a1a1; font-style: italic; }
	//--&gt;
	&lt;/style&gt;
	&lt;script language="javascript"&gt;
	&lt;!--
	$(document).ready(function()
	{
		$(".defaultText").focus(function(srcc)
		{
			if ($(this).val() == $(this)[0].title)
			{
				$(this).removeClass("defaultTextActive");
				$(this).val("");
			}
		});
		
		$(".defaultText").blur(function()
		{
			if ($(this).val() == "")
			{
				$(this).addClass("defaultTextActive");
				$(this).val($(this)[0].title);
			}
		});
		
		$(".defaultText").blur();		
	});
	//--&gt;
	&lt;/script&gt;

	&lt;table cellpadding="4" class="tableMain"&gt;
		&lt;tr&gt;
			&lt;td style="width: 100px;"&gt;
				Name&lt;/td&gt;
			&lt;td&gt;
				&lt;input class="defaultText" title="first and last name" type="text" /&gt;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;
				Email&lt;/td&gt;
			&lt;td&gt;
				&lt;input class="defaultText" title="e.g. someone@example.com" type="text" /&gt;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;
				Website&lt;/td&gt;
			&lt;td&gt;
				&lt;input class="defaultText" title="enter your home URL here" type="text" /&gt;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td valign="top"&gt;
				Comment&lt;/td&gt;
			&lt;td&gt;
				&lt;textarea class="defaultText" title="put you comments in this area. (Not HTML tags please)" rows="10"&gt;&lt;/textarea&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/table&gt;
&lt;/p&gt;
&lt;!--more--&gt;
&lt;p&gt;You can see this is useful and good idea to have this in the UI. There is an easy trick in &lt;a href="http://jquery.com/"&gt;jQuery&lt;/a&gt; to do this. Below is the step by step procedure to do this.&lt;/p&gt;
&lt;p&gt;&lt;h3&gt;Step1&lt;/h3&gt; If you don't have jQuery then download latest from its &lt;a href="http://jquery.com/"&gt;website&lt;/a&gt; and include in you page.&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;="jquery.js"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="text/javascript"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;h3&gt;Step 2&lt;/h3&gt; Create two CSS classes defaultText and defaultTextActive as mentioned below.&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt; &lt;span class="attr"&gt;media&lt;/span&gt;&lt;span class="kwrd"&gt;="screen"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="text/css"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    .defaultText { width: 300px; }
    .defaultTextActive { color: #a1a1a1; font-style: italic; }
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;h3&gt;Step 3&lt;/h3&gt; Add this JavaScript to you page&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt; &lt;span class="attr"&gt;language&lt;/span&gt;&lt;span class="kwrd"&gt;="javascript"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&amp;lt;!--
$(document).ready(&lt;span class="kwrd"&gt;function&lt;/span&gt;()
{
    $(&lt;span class="str"&gt;".defaultText"&lt;/span&gt;).focus(&lt;span class="kwrd"&gt;function&lt;/span&gt;(srcc)
    {
        &lt;span class="kwrd"&gt;if&lt;/span&gt; ($(&lt;span class="kwrd"&gt;this&lt;/span&gt;).val() == $(&lt;span class="kwrd"&gt;this&lt;/span&gt;)[0].title)
        {
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).removeClass(&lt;span class="str"&gt;"defaultTextActive"&lt;/span&gt;);
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).val(&lt;span class="str"&gt;""&lt;/span&gt;);
        }
    });
    
    $(&lt;span class="str"&gt;".defaultText"&lt;/span&gt;).blur(&lt;span class="kwrd"&gt;function&lt;/span&gt;()
    {
        &lt;span class="kwrd"&gt;if&lt;/span&gt; ($(&lt;span class="kwrd"&gt;this&lt;/span&gt;).val() == &lt;span class="str"&gt;""&lt;/span&gt;)
        {
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).addClass(&lt;span class="str"&gt;"defaultTextActive"&lt;/span&gt;);
            $(&lt;span class="kwrd"&gt;this&lt;/span&gt;).val($(&lt;span class="kwrd"&gt;this&lt;/span&gt;)[0].title);
        }
    });
    
    $(&lt;span class="str"&gt;".defaultText"&lt;/span&gt;).blur();        
});
&lt;span class="rem"&gt;//--&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;&lt;h4&gt;Step 4&lt;/h4&gt; To every text field or text area where you want to apply default text add "defaultText" as css class and specify the default text in the title attribute. e.g.&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;input&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="defaultText"&lt;/span&gt; &lt;span class="attr"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;="e.g. someone@example.com"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="text"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;You default text setup is ready. Run the page and see the magic. &lt;a href="http://www.dailycoding.com/Uploads/2008/08/DefaultTextSample.htm"&gt;Click here&lt;/a&gt; for a running sample page.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/default_text_fields_using_simple_jquery_trick.aspx</link><pubDate>Fri, 01 Aug 2008 02:05</pubDate></item><item><title>How not to cache a page output in ASP.NET</title><comments>http://www.dailycoding.com/Posts/how_not_to_cache_a_page_output_in_aspnet.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Web</category><description>&lt;p&gt;
Tip: Websites based on ASP.net would benefit from &lt;a href='http://www.webhostingsearch.com/asp-net-hosting.php'&gt;ASP.net hosting&lt;/a&gt; because it was specially designed to ensure error free work of ASP.net scripts.
&lt;/p&gt;

&lt;p&gt;In one of my post, I posted about &lt;a href="http://www.dailycoding.com/Posts/howtocacheapageoutputinaspnet.aspx"&gt;How to cache a page output in ASP.NET&lt;/a&gt;, but sometime you have requirement like the page should never be cached. Every time user request a particular url it should give you fresh version of the page or file. To achieve this simply added Location="None" to the OutputCache directives.&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="asp"&gt;&amp;lt;%&lt;/span&gt;&lt;span class="kwrd"&gt;@&lt;/span&gt; &lt;span class="html"&gt;OutputCache&lt;/span&gt; &lt;span class="attr"&gt;Location&lt;/span&gt;&lt;span class="kwrd"&gt;="None"&lt;/span&gt; &lt;span class="attr"&gt;VaryByParam&lt;/span&gt;&lt;span class="kwrd"&gt;="None"&lt;/span&gt; &lt;span class="asp"&gt;%&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;Using Location="None" will tell the browser not to cache the page and hence your can prevent the page from saving on temporary internet files on client's machine. This could be useful when you don't want you pages or some particular page to be stored at client side for security reasons.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/how_not_to_cache_a_page_output_in_aspnet.aspx</link><pubDate>Thu, 31 Jul 2008 02:05</pubDate></item><item><title>Creating always visible div using CSS</title><comments>http://www.dailycoding.com/Posts/creating_always_visible_div_using_css.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Design</category><description>&lt;p&gt;You might have seen floating content of web sites which is always visible on the page even if you scroll it. This is easy achieve thing by using just CSS. However there is also JavaScript alternative for this but the CSS one is smoother and faster as this doesn't includes any run time calculation. The below step by step process will guide to how to add a always visible div on web page.&lt;/p&gt;
&lt;!--more--&gt;
&lt;h3&gt;Step 1&lt;/h3&gt;

&lt;p&gt;Create a css class and name it &amp;quot;visibleDiv&amp;quot; (or the one you like). And add position as &amp;quot;fixed&amp;quot;;&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;text/css&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="rem"&gt;&amp;lt;!--&lt;/span&gt;
.visibleDiv
{
    position: fixed;
}
&lt;span class="rem"&gt;//--&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;Step 2&lt;/h3&gt;

&lt;p&gt;Decide where you want to anchor the always visible floating div. There could be four option top left, top right, bottom left and bottom right. Based on the type of anchor you need specify the relative distance by using left, top, right, bottom in css.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;text/css&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="rem"&gt;&amp;lt;!--&lt;/span&gt;
&lt;span class="rem"&gt;/*For top left*/&lt;/span&gt;
.visibleDiv
{
    top: 10px;
    left: 10px;
}

&lt;span class="rem"&gt;/*For top right*/&lt;/span&gt;
.visibleDiv
{
    top: 10px;
    right: 10px;
}

&lt;span class="rem"&gt;/*For bottom left*/&lt;/span&gt;
.visibleDiv
{
    left: 10px;
    bottom: 10px;
}

&lt;span class="rem"&gt;/*For bottom right*/&lt;/span&gt;
.visibleDiv
{
    bottom: 10px;
    right: 10px;
}
&lt;span class="rem"&gt;//--&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h3&gt;Step 3&lt;/h3&gt;

&lt;p&gt;Add a new div to the page and specify the class=&amp;quot;visibleDiv&amp;quot;.&lt;/p&gt;
&lt;pre class="csharpcode"&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="visibleDiv"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;

&lt;p&gt;You always visible div is ready. You can see that position of this div remain same even if you scroll the page. You can see this page has four always visible div. Below is a full sample code including html:&lt;/p&gt;
&lt;pre class="csharpcode"&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt; &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Always Visible Div&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;title&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;text/css&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="rem"&gt;&amp;lt;!--&lt;/span&gt;
.visibleDiv, #topLeft, #topRight, #bottomLeft, #bottomRight
{
    position: fixed;
    width: 150px;
    border: solid 1px #e1e1e1;
    vertical-align: middle;
    background: #ffdab9;
    text-align: center;
}

#topLeft
{
    top: 10px;
    left: 10px;
}

#topRight
{
    top: 10px;
    right: 10px;
}

#bottomLeft
{
    bottom: 10px;
    left: 10px;
}

#bottomRight
{
    bottom: 10px;
    right: 10px;
}
&lt;span class="rem"&gt;//--&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;head&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt; &lt;span class="attr"&gt;bgcolor&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;topLeft&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Top Left
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;topRight&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Top Right
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;bottomLeft&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Bottom Left
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;bottomRight&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        Bottom Right
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;height: 2000px; text-align: center; vertical-align: middle;&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            Always visible sample&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;body&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;style type="text/css"&gt;
&lt;!--
.visibleDiv1
{
	position: fixed;
	left: 100px;
	top: 200px;
}
.visibleDiv, #topLeft, #topRight, #bottomLeft, #bottomRight
{
	position: fixed;
	width: 150px;
	border: solid 1px #e1e1e1;
	vertical-align: middle;
	background: #ffdab9;
	text-align: center;
}

#topLeft
{
	top: 10px;
	left: 10px;
}

#topRight
{
	top: 10px;
	right: 10px;
}

#bottomLeft
{
	bottom: 10px;
	left: 10px;
}

#bottomRight
{
	bottom: 10px;
	right: 10px;
}
//--&gt;
&lt;/style&gt;
&lt;div id="topLeft"&gt;
		Top Left
	&lt;/div&gt;
	&lt;div id="topRight"&gt;
		Top Right
	&lt;/div&gt;
	&lt;div id="bottomLeft"&gt;
		Bottom Left
	&lt;/div&gt;
	&lt;div id="bottomRight"&gt;
		Bottom Right
	&lt;/div&gt;</description><link>http://www.dailycoding.com/Posts/creating_always_visible_div_using_css.aspx</link><pubDate>Tue, 29 Jul 2008 02:02</pubDate></item><item><title>Are You Throwing Exceptions Correctly?</title><comments>http://www.dailycoding.com/Posts/are_you_throwing_exceptions_correctly.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>General</category><description>&lt;p&gt;We generally use exception and stack trace for tracking down to the problem in our code. But a lots of the time, in case you are not using proper way to throw exceptions then it might make difficult to narrow down the problem. Whenever we throw an exception; it is recorded into the exception stack trace.&lt;/p&gt;

&lt;p&gt;Let understand this with an example. Consider the below console application:&lt;/p&gt;
&lt;!--more--&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;
&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;

&lt;span class="kwrd"&gt;namespace&lt;/span&gt; ExceptionTest
{
  &lt;span class="kwrd"&gt;class&lt;/span&gt; Program
  {
    &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Main(&lt;span class="kwrd"&gt;string&lt;/span&gt;[] args)
    {
      &lt;span class="kwrd"&gt;new&lt;/span&gt; ExceptionTester().FirstCall();
    }
  }

  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ExceptionTester
  {
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; FirstCall()
    {
      &lt;span class="kwrd"&gt;try&lt;/span&gt;
      {
        SecondCall();
      }
      &lt;span class="kwrd"&gt;catch&lt;/span&gt;(Exception ex)
      {
        Console.WriteLine(ex.StackTrace);
      }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; SecondCall()
    {
      &lt;span class="kwrd"&gt;try&lt;/span&gt;
      {
        ThirdCall();
      }
      &lt;span class="kwrd"&gt;catch&lt;/span&gt;
      {
        &lt;span class="kwrd"&gt;throw&lt;/span&gt;;
      }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ThirdCall()
    {
      &lt;span class="kwrd"&gt;try&lt;/span&gt;
      {
        ForthCall();
      }
      &lt;span class="kwrd"&gt;catch&lt;/span&gt;
      {
        &lt;span class="kwrd"&gt;throw&lt;/span&gt;;
      }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ForthCall()
    {
      &lt;span class="kwrd"&gt;int&lt;/span&gt; d = 0;
      &lt;span class="kwrd"&gt;int&lt;/span&gt; x = 10 / d;
    }
  }
}&lt;/pre&gt;

&lt;p&gt;You may see the that the initially the FirstCall() method is called which internally calling SecondCall() &amp;gt; ThirdCall() &amp;gt; ForthCall() and the ForthCall is generating System.DivideByZeroException exception. Each function is throwing the exception by using throw keyword. Output of the above program will be:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;Attempted to divide by zero.
   at ExceptionTest.ExceptionTester.ForthCall() in C:\ExceptionTest\Program.cs:line 56
   at ExceptionTest.ExceptionTester.ThirdCall() in C:\ExceptionTest\Program.cs:line 49
   at ExceptionTest.ExceptionTester.SecondCall() in C:\ExceptionTest\Program.cs:line 37
   at ExceptionTest.ExceptionTester.FirstCall() in C:\ExceptionTest\Program.cs:line 20&lt;/pre&gt;

&lt;p&gt;By looking at above stack trace you could easily track down the root cause of the problem. Method ForthCall() is the culprit.&lt;/p&gt;

&lt;p&gt;
&lt;h3&gt;Do not Throw Same Exception&lt;/h3&gt;
A lots of time its common mistake to throw same exception again instead of re-throwing it. Look at below bad practice of coding:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;
&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;

&lt;span class="kwrd"&gt;namespace&lt;/span&gt; ExceptionTest
{
  &lt;span class="kwrd"&gt;class&lt;/span&gt; Program
  {
    &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Main(&lt;span class="kwrd"&gt;string&lt;/span&gt;[] args)
    {
      &lt;span class="kwrd"&gt;new&lt;/span&gt; ExceptionTester().FirstCall();
    }
  }

  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ExceptionTester
  {
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; FirstCall()
    {
      &lt;span class="kwrd"&gt;try&lt;/span&gt;
      {
        SecondCall();
      }
      &lt;span class="kwrd"&gt;catch&lt;/span&gt;(Exception ex)
      {
        Console.WriteLine(ex.Message);
        Console.WriteLine(ex.StackTrace);
      }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; SecondCall()
    {
      &lt;span class="kwrd"&gt;try&lt;/span&gt;
      {
        ThirdCall();
      }
      &lt;span class="kwrd"&gt;catch&lt;/span&gt;(Exception ex)
      {
        &lt;span class="kwrd"&gt;throw&lt;/span&gt; ex;
      }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ThirdCall()
    {
      &lt;span class="kwrd"&gt;try&lt;/span&gt;
      {
        ForthCall();
      }
      &lt;span class="kwrd"&gt;catch&lt;/span&gt; (Exception ex)
      {
        &lt;span class="kwrd"&gt;throw&lt;/span&gt; ex;
      }
    }

    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ForthCall()
    {
      &lt;span class="kwrd"&gt;int&lt;/span&gt; d = 0;
      &lt;span class="kwrd"&gt;int&lt;/span&gt; x = 10 / d;
    }
  }
}&lt;/pre&gt;

&lt;p&gt;&amp;quot;throw ex;&amp;quot; is basically throwing the same exception again  instead of re-throwing the original exception. Because of this the all exception stack trace information is lost till this point and stack started to build again. The output of above program will be:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;Attempted to divide by zero.
   at ExceptionTest.ExceptionTester.SecondCall() in C:\ExceptionTest\Program.cs:line 37
   at ExceptionTest.ExceptionTester.FirstCall() in C:\ExceptionTest\Program.cs:line 20&lt;/pre&gt;

&lt;p&gt;You can see we can only see methods SecondCall() and FirstCall() in the exception stack. Final conclusion of this whole article is to be careful while throwing exception.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/are_you_throwing_exceptions_correctly.aspx</link><pubDate>Fri, 25 Jul 2008 02:02</pubDate></item><item><title>The Script tag runat="server" Problem Solution Using ResolveUrl</title><comments>http://www.dailycoding.com/Posts/the_script_tag_runatserver_problem_solution_using_resolveurl.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Web</category><description>&lt;span class="html"&gt;&lt;p&gt;This might be an easy trick, but I ran into this issue a while ago; we can not specify the runat="server" attribute on a JavaScript file link as we do for images and style sheet.&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;link&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="mainSheet"&lt;/span&gt; &lt;span class="attr"&gt;runat&lt;/span&gt;&lt;span class="kwrd"&gt;="server" &lt;/span&gt;&lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="~/Images/styles.css"&lt;/span&gt; &lt;span class="attr"&gt;
rel&lt;/span&gt;&lt;span class="kwrd"&gt;="stylesheet"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="text/css"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;By using runat=server the href of the link will automatically be resolved by the asp.net in we have placed ~/ in the path. This gives us advantages when we are linking this into a control and the control could be used by other pages places at a different directory level.&lt;/p&gt;
&lt;p&gt;Same problem arise with using linked JavaScript. But this cannot be solved by using runat=server tag. Here is an alternative way to overcome this problem.&lt;/p&gt;&lt;!--more--&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt; &lt;span class="attr"&gt;language&lt;/span&gt;&lt;span class="kwrd"&gt;="javascript"&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;="&lt;/span&gt;&lt;span class="asp"&gt;&amp;lt;%&lt;/span&gt;=ResolveUrl("~/App_Themes/MainTheme/jquery.js")&lt;span class="asp"&gt;%&amp;gt;&lt;/span&gt;&lt;span class="kwrd"&gt;"&lt;/span&gt;&lt;span class="html"&gt; type&lt;/span&gt;&lt;span class="kwrd"&gt;="text/javascript"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/span&gt;</description><link>http://www.dailycoding.com/Posts/the_script_tag_runatserver_problem_solution_using_resolveurl.aspx</link><pubDate>Mon, 21 Jul 2008 01:59</pubDate></item><item><title>MIME content-types with file extension</title><comments>http://www.dailycoding.com/Posts/mime_contenttypes_with_file_extension.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Others</category><description>&lt;p&gt;
	A lots of time we required MIME content-types of certain types of files e.g. if
	we are writing a pdf type response from a asp.net web application then we need the
	MIME content-types of pdf document. The following is the list of MIME content-types
	of commonly used along with their file extension.
&lt;/p&gt;&lt;!--more--&gt;
&lt;table cellpadding="4" cellspacing="0" style="border-collapse:collapse; border: solid 1px #e1e1e1;" border="1"&gt;
	&lt;tr&gt;
		&lt;td&gt;
			&lt;strong&gt;MIME type/subtype&lt;/strong&gt;
		&lt;/td&gt;
		&lt;td&gt;
			&lt;strong&gt;File Extensions&lt;/strong&gt;&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/andrew-inset
		&lt;/td&gt;
		&lt;td&gt;
			ez&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/mac-binhex40
		&lt;/td&gt;
		&lt;td&gt;
			hqx&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/mac-compactpro
		&lt;/td&gt;
		&lt;td&gt;
			cpt&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/mathml+xml
		&lt;/td&gt;
		&lt;td&gt;
			mathml&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/msword
		&lt;/td&gt;
		&lt;td&gt;
			doc&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/octet-stream
		&lt;/td&gt;
		&lt;td&gt;
			bin dms lha lzh exe class so dll&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/oda
		&lt;/td&gt;
		&lt;td&gt;
			oda&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/ogg
		&lt;/td&gt;
		&lt;td&gt;
			ogg&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/pdf
		&lt;/td&gt;
		&lt;td&gt;
			pdf&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/postscript
		&lt;/td&gt;
		&lt;td&gt;
			ai eps ps&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/rdf+xml
		&lt;/td&gt;
		&lt;td&gt;
			rdf&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/smil
		&lt;/td&gt;
		&lt;td&gt;
			smi smil&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/srgs
		&lt;/td&gt;
		&lt;td&gt;
			gram&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/srgs+xml
		&lt;/td&gt;
		&lt;td&gt;
			grxml&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/vnd.mif
		&lt;/td&gt;
		&lt;td&gt;
			mif&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/vnd.mozilla.xul+xml
		&lt;/td&gt;
		&lt;td&gt;
			xul&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/vnd.ms-excel
		&lt;/td&gt;
		&lt;td&gt;
			xls&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/vnd.ms-powerpoint
		&lt;/td&gt;
		&lt;td&gt;
			ppt&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/vnd.wap.wbxml
		&lt;/td&gt;
		&lt;td&gt;
			wbxml&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/vnd.wap.wmlc
		&lt;/td&gt;
		&lt;td&gt;
			.wmlc wmlc&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/vnd.wap.wmlscriptc
		&lt;/td&gt;
		&lt;td&gt;
			.wmlsc wmlsc&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/voicexml+xml
		&lt;/td&gt;
		&lt;td&gt;
			vxml&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-bcpio
		&lt;/td&gt;
		&lt;td&gt;
			bcpio&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-cdlink
		&lt;/td&gt;
		&lt;td&gt;
			vcd&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-chess-pgn
		&lt;/td&gt;
		&lt;td&gt;
			pgn&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-cpio
		&lt;/td&gt;
		&lt;td&gt;
			cpio&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-csh
		&lt;/td&gt;
		&lt;td&gt;
			csh&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-director
		&lt;/td&gt;
		&lt;td&gt;
			dcr dir dxr&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-dvi
		&lt;/td&gt;
		&lt;td&gt;
			dvi&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-futuresplash
		&lt;/td&gt;
		&lt;td&gt;
			spl&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-gtar
		&lt;/td&gt;
		&lt;td&gt;
			gtar&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-hdf
		&lt;/td&gt;
		&lt;td&gt;
			hdf&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-httpd-php
		&lt;/td&gt;
		&lt;td&gt;
			.php .php4 .php3 .phtml&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-httpd-php-source
		&lt;/td&gt;
		&lt;td&gt;
			.phps&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-javascript
		&lt;/td&gt;
		&lt;td&gt;
			js&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-koan
		&lt;/td&gt;
		&lt;td&gt;
			skp skd skt skm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-latex
		&lt;/td&gt;
		&lt;td&gt;
			latex&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-netcdf
		&lt;/td&gt;
		&lt;td&gt;
			nc cdf&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-pkcs7-crl
		&lt;/td&gt;
		&lt;td&gt;
			.crl&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-sh
		&lt;/td&gt;
		&lt;td&gt;
			sh&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-shar
		&lt;/td&gt;
		&lt;td&gt;
			shar&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-shockwave-flash
		&lt;/td&gt;
		&lt;td&gt;
			swf&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-stuffit
		&lt;/td&gt;
		&lt;td&gt;
			sit&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-sv4cpio
		&lt;/td&gt;
		&lt;td&gt;
			sv4cpio&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-sv4crc
		&lt;/td&gt;
		&lt;td&gt;
			sv4crc&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-tar
		&lt;/td&gt;
		&lt;td&gt;
			.tgz tar&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-tcl
		&lt;/td&gt;
		&lt;td&gt;
			tcl&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-tex
		&lt;/td&gt;
		&lt;td&gt;
			tex&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-texinfo
		&lt;/td&gt;
		&lt;td&gt;
			texinfo texi&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-troff
		&lt;/td&gt;
		&lt;td&gt;
			t tr roff&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-troff-man
		&lt;/td&gt;
		&lt;td&gt;
			man&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-troff-me
		&lt;/td&gt;
		&lt;td&gt;
			me&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-troff-ms
		&lt;/td&gt;
		&lt;td&gt;
			ms&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-ustar
		&lt;/td&gt;
		&lt;td&gt;
			ustar&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-wais-source
		&lt;/td&gt;
		&lt;td&gt;
			src&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/x-x509-ca-cert
		&lt;/td&gt;
		&lt;td&gt;
			.crt&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/xhtml+xml
		&lt;/td&gt;
		&lt;td&gt;
			xhtml xht&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/xml
		&lt;/td&gt;
		&lt;td&gt;
			xml xsl&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/xml-dtd
		&lt;/td&gt;
		&lt;td&gt;
			dtd&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/xslt+xml
		&lt;/td&gt;
		&lt;td&gt;
			xslt&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			application/zip
		&lt;/td&gt;
		&lt;td&gt;
			zip&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/basic
		&lt;/td&gt;
		&lt;td&gt;
			au snd&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/midi
		&lt;/td&gt;
		&lt;td&gt;
			mid midi kar&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/mpeg
		&lt;/td&gt;
		&lt;td&gt;
			mpga mp2 mp3&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/x-aiff
		&lt;/td&gt;
		&lt;td&gt;
			aif aiff aifc&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/x-mpegurl
		&lt;/td&gt;
		&lt;td&gt;
			m3u&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/x-pn-realaudio
		&lt;/td&gt;
		&lt;td&gt;
			ram rm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/x-pn-realaudio-plugin
		&lt;/td&gt;
		&lt;td&gt;
			rpm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/x-realaudio
		&lt;/td&gt;
		&lt;td&gt;
			ra&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			audio/x-wav
		&lt;/td&gt;
		&lt;td&gt;
			wav&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			chemical/x-pdb
		&lt;/td&gt;
		&lt;td&gt;
			pdb&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			chemical/x-xyz
		&lt;/td&gt;
		&lt;td&gt;
			xyz&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/bmp
		&lt;/td&gt;
		&lt;td&gt;
			bmp&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/cgm
		&lt;/td&gt;
		&lt;td&gt;
			cgm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/gif
		&lt;/td&gt;
		&lt;td&gt;
			gif&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/ief
		&lt;/td&gt;
		&lt;td&gt;
			ief&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/jpeg
		&lt;/td&gt;
		&lt;td&gt;
			jpeg jpg jpe&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/png
		&lt;/td&gt;
		&lt;td&gt;
			png&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/svg+xml
		&lt;/td&gt;
		&lt;td&gt;
			svg&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/tiff
		&lt;/td&gt;
		&lt;td&gt;
			tiff tif&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/vnd.djvu
		&lt;/td&gt;
		&lt;td&gt;
			djvu djv&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/vnd.wap.wbmp
		&lt;/td&gt;
		&lt;td&gt;
			.wbmp wbmp&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-cmu-raster
		&lt;/td&gt;
		&lt;td&gt;
			ras&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-icon
		&lt;/td&gt;
		&lt;td&gt;
			ico&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-portable-anymap
		&lt;/td&gt;
		&lt;td&gt;
			pnm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-portable-bitmap
		&lt;/td&gt;
		&lt;td&gt;
			pbm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-portable-graymap
		&lt;/td&gt;
		&lt;td&gt;
			pgm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-portable-pixmap
		&lt;/td&gt;
		&lt;td&gt;
			ppm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-rgb
		&lt;/td&gt;
		&lt;td&gt;
			rgb&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-xbitmap
		&lt;/td&gt;
		&lt;td&gt;
			xbm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-xpixmap
		&lt;/td&gt;
		&lt;td&gt;
			xpm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			image/x-xwindowdump
		&lt;/td&gt;
		&lt;td&gt;
			xwd&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			model/iges
		&lt;/td&gt;
		&lt;td&gt;
			igs iges&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			model/mesh
		&lt;/td&gt;
		&lt;td&gt;
			msh mesh silo&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			model/vrml
		&lt;/td&gt;
		&lt;td&gt;
			wrl vrml&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/calendar
		&lt;/td&gt;
		&lt;td&gt;
			ics ifb&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/css
		&lt;/td&gt;
		&lt;td&gt;
			css&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/html
		&lt;/td&gt;
		&lt;td&gt;
			.shtml html htm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/plain
		&lt;/td&gt;
		&lt;td&gt;
			asc txt&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/richtext
		&lt;/td&gt;
		&lt;td&gt;
			rtx&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/rtf
		&lt;/td&gt;
		&lt;td&gt;
			rtf&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/sgml
		&lt;/td&gt;
		&lt;td&gt;
			sgml sgm&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/tab-separated-values
		&lt;/td&gt;
		&lt;td&gt;
			tsv&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/vnd.wap.wml
		&lt;/td&gt;
		&lt;td&gt;
			.wml wml&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/vnd.wap.wmlscript
		&lt;/td&gt;
		&lt;td&gt;
			.wmls wmls&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			text/x-setext
		&lt;/td&gt;
		&lt;td&gt;
			etx&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			video/mpeg
		&lt;/td&gt;
		&lt;td&gt;
			mpeg mpg mpe&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			video/quicktime
		&lt;/td&gt;
		&lt;td&gt;
			qt mov&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			video/vnd.mpegurl
		&lt;/td&gt;
		&lt;td&gt;
			mxu&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			video/x-msvideo
		&lt;/td&gt;
		&lt;td&gt;
			avi&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			video/x-sgi-movie
		&lt;/td&gt;
		&lt;td&gt;
			movie&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr&gt;
		&lt;td&gt;
			x-conference/x-cooltalk
		&lt;/td&gt;
		&lt;td&gt;
			ice&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;</description><link>http://www.dailycoding.com/Posts/mime_contenttypes_with_file_extension.aspx</link><pubDate>Tue, 15 Jul 2008 01:59</pubDate></item><item><title>Step by Step Guide to Add a SQL Job in SQL Server 2005</title><comments>http://www.dailycoding.com/Posts/step_by_step_guide_to_add_a_sql_job_in_sql_server_2005.aspx#comments</comments><dc:creator>Daily Coder</dc:creator><category>Database</category><description>&lt;link id="ctl00_mainLink" href="styles.css" rel="stylesheet" type="text/css" /&gt;
&lt;p&gt;
	This is about adding a new SQL Jobs in the Sql Server 2005.&lt;/p&gt;
&lt;p&gt;
	&lt;h3&gt;
		Step 1&lt;/h3&gt;
	Make sure that the SQL Server Agent is up and running. You can see it in the taskbar
	icon.
	&lt;br /&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/01_sql_server_taskbar_icon.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	If SQL Server Agent is not running, start it from the SQL Server Configuration Manger&lt;br /&gt;&lt;!--more--&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/02_start_sql_server_agent.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	You can also start the SQL Server Agent from the command prompt using the command
	netstart
	&lt;br /&gt;
	&lt;pre class="csharpcode"&gt;
&lt;span class="kwrd"&gt;net start "SQL Server Agent (&amp;lt;instance name&amp;gt;)"&lt;/span&gt;
&lt;span class="rem"&gt;e.g net start "SQL Server Agent (SQLSERVER01)"&lt;/span&gt;
&lt;/pre&gt;
&lt;/p&gt;
&lt;p&gt;
	&lt;h3&gt;
		Step 2&lt;/h3&gt;
	Connect to the database engine of SQL server using SQL Server Management Studio.
	&lt;br /&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/03_connect_sql_server_management_studio.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	&lt;h3&gt;
		Step 3&lt;/h3&gt;
	Expand the SQL Server Agent. You will see a Jobs folder over there. Right click
	on jobs and choose Add New.
	&lt;br /&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/04_sql_server_agent_jobs.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	&lt;h3&gt;
		Step 4&lt;/h3&gt;
	A New Job popup will appear. Specify the name of the job.
	&lt;br /&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/05_add_new_sql_job.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	&lt;h3&gt;
		Step 5&lt;/h3&gt;
	Cilck next on the "Steps" in the left menu. A sql job can contain one or more steps.
	A step might be simply an sql statement or a stored procedure call. Add you step
	here
	&lt;br /&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/06_add_new_sql_job_step.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	Job step added
	&lt;br /&gt;
&lt;img src="http://www.dailycoding.com/Uploads/2008/07/09_new_sql_job_step_added.jpg" /&gt;
	
&lt;/p&gt;
&lt;p&gt;
	&lt;h3&gt;
		Step 5&lt;/h3&gt;
	Cilck next on the "Schedules" in the left menu. A sql job can contain one or more
	schedules. A schedule is basically the time at which sql job will run it self. You
	can specify recurring schedules also.
	&lt;br /&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/08_add_new_sql_job_schedule.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	Job schedule added
	&lt;br /&gt;
	&lt;img src="http://www.dailycoding.com/Uploads/2008/07/07_new_sql_job_schedule_added.jpg" /&gt;
&lt;/p&gt;
&lt;p&gt;
	You sql job is ready now. However there are other thing you can use if needed like
	Alert, Notifications etc.&lt;/p&gt;</description><link>http://www.dailycoding.com/Posts/step_by_step_guide_to_add_a_sql_job_in_sql_server_2005.aspx</link><pubDate>Thu, 10 Jul 2008 01:56</pubDate></item></channel></rss>
