Windows Vista Easy Transfer

For those of you buying Windows Vista PCs today (or thinking about buying Windows Vista PCs in the future) and wondering how best to move all the information on your old PC to your new one, I’d like to update you on some of the new ways Windows can help transfer all your personal stuff:  documents, photos, music, email, address book entries, Windows settings, and now, even programs.

The good news is that Microsoft made this process much easier for the millions of people who will buy Windows Vista-based PCs in the coming years.  Read on to see how we designed Windows Vista’s transfer features to work together with special cables from hardware partners, and to learn about the beta release of our new tool for transferring programs, based on the Alohabob PC Relocator software we acquired last year.

Windows Easy Transfer

This wizard is built into Windows Vista and will automatically transfer your personal data from a Windows 2000, Windows XP, or Windows Vista based-PC to a Windows Vista-based PC.  It gathers up the data from your old PC and then applies it on your new PC in the right places.  It will move user accounts, files and folders, email messages and settings, address book entries, and Windows settings.  It does not move programs.

Windows Easy Transfer supports a number of ways to connect the two PCs to actually move the data:

Easy Transfer Cable (more info below)
Home or small business network
Removable or external hard drive
Writable CD or DVD

Easy Transfer Cables

In the past, one of the most difficult parts about the transfer process has been connecting the two computers if you don’t have a home network.  Fortunately, Microsoft have worked with hardware partners to create a really cool new product called Easy Transfer Cables.  These are specially designed to work together with Easy Transfer to move all your data in the easiest and fastest way possible.

They’re USB 2.0 cables with a special chip that enables them to connect two PCs.  (A standard USB cable cannot do this, even if the USB connectors fit).  The cable will come with a CD which has the Easy Transfer software on it — you just install it on your Windows XP-based PC and then plug the cable into both PCs.  That’s it!  The Easy Transfer wizard will popup automatically on both PCs and you can begin transferring right away.

These cables are being manufactured worldwide by a number of partners, including Belkin International, Vivanco Group AG and Bafo Technologies.  They will be sold at retail stores, online retailers and from PC manufacturers.  Look for the Certified for Windows Vista or Works with Windows Vista logo to know that the cable is supported.

Windows Easy Transfer Companion (Beta)

Although the standard Easy Transfer wizard does not move installed programs, this is a very important capability that’s been requested by our customers.  Because of this we have been working on a new tool called Easy Transfer Companion, which will transfer programs and program settings from a Windows XP-based PC to a Windows Vista-based PC.  When used together with Easy Transfer, you will be able to move everything you need to your new PC running Windows Vista.  Easy Transfer Companion has been designed to transfer many of the most popular programs for consumers and small businesses, as well as many others.  You can transfer programs with either an Easy Transfer Cable or a network.  Microsoft released the tool in Beta so that they can take feedback on the overall functionality and get more information about the experience of transferring specific applications outside of those that we’ve tested internally.  At this point the Easy Transfer Companion is only available in English and designed for use in the US.  It is available for download here.

Easy Transfer Companion is based on technology Microsoft acquired from Apptimum, Inc. last year — makers of the popular Alohabob PC Relocator software.  For reference, here is the original press release on this acquisition.

Because this tool is in Beta, at the end of the transfer process it will ask for your feedback on how well it worked so we can continue improving its performance and bring it to a wider number of users in the future.

Because this tool is in Beta, at the end of the transfer process it will ask for your feedback on how well it worked so  Microsoft can continue improving its performance and bring it to a wider number of users in the future.

Advertisements

LINQ – Yet another Masala Mix From Microsoft,Here after forget about writing SQL Queries

I have got the opportunity yesterday to watch the interview of Anders Hejlsberg, the chief architect of C# where described about the next release of C#, code named Orcas,It was quite interesting and amazing to hear about the “Orcas” features.

He also explained how LINQ solves the impedance mismatch between the code that lives on a database server and the code we write with standard programming languages such as C# or VB.

Are you guys wondering what’s up in DLinq its a real gift for developers whom doesn’t have exposure to write SQL Queries,Creating Procedures and functions in SQL Server.

DLinq, a component of the LINQ Project, provides a run-time infrastructure for managing relational data as objects without giving up the ability to query. It does this by translating language-integrated queries into SQL for execution by the database and then translating the tabular results back into objects you define. Your application is then free to manipulate the objects while DLinq stays in the background tracking your changes automatically.

