Thursday, November 11, 2010

How to: Serializable with DAAB

This is how we can convert as Serializable which are written in Data Layer with Enterprise Library DAAB. All you need to do is make the Class and Connection object as Serializable.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Text;
using System.Data;
using System.Data.Common;
using Microsoft.Practices.EnterpriseLibrary.Data;
using System.Runtime.Serialization;
/// <summary>
/// Summary description for DataLayer
/// </summary>
[Serializable]
public class DataLayer : IDeserializationCallback
{
    [NonSerialized]
    Database db;
    
	public DataLayer()
	{
        db = DatabaseFactory.CreateDatabase("DBConnectionString");        
	}
    public DataTable GetClients()
    {
        DataTable result = new DataTable();
        DbCommand dbcommand = db.GetStoredProcCommand("GetAll_Clients");
        DataSet ds = db.ExecuteDataSet(dbcommand);
        if (ds.Tables.Count > 0)
        {
            result = ds.Tables[0];
            ds = null;
        }
        return result;
    }
    #region IDeserializationCallback Members
    void IDeserializationCallback.OnDeserialization(object sender)
    {
        db = DatabaseFactory.CreateDatabase("DBConnectionString");
    }
    #endregion
}

But you need to make all the data layer classes serializble this way to get the connection right.

Wednesday, November 10, 2010

Windows Azure Services Platform

Windows Azure™ is a cloud services operating system that serves as the development, service hosting and service management environment for the Windows Azure platform. Windows Azure provides developers with on-demand compute and storage to host, scale, and manage web applications on the internet through Microsoft® datacenters.

Windows Azure is a flexible platform that supports multiple languages and integrates with your existing on-premises environment. To build applications and services on Windows Azure, developers can use their existing Microsoft Visual Studio® expertise. In addition, Windows Azure supports popular standards, protocols and languages including SOAP, REST, XML, Java, PHP and Ruby.

Application Scenarios:

Windows Azure is a service that allows developers to run applications and store data on servers owned and operated by Microsoft. These cloud applications can be targeted at businesses, consumers or both. Some examples are:

  • Enterprises that use Windows Azure to run their own line-of-business, batch processing or large-volume computations.
  • An independent software vendor (ISV) that creates a SaaS application targeted towards business users.
  • Perform large-volume storage, batch processing, intense or large-volume computations
  • An ISV that creates a SaaS application targeted towards consumers.

Benefits:

  • Agility: Take advantage of development tools, automated service management and global datacenter presence to respond faster to customer needs, focus on your competitive differentiators, and reach new markets.
  • Efficiency: Windows Azure improves productivity and increases operational efficiency by lowering up-front capital costs. Customers and partners can realize a reduction in Total Cost of Operations of some workloads by up to 30 – 40% over a 3 year period . The consumption based pricing, packages and discounts for partners lower the barrier to entry for cloud services adoption and ensure a predictable IT spend.
  • Focus: Focus on delivering services and value to your customers – and not on managing technology infrastructure. Windows Azure enables you to spend less time on operational hurdles and more time focusing on your competitive differentiators.
  • Simplicity: Utilize your existing skills in familiar languages such as .NET, Java and PHP to create and manage web applications and services.
  • Trustworthy: Enterprise class service backed by a reliable service level agreements and a rich online services experience.

Features:

Windows® Azure serves as the development, run-time, and control environment for the Windows Azure Platform. Windows Azure handles load balancing, resource management and life cycle management of a cloud service based on requirements that the owner of the service established. A developer who wishes to deploy an application to Windows Azure specifies the service topology, including the number of instances to deploy and any configuration settings. Windows Azure deploys the service and manages upgrades and failures to maintain availability.

Storage Services

The Windows Azure storage services provide persistent, durable storage in the cloud. The fundamental storage services include:

  • Binary Large Object (BLOB) service for storing text or binary data
  • Queue service, for reliable, persistent messaging between services
  • Table service, for structured storage that can be queried
  • Windows Azure Drive that allows Windows Azure applications to mount a Page Blob, which is a single volume NTFS VHD. This allows applications to upload/download VHDs via blobs.

