<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Sashidhar Kokku's blog</title><link>http://weblogs.asp.net:80/sashidharkokku/</link><description>Anything and everything that comes to mind....mostly .NET</description><item><title>Blog moved.</title><link>http://weblogs.asp.net:80/sashidharkokku/blog-moved</link><description>My blog has moved to http://sashidhar.com

Please update your references to point to the new site.


Thanks,


Sashidhar Kokku
</description><pubDate>Tue, 29 Jun 2010 03:01:00 GMT</pubDate><guid isPermaLink="true">http://weblogs.asp.net:80/sashidharkokku/blog-moved</guid></item><item><title>SQL Profiler Custom Template</title><link>http://weblogs.asp.net:80/sashidharkokku/sql-profiler-custom-template</link><description>&lt;p&gt;One of the things I found annoying with SQL Profiler (for SQL Server 2005) was that it would give me the traces of all the transactions that are happening on the server. I would not argue if its good or bad, however, I found it annoying while debugging, simply because I had to search through the junk to see where my code was being executed. So, to overcome that issue, I created a new template for SQL Profiler that would only show me data that was transmitted from my computer for a database of my choice. Here's how I did it.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Creating the template&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Fire up SQL Profiler&lt;/li&gt;    &lt;li&gt;Click on the &amp;quot;New Template&amp;quot; icon or choose from &lt;strong&gt;&amp;quot;File -&amp;gt; Templates -&amp;gt; New Template&amp;quot;&amp;#160; &lt;/strong&gt;&lt;/li&gt;    &lt;li&gt;Your screen should look like this     &lt;br /&gt; &lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_4.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="412" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_thumb_1.png" width="644" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Give a name to the sample template... say &amp;quot;AdventureWorksTracer&amp;quot;. The idea is to get only &amp;quot;AdventureWorks&amp;quot; related trace messages originating from your computer.&lt;/li&gt;    &lt;li&gt;Also, under the &amp;quot;&lt;strong&gt;General&lt;/strong&gt;&amp;quot; tab, check the &amp;quot;&lt;strong&gt;Base new template on existing one&lt;/strong&gt;&amp;quot; and pick &amp;quot;&lt;strong&gt;TSQL_SPs&lt;/strong&gt;&amp;quot; from the drop-down menu. Your screen should look like this.      &lt;br /&gt; &lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_6.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="412" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_thumb_2.png" width="644" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Click on the &amp;quot;&lt;strong&gt;Events Selection&lt;/strong&gt;&amp;quot; tab. The default view would look like       &lt;br /&gt;&lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_8.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="412" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_thumb_3.png" width="644" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Check the &amp;quot;&lt;strong&gt;Show all columns&lt;/strong&gt;&amp;quot; checkbox. This will add more columns to the visible area of the screen, and also give us more options in the &amp;quot;&lt;strong&gt;Column Filters&lt;/strong&gt;&amp;quot;       &lt;br /&gt;&lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_10.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="412" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_thumb_4.png" width="644" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Click on &amp;quot;Column Filters&amp;quot; button, and set the database name as &amp;quot;AdventureWorks&amp;quot;      &lt;br /&gt;&lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_12.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="324" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_thumb_5.png" width="409" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Further down on the left side of the window, search for &amp;quot;&lt;strong&gt;Hostname&lt;/strong&gt;&amp;quot; (this will come only if you checked the &amp;quot;Show all columns&amp;quot; in step 7). In the hostname, add your computer name (you can find out your computer name by right clicking on &amp;quot;My Computer&amp;quot; -&amp;gt; Properties -&amp;gt; Computer name ) &lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_14.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="324" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_thumb_6.png" width="409" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Click Ok to close this window. Finally click on Save to close the template design window as well. You may choose any extra columns you want before you close it though.&lt;/li&gt;    &lt;li&gt;TADA... you are done now. All you need to do now is to use this new template.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;strong&gt;Using the template&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;In SQL Profiler, File -&amp;gt; New Trace&lt;/li&gt;    &lt;li&gt;In the screen that looks like this      &lt;br /&gt;&lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_16.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="413" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/SQLProfilerCustomTemplate_1F38/image_thumb_7.png" width="644" border="0" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;select your newly created template.&lt;/li&gt;    &lt;li&gt;Click Run, and debug your way to glory.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;strong&gt;Advantages&lt;/strong&gt;:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;I get to see less junk coming from fellow developers.&lt;/li&gt;    &lt;li&gt;My database name filter based template helps me start up a template for one database alone (obviously I will be working on one db at any point of time)&lt;/li&gt; &lt;/ol&gt;</description><pubDate>Fri, 20 Jun 2008 06:11:40 GMT</pubDate><guid isPermaLink="true">http://weblogs.asp.net:80/sashidharkokku/sql-profiler-custom-template</guid><category>How To</category><category>SQL Profiler</category><category>SQL Server 2005</category><category>Templates</category><category>Tips and Tricks</category></item><item><title>InnerText and TextContent</title><link>http://weblogs.asp.net:80/sashidharkokku/innertext-and-textcontent</link><description>&lt;p&gt;Just a quick tid-bit of browser specific information .&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;InnerText in IE =&amp;gt; textContent in Firefox&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Tested on Firefox 2+, and IE 7&lt;/p&gt;</description><pubDate>Tue, 27 May 2008 22:04:31 GMT</pubDate><guid isPermaLink="true">http://weblogs.asp.net:80/sashidharkokku/innertext-and-textcontent</guid><category>Browsers</category><category>Firefox 2+</category><category>How To</category><category>IE 7</category><category>Javascript reference</category><category>JS</category><category>Tips and Tricks</category></item><item><title>ASP.NET Ajax 1.0 toolkit : Calendar Extender hide on lost focus</title><link>http://weblogs.asp.net:80/sashidharkokku/asp-net-ajax-1-0-toolkit-calendar-extender-hide-on-lost-focus</link><description>&lt;p&gt;One of the problems with the calendar extender in the 1.0 toolkit is that if I use a button/image to show the calendar, I am forced to click on it again to hide the calendar. And imagine when you use it in a grid, the calendars seem to start piling up on one another like this.&lt;/p&gt;  &lt;p&gt;Firefox 2+&lt;/p&gt;  &lt;p&gt;&lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/ASP.0toolkitCalendarExtenderhideonlostfo_134CF/image_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="352" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/ASP.0toolkitCalendarExtenderhideonlostfo_134CF/image_thumb.png" width="291" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;IE - 7&lt;/p&gt;  &lt;p&gt;&lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/ASP.0toolkitCalendarExtenderhideonlostfo_134CF/image_4.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="399" alt="image" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/ASP.0toolkitCalendarExtenderhideonlostfo_134CF/image_thumb_1.png" width="272" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Rather than have the end-user click on it twice to show then hide it back again, it would be simple to write a small javascript snippet that would do it for you. &lt;/p&gt;  &lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;   &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;     &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;cc1:CalendarExtender&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;CalendarExtender1&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;TargetControlID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;txtDOB&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;PopupPosition&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;BottomLeft&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;Animated&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;True&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;PopupButtonID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;imgCalendar&amp;quot;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;                                                   &lt;span style="color: #ff0000"&gt;CssClass&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;radcalendar&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;FirstDayOfWeek&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;Default&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;OnClientDateSelectionChanged&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;hideCalendar&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;                                               &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;cc1:CalendarExtender&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;
  &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;
    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;.Page.ClientScript.RegisterClientScriptBlock(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;.GetType(), &lt;span style="color: #006080"&gt;&amp;quot;hideCalendar&amp;quot;&lt;/span&gt;, &lt;span style="color: #006080"&gt;@&amp;quot;function hideCalendar(calExtender) { calExtender.hide(); }&amp;quot;&lt;/span&gt;, &lt;span style="color: #0000ff"&gt;true&lt;/span&gt;);&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;One way to add this script is to add it for all the pages that use the calendar control, else you can just add it to the common.js that one would add to all the pages/just the masterpage of your asp.net application.&lt;/p&gt;</description><pubDate>Mon, 19 May 2008 01:57:54 GMT</pubDate><guid isPermaLink="true">http://weblogs.asp.net:80/sashidharkokku/asp-net-ajax-1-0-toolkit-calendar-extender-hide-on-lost-focus</guid><category>2.0</category><category>AjaxToolkit 1.0</category><category>ASP.NET</category><category>Calendar extender</category><category>How To</category><category>JS</category></item><item><title>Including JS file references in masterpages</title><link>http://weblogs.asp.net:80/sashidharkokku/including-js-file-references-in-masterpages</link><description>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;One of the issues I have faced with including site-wide JS files while developing web-applications is the simple fact that I was developing in Windows XP and IIS 5. And IIS puts in each of my websites as virtual-directories. So , I always have trouble including references to js files from the master-pages. &lt;/p&gt;  &lt;p&gt;One alternative was to have a virtual directory outside the project structure and point it to the js folder, and my references would work properly. But there are other nicer ways to do the same.&lt;/p&gt;  &lt;p&gt;1. Include the script tag as a server side tag, and give the reference to the file with a &amp;quot;~&amp;quot;&lt;/p&gt;  &lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;   &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;     &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;html&lt;/span&gt; &lt;span style="color: #ff0000"&gt;xmlns&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;head&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Master page&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;    &lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt; &lt;span style="color: #ff0000"&gt;language&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;src&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;~/App_Common/Scripts/tablecloth.js&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;head&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;body&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;2. Add some code to your masterpage's load event that would register the file after resolving the client url.&lt;/p&gt;