DLinq is designed to be non-intrusive to your application. It is possible to migrate current ADO.NET solutions to DLinq in a piecemeal fashion, sharing the same connections and transactions, since DLinq is simply another component in the ADO.NET family.

Creating Entity Classes
We will start with a simple class Customer and associate it with the customers table in the Northwind sample database. To do this, we need only apply a custom attribute to the top of the class declaration. DLinq defines the Table attribute for this purpose. 

[Table(Name=”Customers”)]
public class Customer
{
 public string CustomerID;
 public string City;
}
The Table attribute has a Name property that you can use to specify the exact name of the database table.  If no Name property is supplied DLinq will assume the database table has the same name as the class. Only instances of classes declared as tables will be able to be stored in the database. Instances of these types of classes are known as entities, and the classes themselves, entity classes.
In addition to associating classes to tables you will need to denote each field or property you intend to associate with a database column. For this, DLinq defines the Column attribute. 
[Table(Name=”Customers”)]
public class Customer
{
 [Column(Id=true)]
 public string CustomerID;
 [Column]
 public string City;
}
The Column attribute has a variety of properties you can use to customize the exact mapping between your fields and the database’s columns. One property of note is the Id property. It tells DLinq that the database column is part of the table’s primary key. 
As with the Table attribute, you only need to supply information in the Column attribute if it differs from what can be deduced from your field or property declaration. In this example, you need to tell DLinq that the CustomerID field is part of the table’s primary key yet you don’t have to specify the exact name or type.
Only fields and properties declared as columns will be persisted to or retrieved from the database. Others will be considered as transient parts of your application logic

 The DataContext
The DataContext is the main conduit by which you retrieve objects from the database and submit changes back. You use it in the same way that you would use an ADO.NET Connection. In fact, the DataContext is initialized with a connection or connection string you supply. The purpose of the DataContext is to translate your requests for objects into SQL queries made against the database and then assemble objects out of the results. The DataContext enables Language-Integrated Query by implementing the same operator pattern as the Standard Query Operators such as Where and Select.
For example, you can use the DataContext to retrieve customer objects whose city is London as follows:

// DataContext takes a connection string
DataContext db = new DataContext(“c:\\northwind\\northwnd.mdf”);
// Get a typed table to run queries
Table<Customer> Customers = db.GetTable<Customer>();
// Query for customers from London
var q =
 from c in Customers
 where c.City == “London”
 select c;
foreach (var cust in q)
 Console.WriteLine(“id = {0}, City = {1}”, cust.CustomerID, cust.City);
Each database table is represented as a Table collection accessible via the GetTable() method using its entity class to identify it. It is recommended that you declare a strongly typed DataContext instead of relying on the basic DataContext class and the GetTable() method. A strongly-typed DataContext declares all Table collections as members of the context.
public partial class Northwind : DataContext
{
 public Table<Customer> Customers;
 public Table<Order> Orders;
 public Northwind(string connection): base(connection) {}
}
The query for customers from London can then be expressed more simply as:
Northwind db = new Northwind(“c:\\northwind\\northwnd.mdf”);
var q =
 from c in db.Customers
 where c.City == “London”
 select c;
foreach (var cust in q)
 Console.WriteLine(“id = {0}, City = {1}”,cust.CustomerID, cust.City);

Click here to preview Orcas Language

 http://www.microsoft.com/downloads/details.aspx?familyid=1e902c21-340c-4d13-9f04-70eb5e3dceea&displaylang=en

Develop Blackberry applications with ASP.NET 2.0

Flowfinity Blackbird is an add-on to Microsoft® Visual Studio® 2005 that empowers ASP.NET developers to deliver “Wireless-Ready” applications for BlackBerry®. Using unique features of Visual Studio 2005, Blackbird shortens the BlackBerry application development learning curve for Microsoft .NET developers.

Blackbird benefits both users and developers, and the four major benefits are as follows:
  – Wireless-readiness built-in
  – Quality user experience
  – Zero learning curve development approach
  – Low deployment costs
Wireless-Ready – Applications created with Blackbird are resilient to loss of network coverage and are optimized for over-the-air data transfer.

Quality User Experience – Applications created with Blackbird provide a familiar BlackBerry user experience with native look-and-feel and feature integration with BlackBerry email and address book.

