Dev Notes

Suspended Indefinetly...


<script type="text/javascript"><!-- google_ad_client = "pub-9887566656700242"; google_ad_width = 120; google_ad_height = 600; google_ad_format = "120x600_as"; google_ad_type = "text"; //2006-12-28: Savvy google_ad_channel = "6620623950"; //--></script> <script type="text/javascript" src=""> </script> <script type="text/javascript"><!-- google_ad_client = "pub-9887566656700242"; google_ad_width = 120; google_ad_height = 60; google_ad_format = "120x60_as_rimg"; google_cpa_choice = "CAAQxZqazgEaCMOiwb9yonQWKIHD93M"; google_ad_channel = ""; //--></script> <script type="text/javascript" src=""> </script>



India MVP & CS

My Blog Roll


October 2003 - Posts

Faster than speeding light!

Want to achieve it ? (In SQL Query Analyzer)...from MSDN documentation.

Activity Shortcut
Bookmarks: Clear all bookmarks. CTRL-SHIFT-F2
Bookmarks: Insert or remove a bookmark (toggle). CTRL+F2
Bookmarks: Move to next bookmark. F2
Bookmarks: Move to previous bookmark. SHIFT+F2
Cancel a query. ALT+BREAK
Connections: Connect. CTRL+O
Connections: Disconnect. CTRL+F4
Connections: Disconnect and close child window. CTRL+F4
Database object information. ALT+F1
Editing: Clear the active Editor pane. CTRL+SHIFT+DEL
Editing: Comment out code. CTRL+SHIFT+C
Editing: Copy. You can also use CTRL+INSERT. CTRL+C
Editing: Cut. You can also use SHIFT+DEL. CTRL+X
Editing: Decrease indent. SHIFT+TAB
Editing: Delete through the end of a line in the Editor pane. CTRL+DEL
Editing: Find. CTRL+F
Editing: Go to a line number. CTRL+G
Editing: Increase indent. TAB
Editing: Make selection lowercase. CTRL+SHIFT+L
Editing: Make selection uppercase. CTRL+SHIFT+U
Editing: Paste. You can also use SHIFT+INSERT. CTRL+V
Editing: Remove comments. CTRL+SHIFT+R
Editing: Repeat last search or find next. F3
Editing: Replace. CTRL+H
Editing: Select all. CTRL+A
Editing: Undo. CTRL+Z
Execute a query. You can also use CTRL+E (for backward compatibility). F5
Help for SQL Query Analyzer. F1
Help for the selected Transact-SQL statement. SHIFT+F1
Navigation: Switch between query and result panes. F6
Navigation: Switch panes. Shift+F6
Navigation: Window Selector. CTRL+W
New Query window. CTRL+N
Object Browser (show/hide). F8
Object Search. F4
Parse the query and check syntax. CTRL+F5
Print. CTRL+P
Results: Display results in grid format. CTRL+D
Results: Display results in text format. CTRL+T
Results: Move the splitter. CTRL+B
Results: Save results to file. CTRL+SHIFT+F
Results: Show Results pane (toggle). CTRL+R
Save. CTRL+S
Templates: Insert a template. CTRL+SHIFT+INSERT
Templates: Replace template parameters. CTRL+SHIFT+M
Tuning: Display estimated execution plan. CTRL+L
Tuning: Display execution plan (toggle ON/OFF). CTRL+K
Tuning: Index Tuning Wizard. CTRL+I
Tuning: Show client statistics CTRL+SHIFT+S
Tuning: Show server trace. CTRL+SHIFT+T
Use database. CTRL+U

The Big Blue Spirit !

Big Blue seems bit Proactive!

Source : Deepak

Joys of ASP.NET 2.0 - Series - Part 2 from PDC

excerpt from Bill's Notes

Rob Howard – WSV330 – ASP.NET Programming Using Advanced Caching Techniques in ASP.NET Whidbey


Program Manager, Web Platform & Tools to download the slides


ASP.NET 1.X Output Cache

  • Page Output Caching
    • Cache contents of page to memory
    • Reused cached page on subsequent requests
    • Supported HTTP 1.1 Cache semantics
  • Partial Page Caching
    • Cached User Control in a page
    • Allowed for portions of page to be cached
    • Time based dependencies
  • Programmatic Cache API
    • Cache objects in memory
    • Same cache used for Output Caching
  • Dependencies
    • Time, Key, File
    • Remove items when dependency changes
  • Removal event 

