September, 2009

  • Wriju's BLOG

    Podcast : Parallel Computing in Visual Studio 2010 – “Task” API



  • Wriju's BLOG

    Web Application Toolkits to the Web Announcement



    image Today with the announcement of Microsoft WebsiteSpark, we are launching a number of Web Application Toolkits to the Web. Web Application Toolkits are designed to enable Web Developers to simply extend their web application capabilities by providing them with a packaged set of running samples, templates and documentation.



    The goal for the Web Application Toolkits is to provide Web Developers with resources such as project templates, controls, and code samples along with simplified documentation all in a consistent packaged format that is easy to download and run in a very short period of time. One of the key criteria around the Web Application Toolkits is to enable Web Developers to get to an F5 (Run) experience very quickly to ensure that this is the right solution for their problem; How many times have you heard developers trying for hours to get a sample to work only to find it does not do what they expected. The expectation is that with the correct prerequisites installed using the Web Platform Installer, a Web Developer can have a Web Application Toolkit sample application installed and running in 5mins.


    For the Microsoft WebsiteSpark launch, we have released 7 Web Application Toolkits, together with an introduction to the Web Application Toolkits on Channel9 by James Senior and Jonathan Carter. The scenarios were selected based on feedback from community developers with the first 7 being detailed below.  



    Web Application Toolkit for Internet Explorer 8 Extensibility


    Today users can access rich information and services while they are browsing a site; it's not a trivial task to expose this content to the same users when they are not on that site. The goal of this Web Application Toolkit is to leverage the new features in Internet Explorer 8 (Web Slices, Accelerators and Visual Search Providers) to extend the reach of your web site and services also to those users that are not on your site. The Web Application Toolkit includes a set of ASP.NET Web Controls that you can use to take advantage of these IE new features in your own Web application.

    Check out the accompanying screencast.


    Web Application Toolkit for Bing Search


    Bing is a powerful new Decision Engine designed to help consumers accomplish tasks and make faster, more informed decisions. The Bing Application Programming Interface (API) provides developers programmatic access to Bing, offering flexible options for building or enhancing your site or applications. This Web Application Toolkit shows how to take advantage of the Bing API to add search capabilities to your Web site by leveraging the various search results that the Bing API provides, including Web content, images, news and videos, among others. Through this Web Application Toolkit you will also discover how to use ASP.NET AJAX and jQuery to provide an enhanced and more interactive end user experience when using the Bing API.




    Web Application Toolkit for REST Services


    Many Web applications today are starting to expose data as REST service interfaces, so it can be accessed through APIs by other tiers of the application or even by other applications. A RESTful web service is a simple Web service implemented using HTTP and the principles of REST. REST Services focus on resources; each one is represented by a unique URI, and users interact with them via their URI using the HTTP uniform interface. This Web Application Toolkit shows how to easily add REST service interfaces for an existing Web application. The Web Application Toolkit includes a sample REST service, two sample client applications that access the REST services, one using simple ASP.NET Web Forms and a second Web application using AJAX to asynchronously invoke the REST service and finally a custom project template for Visual Studio to make it very easy to build new REST Services.

    Check out the accompanying screencast.



    Web Application Toolkit for Mobile Web Applications


    This Web Application Toolkit is designed to demonstrate how to extend an existing ASP.NET MVC Web application to provide access from mobile devices. To enable mobile access, the Web application should have views targeting each of the mobile devices to be supported. The MVC pattern helps you create applications that separate the different aspects of the application (input logic, business logic, and UI logic), while providing a loose coupling between these elements.  This Web Application Toolkit provides a component called MobileCapableViewEngine that enables the Web application to show the appropriate view depending on the device's browser that is performing the request.   It also includes a sample site that provides different views for Windows Mobile, IPhone, and Blackberry devices.  

    Check out the accompanying screencast.



    Web Application Toolkit for Template-Driven Email


    This Web Application Toolkit is designed to demonstrate how to generate and send dynamic, template-based emails from a web application. There are many common scenarios where notification emails need to be sent to end users. Examples of these common scenarios may involve notifying a user of their newly created account, sending a new password in respond to a forgotten password request, or emailing an alert under specific business circumstances, such as the creation of a order. Typically the E-mails sent from a Web application scenario are formatted as HTML, include CSS stylesheets, and images and need to be generated dynamically with custom or user-specific data.  This Web Application Toolkit includes samples that show how to use templates to generate these dynamic email bodies. 

    Check out the accompanying screencast.



    Web Application Toolkit for making Your Web Site Social

    Adding social capabilities to your Web site allows you to attract new users, keep them on your Web site for longer and get them to come back more often. This Web Application Toolkit shows how, using a few lines of code with the Windows Live Messenger Web Toolkit, it is possible to add social capabilities to a Web site with instant messaging from a website to various client endpoints like Windows, Windows Mobile, Xbox 360 and Mac.  Behind the scenes is a powerful set of UI Controls and a JavaScript library that connect your website to the Messenger Service which is used by 330 million users around the world. 

    Check out the accompanying screencast.


    Web Application Toolkit for FAQs


    The majority of web sites have the need to display a list of frequently asked questions to their users. Although it's not difficult to create a simple set of FAQ pages, creating a great user experience that supports searching for FAQs, filtering, and paging, can become more difficult. Furthermore, this is often common functionality that has to be implemented repeatedly in multiple Web sites. This Web Application Toolkit is designed to provide a starting set of code including ASP.NET pages, data access logic, and database schemas, for integrating Frequently Asked Questions into your own ASP.NET MVC Web application.

    Check out the accompanying screencast.




    You can find the complete list of Web Application Toolkits here.   With this initial release of 7 Web Application Toolkits, we are just getting started.  We have plans for several more and we are exploring additional ways to make it easier for Web Developers to find and reuse this content. 

  • Wriju's BLOG

    Scott Hanselman's 2009 Ultimate Developer and Power Users Tool List for Windows


    Another super compilation


  • Wriju's BLOG

    What’s new in ASP.NET 4.0 and Visual Studio Beta 2?


    List is quite big!!!


    Core Services

       Web.config File Minification

       Extensible Output Caching

       Auto-Start Web Applications

       Permanently Redirecting a Page

       The Incredible Shrinking Session State

       Expanding the Range of Allowable URLs

       Extensible Request Validation

       Object Caching and Object Caching Extensibility

       Extensible HTML, URL, and HTTP Header Encoding

       Performance Monitoring for Individual Applications in a Single Worker Process


    New Features in ASP.NET AJAX 4

       Client Template Rendering

       Instantiating Behaviors and Controls Declaratively

       Live Data Binding

       Using the Observer Pattern with JavaScript Objects and Arrays

       The DataView Control

       The AdoNetServiceProxy Class

       The DataContext and AdoNetDataContext Classes

       Refactoring the Microsoft AJAX Framework Libraries

       The DOM Ready Event

       Using JSONP to Retrieve Cross-Domain Data.

    Web Forms

       Setting Meta Tags with the Page.MetaKeywords and Page.MetaDescription Properties

       Enabling View State for Individual Controls

       Changes to Browser Capabilities

       Routing in ASP.NET 4

       Setting Client IDs

       Persisting Row Selection in Data Controls

       ASP.NET Chart Control

       Filtering Data with the QueryExtender Control

       Html Encoded Code Expressions

       Project Template Changes

       CSS Improvements

       Hiding div Elements Around Hidden Fields.

       Rendering an Outer Table for Templated Controls

       ListView Control Enhancements

       CheckBoxList and RadioButtonList Control Enhancements

       Menu Control Improvements

       Wizard and CreateUserWizard Controls


    Dynamic Data

       Enabling Dynamic Data for Existing Projects

       Declarative DynamicDataManager Control Syntax

       Entity Templates

       New Field Templates for URLs and E-mail Addresses

       Creating Links with the DynamicHyperLink Control

       Support for Inheritance in the Data Model

       Support for Many-to-Many Relationships (Entity Framework Only)

       New Attributes to Control Display and Support Enumerations

       Enhanced Support for Filters

    Visual Studio 2010 Web Designer Improvements

       Improved CSS Compatibility

       HTML and JScript Snippets

       JScript IntelliSense Enhancements.

    Web Application Deployment with Visual Studio 2010

       Web Packaging

       Web.config Transformation

       Database Deployment

       One-Click Publish for Web Applications



    Find at, more whitepapers on ASP.Net can be found at



  • Wriju's BLOG

    Parallel Computing: Leverage the better hardware tomorrow


    It has quite a sometime we have been using .NET with System.Threading namespace. So what is new there in Parallel Computing in .NET Framework 4.0 with Visual Studio 2010. There are a lot


    Ø  Task-based fine grained parallelism

    Ø  Better debugger feature

    Ø  Structured Parallelism

    Ø  Declarative Parallelism


    Above all you are getting yourself ready for better tomorrow. Why one should be using fine-grained parallelism not the classic Threading? I feel


    Ø  Threading still is with OS’s ownership

    Ø  Very much dependent on number of CPSs. Reason why it is, if you have more Threads than the number of CPUs it will have more context switches. Each Thread requires 1 MB dedicated memory. So more Threads more dedicated memory.


    So what is special there in the Task class?

    Ø  It creates small pieces of work and distributes the work across the CPUs. More CPUs more distribution. Less CPU – no harm.

    Ø  It has a concept of work-stealing. What that means?

    o    With the improved CLR Thread Pool it works just like thread. It first creates work in Global Queue. Then passes them to all Worker Processes Local Queue. Till this time it has no difference from System.Threading.

    o    Now all the Local queue will create there sub Tasks and keeps on working. If one of the Worker Processes is empty they will not sit idle, they will steal the task from others local Queue.

    o    As well when it passes Task to other Worker Process does not give the last one which is fresh in CPU. Always give the first one so that not enough context switching will not happen.


    I will be writing few post on Parallel Computing – keep watching and Happy Weekend.




  • Wriju's BLOG

    Podcast : C# 4.0 - Dynamic Object


    I thought I will start the series of podcasting. This one is on Dynamic Object of C# 4.0




Page 1 of 1 (6 items)