Zero Learning Curve Approach – Standard ASP.NET 2.0 controls are used for application development. No special developer training is required – any Visual Basic or Visual C# developer can create their first BlackBerry application in minutes.

Lowers Deployment Cost – Blackbird is available for developers at no charge, it only requires developers to use Visual Studio 2005, and no licensing fees are required for users of custom applications that are deployed. Applications can be deployed quickly and easily “over-the-air”.

http://www.flowfinity.com/products/applications.html
 

SQL Server 2005 Reporting Services :- Forget Crystal Reports

If you are all developing either an enterprise application or any medium size applications in VS.NET 2005,You have an amazing news from SQL Server Reporting services ,I feel using Crystal reports still is stupid when you are having such an amazing great product from Microsoft.

 —– Forget Crystal Reports for .NET 2.0 Application and Use SQL 2005 Reporting services —–

To be successful in today’s competitive marketplace, organizations need to extend information beyond the walls of their organization and seamlessly interact with customers, partners, and suppliers in real time. Microsoft SQL Server Reporting Services enables organizations to transform valuable enterprise data into shared information for insightful, timely decisions at a lower total cost of ownership.

SQL Server Reporting Services is a comprehensive, server-based solution that enables the creation, management, and delivery of both traditional, paper-oriented reports and interactive, Web-based reports. An integrated part of the Microsoft business intelligence framework, Reporting Services combines the data management capabilities of SQL Server and Microsoft Windows Server with familiar and powerful Microsoft Office System applications to deliver real-time information to support daily operations and drive decisions.

rsarchitecture.gif

Full Reporting Life Cycle Support
SQL Server Reporting Services supports the full reporting life cycle, including:

Report authoring. Report developers can create reports to be published to the Report Server using Microsoft or other design tools that use Report Definition Language (RDL), an XML-based industry standard used to define reports.
 
Report management. Report definitions, folders, and resources are published and managed as a Web service. Managed reports can be executed either on demand or on a specified schedule, and are cached for consistency and performance. New in SQL Server 2005 Reporting Services, administrators can use the Management Studio to organize reports and data sources, schedule report execution and delivery, and track reporting history.
 
Report delivery. SQL Server Reporting Services supports both on-demand (pull) and event-based (push) delivery of reports. Users can view reports in a Web-based format or in e-mail.
 
Report security. SQL Server Reporting Services implements a flexible, role-based security model to protect reports and reporting resources. The product includes extensible interfaces for integrating other security models as well.
 

Key Reporting Scenarios


SQL Server Reporting Services combines a single, complete reporting platform with a scalable and extensible architecture to meet a wide variety of reporting needs, including:

Enterprise reporting. Enterprises can use Reporting Services for their operational reporting or business intelligence applications. Using Reporting Services, corporate IT staff can design a variety of reports and deploy them to individual throughout the enterprise.
 
Ad-hoc reporting. SQL Server 2005 Reporting Services includes Report Builder, a new ad-hoc reporting tool that enables business users to create their own reports and explore corporate data. Report Builder incorporates a user-friendly business query model that enables users to build reports without deep technical understanding of the underlying data sources.
 
Embedded reporting. Organizations can access pre-defined or ad-hoc reports from third-party applications that use Reporting Services and use these reports as-is, customize them, or create new ones for specific business needs.
 
• Web-based reporting for partners and customers. Organizations can deploy interactive Web-based reports to deliver information to customers or partners over extranets of the Internet. Reporting Services isolates report consumers from the complexity of the underlying data sources, while providing personalization and interactivity
 

ASP.NET 2.0 Page Life Cycle – Additional Events apart from 1.1 has earlier

I have wrote this article after a quite interesting discussion last week I had with my PM Karthick and other team mates. 

Understanding the lifecycle of a page/control in ASP.NET 1+ was paramount to writing good, clean code – not to mention the steep decline in frustrating programming sessions. If you do not learn the page lifecycle, including what the events do, as well as the sequence in which they occur, you will indeed get mad and sad. Crying may occur.

In ASP.NET 1+, there were about 8 methods/events that were important to understand (about 12+ if you are a control developer). In ASP.NET 2.0, this has been increased significantly to give the developer more opportunities to inject logic at different points of the page’s life.