ASP.NET 2.0 Cache

  • Most requested Cache features
    • Support database invalidation
    • Create your own dependencies
  • We listened…
    • Added SQL 7/2000/’Yukon’ cache invalidation 



  • SQL 7 & 2000 Support
    • Table change dependencies on SQL 7 & 2000
    • Requires configuration settings
    • One-time setup of SQL Server database
    • Polling model
  • SQL Server “Yukon
    • Result Set dependencies for SQL Yukon
    • Supported through ADO.NET SqlCommand
    • No setup required
    • Notification model 

SQL Yukon – push based model. Yukon will detect when changes occur and will push to ASP.NET … other databases use a polling method.


SQL 7 & 2000 require a one-time setup … create a table in the database and some stored procedures. SQL Yukon – no setup required.


SQL 7 & 2000

  • Table level notifications only
    • Notification when data in table changes
    • Row-level notification is not supported
  • Requires one time setup of SQL 7/2000
    • Triggers on tables that participate
    • Stored procedures called to check
  • Of Note:
    • Entries in cache table <# of tables in DB
    • Entries in cache = # items in cache table 

New attribute in the output directive – sqldependency=”MyDatabase:Products”


In the web.config:




Cache.Insert(cacheKey, dataset, New SqlCacheDependency(“ACME”, “Products”))


There is no Oracle cache dependency. We don’t know if we want to build one – all because of time constraints. You can build your own though. Easy to do.


Behind the scenes: When we do this polling, we do not do this on your request thread, therefore there is no overhead on the polling.


Dim d as New SqlCacheDependency()


How does this all work? We use a tool aspnet_regsqlcache.exe – this is going to go away in the beta. Set up your database. Creates table. Trigger created. Created dataset and page and we begin monitoring. You update to a table is causing the trigger to change the SqlCD table and then your page knows to use the new data.


Enabling SQL 7 & 2000

  • Alpha – Command Line only
    • Aspnet_regsqlcache.exe
  • Beta – Command Line and Wizard
    • Rolled into aspnet_regsql.exe 

Enabling the table and the database are two separate and distinct things.


configuration – only for sql server 7 and 2000

  • Relates friendly name to connection string
  • Control default polling settings 

pollTime attribute causes the refresh of the polling. This is optional.


  • section
    • Identify connection string 

SQL Server ‘Yukon

  • Granular Notification Support
    • Ex., when data in table changes
    • Ex., when SPROC results change
  • Built in feature of the database
    • No triggers or other services to install
    • Pushes changes to subscribers
  • ADO.NET SqlCommand
    • Supported by Yukon only

This works in a web garden as well.


CacheDependency Changes

  • No breaking changes to CacheDependency
    • Backwards compatible with v1.x code
  • ASP.NET 2.0 CacheDependency class:
    • New virtual properties/methods 

New APIs



  • Post-Cache Substitution
    • Ouput cache entire page
    • Identify regions that are dynamic
  • Uses a PlaceHolder buffer
  • New Response.WriteSubstitution()
    • Wires up substitution event on page
    • Adds a substitution buffer to the response
    • Substitution event returns string value to add
  • New control
    • Drag and drop anywhere content should go.
Visual Studio.NET Road Map 2004-2005

As usual, a the road is clean and green....:)