&lt;div style="border-right: gray 1px solid; padding-right: 4px; border-top: gray 1px solid; padding-left: 4px; font-size: 8pt; padding-bottom: 4px; margin: 20px 0px 10px; overflow: auto; border-left: gray 1px solid; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; padding-top: 4px; border-bottom: gray 1px solid; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; background-color: #f4f4f4"&gt;
  &lt;div style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt;
    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;&lt;span style="color: #0000ff"&gt;protected&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; Page_Load(&lt;span style="color: #0000ff"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt; {&lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none"&gt;     &lt;span style="color: #0000ff"&gt;this&lt;/span&gt;.Page.ClientScript.RegisterClientScriptInclude(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;.GetType(), &lt;span style="color: #006080"&gt;&amp;quot;tableCloth&amp;quot;&lt;/span&gt;, &lt;span style="color: #0000ff"&gt;this&lt;/span&gt;.ResolveClientUrl(&lt;span style="color: #006080"&gt;&amp;quot;~/App_Common/Scripts/tablecloth.js&amp;quot;&lt;/span&gt;));         &lt;/pre&gt;

    &lt;pre style="padding-right: 0px; padding-left: 0px; font-size: 8pt; padding-bottom: 0px; margin: 0em; overflow: visible; width: 100%; color: black; border-top-style: none; line-height: 12pt; padding-top: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-right-style: none; border-left-style: none; background-color: #f4f4f4; border-bottom-style: none"&gt; }&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;The above two approaches completely avoid having to create a virtual directory of any kind, and work all the time ... so long as the path is correct.&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;References&lt;/strong&gt; : &lt;/em&gt;&lt;a title="http://forums.asp.net/t/908248.aspx" href="http://forums.asp.net/t/908248.aspx"&gt;http://forums.asp.net/t/908248.aspx&lt;/a&gt;&lt;/p&gt;</description><pubDate>Fri, 09 May 2008 21:54:33 GMT</pubDate><guid isPermaLink="true">http://weblogs.asp.net:80/sashidharkokku/including-js-file-references-in-masterpages</guid><category>2.0</category><category>ASP.NET</category><category>How To</category><category>Javascript reference</category><category>Tips and Tricks</category><category>Visual Studio 2005</category></item><item><title>Codeplex project from 1906</title><link>http://weblogs.asp.net:80/sashidharkokku/codeplex-project-from-1906</link><description>&lt;p&gt;All I wanted to see was if there were any projects on Codeplex for SQL intellisense. What do I do....open up Firefox, type in &amp;quot;Sql Intellisense&amp;quot; in the search for codepex, and wola.....&lt;/p&gt;  &lt;p&gt;&lt;a href="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/Codeplexprojectfrom1906_13877/codeplex_thumb%255B1%255D_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="387" alt="codeplex_thumb[1]" src="https://aspblogs.blob.core.windows.net/media/sashidharkokku/WindowsLiveWriter/Codeplexprojectfrom1906_13877/codeplex_thumb%255B1%255D_thumb.png" width="644" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Either the internet was that old....or maybe Codeplex stores just the last 2 digits of the year (HELLO ... Y2K !), or heck...Codeplex does not validate release dates.&lt;/p&gt;</description><pubDate>Wed, 09 Apr 2008 02:13:14 GMT</pubDate><guid isPermaLink="true">http://weblogs.asp.net:80/sashidharkokku/codeplex-project-from-1906</guid><category>Funny</category></item><item><title>Customary introduction.</title><link>http://weblogs.asp.net:80/sashidharkokku/customary-introduction</link><description>&lt;p&gt;&amp;nbsp;Sashidhar Kokku (aka me) is a dude who gets paid for punching the keyboard on a daily basis for the past almost 4 years (as of March 2008). His continuous punching results is web-portals for healthcare insurance companies. &lt;/p&gt;&lt;p&gt;Regarding my education, I hold a Masters from Syracuse University in Computer Science.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Well....that sums up about me. &lt;/p&gt;&lt;p&gt;What am I doing here? I hope to cover some topics in ASP.NET 2.0 and above, my pet projects, my daily discoveries, my "oh-shits", and yeah...and my eureka's (No..i don't code in my bath-tub). Sparing the regular topics that I cover, I will put link to some of the nifty stuff that I bump across during my daily information-intake sessions.&lt;/p&gt;&lt;p&gt;Looking forward to doing a good job and keep myself occupied as well.&lt;/p&gt;&lt;p&gt;And yeah...I also maintain my own blog at www.dynacx.com and a personal website at www.dynacx.net.&lt;br&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Thu, 13 Mar 2008 23:08:00 GMT</pubDate><guid isPermaLink="true">http://weblogs.asp.net:80/sashidharkokku/customary-introduction</guid><category>Introduction</category></item></channel></rss>