As I attempted to locate a good source for the new page lifecycle, I found incomplete and beta lists, which were typically out of date. I’ve compiled a list of events/methods that occur during a typical page request with as much data as I could find. Most of the method descriptions are from MSDN2.

Method

Postback

Control

Constructor

Always

All

     
Construct

Always

Page

     
TestDeviceFilter

  Page

Used to determine which device filter is in place, and use this information to decide how to display the page.

   
     
AddParsedSubObject

Always

All

Notifies the server control that an element, either XML or HTML, was parsed, and adds the element to the server control’s ControlCollection object.

   
     
DeterminePostBackMode

Always

Page

Returns a NameValueCollection object that contains the data posted back to the page. The presence of the page hidden fields VIEWSTATE and EVENTTARGET is used to help determine whether a postback event has occurred. The IsPostBack property is set when the DeterminePostBackMode method is called.

   
     
OnPreInit

Always

Page

Called at the beginning of the page initialization stage. After the OnPreInit method is called, personalization information is loaded and the page theme, if any, is initialized. This is also the preferred stage to dynamically define a PageTheme or MasterPage for the Page.

   
     
OnInit

Always

All

Performs the initialization and setup steps required to create a Page instance. In this stage of the page’s life cycle, declared server controls on the page are initialized to their default state; however, the view state of each control is not yet populated. A control on the page cannot access other server controls on the page during the Page_Init phase, regardless of whether the other controls are child or parent controls. Other server controls are not guaranteed to be created and ready for access.

   
     
OnInitComplete

Always

Page

Called after page initialization is complete. In this stage of the page’s life cycle, all declared controls on the page are initialized, but the page’s view state is not yet populated. You can access server controls, but they will not yet contain information returned from the user.

   
     
LoadPageStateFromPersistenceMedium

Postback

Page

Uses the Load method of the System.Web.UI.PageStatePersister object referenced by the PageStatePersister property to load any saved view-state information for the Page object.

   
     
LoadControlState

Postback

All

Restores control-state information from a previous page request that was saved by the SaveControlState method.

   
     
LoadViewState

Postback

All

Restores view-state information from a previous page request that was saved by the SaveViewState method.

   
     
OnPreLoad

Always

Page

Called after all postback data returned from the user is loaded. At this stage in the page’s life cycle, view-state information and postback data for declared controls and controls created during the initialization stage are loaded into the page’s controls. Controls created in the OnPreLoad method will also be loaded with view-state and postback data.

   
     
OnLoad

Always

All

Notifies the server control that it should perform actions common to each HTTP request for the page it is associated with, such as setting up a database query. At this stage in the page lifecycle, server controls in the hierarchy are created and initialized, view state is restored, and form controls reflect client-side data.

   
     
RaisePostBackEvent

Postback

All

Notifies the server control that caused the postback that it should handle an incoming postback event.

   
     
OnLoadComplete

Always

Page

At this point in the page life cycle, all postback data and view-state data is loaded into controls on the page.

   
     
OnPreRender

Always

All

Notifies the server control to perform any necessary prerendering steps prior to saving view state and rendering content.

   
     
OnPreRenderComplete

Always

Page

At this stage of the page life cycle, all controls are created and the page is ready to render the output. This is the last event called before the page’s view state is saved.

   
     
SaveControlState

Always

All

Saves any server control state changes that have occurred since the time the page was posted back to the server. If there is no state associated with the control, this method returns a null reference. Custom controls using control state must call the RegisterRequiresControlState method on the Page before saving control state.

   
     
SaveViewState

Always

All

Saves any server control view-state changes that have occurred since the time the page was posted back to the server. If there is no view state associated with the control, this method returns a null reference.

   
     
SavePageStateToPersistenceMedium

Always

Page

Saves any view-state and control-state information for the page. The SavePageStateToPersistenceMedium method uses the Save method of the System.Web.UI.PageStatePersister object referenced by the PageStatePersister property to store view-state and control-state information for the page.

   
     
Render

Always

All

Initializes the HtmlTextWriter object and calls on the child controls of the Page to render. The Render method is responsible for creating the text and markup that is sent to the client browser. The default Render method calls RenderChildren to write the text and markup for the controls contained on the page.

   
     
OnUnload

Always

All

Used to do target-specific processing in the Unload stage of the control lifecycle. Typically, these are cleanup functions that precede disposition of the control.

   
     

If I’m missing any significant methods, please comment.