The important milestones are...

  • Visual Studio code name "Whidbey" (2004). This release of Visual Studio and the .NET Framework will offer innovations and enhancements to the class libraries, common language runtime (CLR), programming languages, and the integrated development environment (IDE). In addition, this product will provide deep support for SQL Server code name "Yukon" by enabling developers to write stored procedures using managed code.
  • Visual Studio code name "Orcas" (2005). This version of Visual Studio and the .NET Framework will provide tools support for the Windows operating system, code name "Longhorn."
  • Joys of ASP.NET 2.0 - Series - Part 1 from PDC

    Thanks Eron for this post.

    Database-driven cache invalidation is thrilling.  Did you know that you can achieve table-level cache invalidation with ASP.NET today?  Here's how:

    The stock ASP.NET 1.0 CacheDependency class can monitor a local or network file.  As the file changes, the appropriate cache entries are evicted from the cache.  We can leverage this to achieve near-realtime cache invalidation as database data changes. 

    • Write a trigger for each table you want to monitor.  The trigger will touch a file on the database's filesystem.  The filename will correspond to the table name.  This can be achieved by invoking the FileSystemObject scripting object.
    CREATE PROCEDURE TouchFile(@FileName varchar(255)) AS
    @FS int, @OLEResult int, @FileID
    @OLEResult = sp_OACreate 'Scripting.FileSystemObject', @FS OUT
    IF @OLEResult <> 0 RAISERROR
    ('could not create FileSystemObject',16,1)
    -- touch the file
    @OLEResult = sp_OAMethod @FS, 'OpenTextFile', @FileID OUT, @FileName, 2, 1
    IF @OLEResult <> 0 RAISERROR
    ('could not touch the file',16,1)
    @OLEResult = sp_OADestroy @FileID
    @OLEResult = sp_OADestroy @FS
    • Share the relevant folder in the database's filesystem.
    • Setup CacheDependency instances to watch the appropriate files for changes.   Use methods on the Response object to interoperate with page-level output caching.  Use the raw caching API for arbitrary data caching.

    This technique offers a number of advantages over the proposed polling mechanism in Whidbey.

    • The invalidation will occur more quickly than with a polling mechanism.
    • No polling is used - the caching API uses the FileSystemMonitor component, that in turn leverages a callback mechanism to detect filesystem changes.

    Other notables about this approach:

    • Like the Whidbey mechanisms, it is web garden and web cluster friendly.
    • An extremely narrow race condition might exist.  It occurs when two or more triggers attempt to touch the same file.  One will succeed, others will fail.  Will this result in stale data?  Given the asynchronous nature of FileSystemMonitor, it is extremely unlikely.  Nonetheless, you might want to bat around the scenarios in your head. 
    ASP.NET Whidbey Information
    ASP.NET "Whidbey"  is now published on's web with an overview of the product and screen shots.

    ASP.NET “Whidbey” Overview Whitepaper
    Get a quick overview about what ASP.NET “Whidbey” and Visual Studio “Whidbey” have to offer.  See the core concepts and key themes that went into building “Whidbey.”

    Visual Studio “Whidbey” Whitepaper
    See in-depth all the new productivity and development features that Visual Studio “Whidbey” has to offer.  This whitepaper provides a drill-down on all the new features with examples of how they make the Web development experience better. 

    PDC Presentations and Hands on Labs
    Here you will find all the great presentations, code, and hands on labs that were available to attendees at the PDC.  You will find deep technical information about all the new features, labs with screenshots that take you through the product, and code samples so you can begin learning how to take advantage of “Whidbey” today.

    Get involved with the “Whidbey” Forums
    The ASP.NET “Whidbey” forums are your place to find more information, provide feedback, and get your questions answered by members of the product team and the community!
    DNUG Hyd meet at Greenpark

    Last weekend the managers of Dotnetusergroup - Hyderabad had a nice meeting at Hotel Green Park.
    Lot of community issues were discussed and took some resolutions to promote DNUG hyd to a good level.
    Ravikanth [MVP], Suresh [MVP] and Jaffer [Community Star] shared some valuable suggestions and concerns on community practices which could help Hyderabad’s .net community more.

    Some of those are

    01. To have manager meetings monthly.
    02. More seminars on architectural topics.
    03. Shorten the group's URL to get more reach.
    04. To get a nice premises for meetings.
    05. To start a library.
    06. Inclusion of community stars as group coordinators.
    07. To modify the home page to look more professional.


    Wow! 500@1 : Shiv consolidated 500 free chapters in to one

    This is really great effort. I could imagine how shiv can manage raw things in to excellent resources.

    A free javascript tree menu

    Very powerfull and developer friendly...

    ASP to ASP.NET Migration Assistant albha Build

    Today team has come up with an alpha build of ASP to ASP.NET Migration assistant.
    I hope they would consider most of the bottle neck issues in such migrations, particularly performance.

    Some issues which should be taken care of in ASP to ASP.NET migration are posted

    More Posts Next page »