The Windows Azure SDK offers a REST API and a managed API for working with the storage services. You may access the storage services from within a service running in Windows Azure or directly over the Internet from any application that can send and receive data over HTTP/HTTPS.

Learn more about Windows Azure on MSDN

Tuesday, November 09, 2010

Happy Birthday, Firefox

Today marks the sixth birthday of the popular web browser Firefox. It was launched on November 9, 2004 as a lightweight and more secure alternative to Internet Explorer 6, which was the dominant browser at the time. Six years later, and Firefox is now the second most widely used browser with steady growth and 31.5% market share according to StatCounter. The next major version of Firefox, Firefox 4, was originally scheduled to be launched by the end of 2010 but was recently delayed into early 2011.

The new version will bring several important improvements like HTML5 support, redesigned user interface, multi-touch functionality, hardware-accelerated HD video and improved support for add-ons through Jetpack

Friday, November 05, 2010

RockMelt, the Social Savvy Browser

RockMelt, a new browser that lives in the cloud and uses Facebook authentication to synchronize a user’s browsing experience across machines, went into limited public beta today.

It was built around the premise that the browser is busted. The thought is that older browsers aren’t made for the way we now use the web, and maybe it’s a solid way of thinking. After all, browsing is a passive activity, and the Internet is increasingly about interaction.

There are some unique concepts here, namely the fact that RockMelt lives in the cloud. This allows your “browser experience” to be, in a way, profiled. Your settings, bookmarks, etc., are all backed up online.

Using Facebook for authentication, your user environment can be replicated anywhere RockMelt is installed. And really, that’s what RockMelt is all about: The user environment.

Users of Google Chrome will feel at home, because RockMelt is built on Chromium, the open source project behind Google’s browser. The major differences are columns running down each side of the browser.

The left side depicts your favorite Facebook contacts. When a contact is listed on the left bar, you’ll be able to quickly initiate Facebook chats with them or post content to their Facebook walls. You can also easily send them e-mails through the seamless contact pop out.

Straddling the right side is your bookmarks — and here’s another area where RockMelt’s cloud is put to clever use. Bookmarks are updated from the cloud, so content is cached and waiting for you when you log on.

All in all, RockMelt is an interesting twist on the browsing experience. The social elements of the browser make for a compelling and streamlined online interaction process. And because it’s powered by Chromium, it not only supports Chromeextensions, it’s guaranteed to support the latest and greatest aspects of the web, like HTML5 and CSS3.

Thursday, October 28, 2010

How Application Pools Works ? (IIS 6.0)

What are Application pools? How it actually Works? The concept of Application Pools has from IIS 6.0. Application pools are used to separate sets of IIS worker processes that share the same configuration and application boundaries. Application pools used to isolate our web application for better security, reliability, and availability and performance and keep running with out impacting each other . The worker process serves as the process boundary that separates each application pool so that when one worker process or application is having an issue or recycles, other applications or worker processes are not affected. One Application Pool can have multiple worker process.

When you run IIS 6.0 in worker process isolation mode, you can separate different Web applications and Web sites into groups known as Application pools. An Application pool is a group of one or more URLs that are served by a worker process or set of worker processes. Any Web directory or virtual directory can be assigned to an application pool. Each application pool is given its own set of server resources. That way, if a Web site crashes, it won’t effect sites in other application pools.

A classic example of this is a Web site with a memory leak. If all of the Web sites hosted on a particular server were to share system resources, and one of the Web sites had a memory leak, it could potentially take memory away from the other hosted sites. If the leaky site were in its own application pool though, the memory leak would not effect any other site because each application pool has its own server resources (including memory).

Main idea behind application pools are
1. Isolation of Different Web Application
2. Individual worker process for different web application
3. More reliably web application
4. Better Performance

For more information check this URL from MSDN.

Hope this is useful Smile