Monday, February 15, 2010

What's a XAP file?

A few days from now you will see a lot of sliverlight/Blend blogs coming up. If you get bored send me a note or an email but I will try to incorporate something that I am externally reading on technology be it something on hull design or something in pure sciences. The idea is to see everything holistically and borrow tool sets when and where required or needed in that branch of application to solve a problem. Anyway let me come back to the title of the post and answer that question. All blend developers probably know, if so move and let the illiterate in this area learn:

A XAP file is a Siliverlight application file commonly voiced as the ZAP file that follows the compression algorith of a common Zip file. So in short a file with .xap extension is a a compressed output for the Siliverlight Application. When you create a Silverlight application in Visual Studio or Expression Blend two files are created App.xaml and the Page.xaml. What's a XAML? - XAML is extended access markup language. When you build your application by pressing F5 the output XAP is generated. For the technically curious you can take the output XAP file and rename the extension to a ZIP file and if you decompile it wallah you will see your two files extracted.

A Silverlight application will often contain external files like graphics, media, video content etc which are all collated together along with your web html and script code files into one compressed file when the build is done and is placed inside the XAP file. Visually something like this:



The problem however is when you are making changes to one portion of your project the XAP get's overwritten every time you make the build. An overwrite to the build is common to developers but there may be instances when you want to keep the external content and website files of the project separate from the Silverlight project. In Visual Studio 2008 and 2010 you can do this and it will prompt you if you want to link the XAP file to a location on your web site project itself.  This helps since the file is located in your Web site project itself, you building your Siliverlight project will have no effect on the changes you make on your HTML or script files of your project.

Observe if you build a Silverlight Application using Visual Studio it will  show two projects in your solution explorer one will be the Silverlight application and the other will be the website project but what is missing is the XAP file. You may wonder where it is, it makes an appearance when the ClientBin folder is created for you which happens when the output file was generated.

Hope I don't sound confusing but here is a start for me and you to keep learning.

Sam Kurien

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.