<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3902750071711505426</id><updated>2011-11-27T15:33:56.535-08:00</updated><category term='Spot and forward trading'/><category term='New Features in ASP.NET 3.5'/><category term='Market size and liquidity'/><category term='Windows Communication Foundation'/><category term='JavaScript Debugging and Intellisense'/><category term='Domain name'/><category term='ASP.NET SQL Server Registration Tool'/><category term='Financial instruments'/><category term='Enable or Disable'/><category term='Profit In Forex?'/><category term='Market participants'/><category term='Stock Trading Software'/><category term='API Implementations'/><category term='Increase the buffer limit'/><category term='ReportViewer Control in Visual Studio 2008'/><category term='Margin Forex Account'/><category term='Application programming interface'/><category term='Read Data From an Excel File'/><category term='Image In Database'/><category term='Understanding Delegates'/><category term='Best Currency Trading Software'/><category term='Web Hosting'/><category term='MetaTrader 4 API'/><category term='Best Forex Trading Software'/><category term='Language bindings and interface generators'/><category term='Visual Studio 2008'/><category term='API management'/><category term='Foreign Exchange Market'/><category term='PIP'/><category term='Posts'/><category term='Reseller hosting'/><category term='What&apos;s new in C# 3.0'/><category term='Working Nic'/><category term='Java History'/><category term='Object Oriented Programming'/><category term='Step Of Classes'/><category term='Java Platform'/><category term='Migrating SQL Server Databases'/><category term='About Forex Trading'/><category term='Working in ListView Control'/><title type='text'>My Favourite</title><subtitle type='html'>About Forex And Programming</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://azaan-slk.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>48</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6841877553008155451</id><published>2011-02-01T06:23:00.002-08:00</published><updated>2011-02-01T06:24:16.951-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Profit In Forex?'/><title type='text'>How does one profit in Forex?</title><content type='html'>Very simple and obvious: buy cheap and sell for more! The profit is generated from the fluctuations (changes) in the currency exchange market.&lt;br /&gt;&lt;br /&gt;The nice thing about the FOREX market, is that regular daily fluctuations, say - around 1%, are multiplied by 100! (in general,Easy-Forex™ offers trading ratios from 1:50 to 1:200). If, for example, the exchange rate of "your" pair of currencies increased by 0.6% in the last 4 hours, your profit will be 60% on your investment! Such can happen in one business day, or in a few hours, even minutes.&lt;br /&gt;&lt;br /&gt;Moreover, you cannot lose more than your "margin"! You may profit unlimited amounts, but you never lose more than what you initially risked and invested.&lt;br /&gt;&lt;br /&gt;You can implement your choice (the pair of currencies, the volume amount) under any direction to which the market is moving, and yet make profit. It does not matter whether the exchange rate is going up or down: you can always decide to buy Euro and sell dollar, or vice versa - buy dollar and sell Euro. You don't have to physically possess certain currencies in order to perform "buy" or "sell" with them..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6841877553008155451?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6841877553008155451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6841877553008155451'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2011/02/how-does-one-profit-in-forex.html' title='How does one profit in Forex?'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-5365039372429802383</id><published>2011-02-01T06:23:00.001-08:00</published><updated>2011-02-01T06:23:36.352-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Margin Forex Account'/><title type='text'>Managing a Margin Forex Account</title><content type='html'>Although the example given is much simpler than what's happening in real market situation.&lt;br /&gt;&lt;br /&gt;But it cleary illustrates that trading in can easily magnify trade's ROI in a dramatic way. Although trading on margin sounds extremely easy to gain profits, but it is important that traders understand well the risks they are undertaking.&lt;br /&gt;&lt;br /&gt;Traders should be very aware of the margin call and should always avoid them at all cost. Note that in the event that money in your account falls below predetermined threshold (Margin Call), the positions in the account could be partially or totally liquidated, even it's in a highly volatile, fast moving market. Also, traders should always monitor own margin balance on a regular basis and utilize stop-loss orders on every open position to limit downside risk.&lt;br /&gt;&lt;br /&gt;In most cases, you might need a computer aided trading tools to determine the entry point as well as stop loss order.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-5365039372429802383?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5365039372429802383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5365039372429802383'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2011/02/managing-margin-forex-account.html' title='Managing a Margin Forex Account'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-5314277947949536924</id><published>2011-02-01T06:21:00.000-08:00</published><updated>2011-02-01T06:23:00.817-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='About Forex Trading'/><title type='text'>Forex Trading - Learn All About Forex Trading With These Useful Resources</title><content type='html'>Once you've mastered the basics you will probably want to learn more about some of the more advanced subjects such as how to use fundamental and / or technical analysis to trade the markets. Technical analysis in particular is very important because many top traders use various different charting techniques to help them find profitable trading opportunities.&lt;br /&gt;The only drawback to many of these websites that offer free information is that very few of them provide you with an actual strategy. Unless you buy a particular trading system or strategy, this is generally something you need to figure out for yourself.&lt;br /&gt;&lt;br /&gt;Another method of learning all about forex trading is to buy a few books on the subject. There are now numerous books available that cover every different aspect of forex trading so you will never be short of reading material.&lt;br /&gt;&lt;br /&gt;I haven't read that many books on the subject because I'm quite an experienced trader now but one I can definitely recommend is called Come Into My Trading Room (by Dr Alexander Elder). This book lists some excellent trading methods and strategies and also has an excellent section on discipline, which is one of the keys to success in this business.&lt;br /&gt;&lt;br /&gt;If you don't want to buy a book, then another option you have is to buy a professional forex training course. These will generally be a lot more comprehensive than many books or websites and in many cases will be a lot more useful if they have been compiled by a professional trader. Admittedly there are lots of substandard courses being sold online, but there are a few good ones out there.&lt;br /&gt;&lt;br /&gt;So to sum up, if you are interested in learning more about forex trading, there are lots of resources you can use. There are books, websites and trading courses that can all teach you how to become a profitable trader.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-5314277947949536924?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5314277947949536924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5314277947949536924'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2011/02/forex-trading-learn-all-about-forex.html' title='Forex Trading - Learn All About Forex Trading With These Useful Resources'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6911368356954788824</id><published>2009-11-12T07:00:00.002-08:00</published><updated>2009-11-12T07:01:39.150-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIP'/><title type='text'>PIP</title><content type='html'>&lt;span class="Apple-style-span" style="FONT-SIZE: 12px; FONT-FAMILY: 'Times New Roman', Times, serif"&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;Pips and 'pips values' represent one of the most misunderstood concepts in Forex trading. Beginners, especially, often have trouble grasping the idea behind pips but, a solid understanding of pips is crucial to successful Forex investing.&lt;/span&gt;&lt;/span&gt; &lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;Hopefully you're already familiar with the concept of 'basis points'. One basis point is equal to one-hundredth of one percent, and represents the smallest increment of change measured for any financial instrument. For example, with interest rates, if the rate rises from 9.50 percent to 9.51 percent, then it has risen by one basis point.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;&lt;img height="137" alt="" hspace="5" src="http://www.forexprofitingpro.com/sites/ldintino/_files/Image//Pips.JPG" width="200" align="left" vspace="5" /&gt;Pips are the Forex market's version of basis points. Let's say that the exchange rate for the EUR/USD pair move from 1.4465 to 1.4468. This movement represents a shift of 3 Pips, and may be good or bad depending on which currency you are holding.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;Here's the catch, though. Notice that the shift took place on the 4th decimal, which is the ten-thousandths place, or 1/10,000 of a percentage point? You have a shift of one ten-thousandth instead of one one-hundredth.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;The reason for this is that most currencies (with the exception of the Yen) are quoted out to four decimal places. This means you get to take advantage of even the most minute shifts as you trade on high volume.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;In order to calculate Pips for the common, four decimal currency pairs, you must divide the value of 1 Pip by the exchange rate:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;strong&gt;&lt;span style="font-size:100%;"&gt;&lt;img height="143" alt="" hspace="5" src="http://www.forexprofitingpro.com/sites/ldintino/_files/Image//PipsEuroDollarYenPound.jpg" width="200" align="right" vspace="5" /&gt;1 Pip = 1/10000th / exchange rate&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;Now, what happens when you are dealing with the Japanese Yen? In this currency pair, we find an exception to the rule because the Yen is quote out only to the hundreds place, or 1/100.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;For the USD/JPY pair (or vice versus), your formula would be:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;strong&gt;&lt;span style="font-size:100%;"&gt;1 Pip = 1/100th / exchange rate&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;Now that you know how to calculate Pips for any currency pair, you must look at what an actual Pip is worth to you in real dollar terms. This value is known as “pips value'. In order to do this, we must bring 'lot size' into the equation.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;If you purchase a standard lot of 100,000 pairs of EUR/USD at 1.4465, your formula will be as follows:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;strong&gt;&lt;span style="font-size:100%;"&gt;Pip Value = (0.0001 / 1.4465) x 100,000 = 6.91&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;&lt;img height="150" alt="" hspace="5" src="http://www.forexprofitingpro.com/sites/ldintino/_files/Image//EuroDollarYenPound.jpg" width="150" align="left" vspace="5" /&gt;So, a pip at this exchange rate is worth 6.91 Euro. Don't look for exact numbers here. What you need to pay attention to is the fact that '6.91' represents the average gain or loss per change in pips.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;In other words, a fluctuation of 2 pip from 1.4465 to 1.4467 isn't going to raise your profit or loss by a full Euro or more. Try doing the calculation for a 2 pip rise, and you'll see that your pips value goes up only to 6.192.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;I recommend getting comfortable with these basic calculations first, and then moving on to the calculations of actual profit and loss, which will require you to factor in bid price and ask price.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="FONT-SIZE: 100%; FONT-FAMILY: Times New Roman"&gt;&lt;span style="font-size:100%;"&gt;Also, remember that your online broker usually calculates pip and pips values for you, and you don't have to know how to do the math. It's just good business to be able to do it yourself...&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6911368356954788824?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6911368356954788824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6911368356954788824'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/11/pip.html' title='PIP'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-2629481722474496787</id><published>2009-11-12T07:00:00.001-08:00</published><updated>2009-11-12T07:00:55.482-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Spot and forward trading'/><title type='text'>Spot and forward trading</title><content type='html'>When you trade foreign exchange you are normally quoted a spot price. This means that if you take no further steps, your trade will be settled after two business days. This ensures that your trades are undertaken subject to supervision by regulatory authorities for your own protection and security. If you are a commercial customer, you may need to convert the currencies for international payments. If you are an investor, you will normally want to swap your trade forward to a later date. This can be undertaken on a daily basis or for a longer period at a time. Often investors will swap their trades forward anywhere from a week or two up to several months depending on the time frame of the investment.&lt;br /&gt;Although a forward trade is for a future date, the position can be closed out at any time - the closing part of the position is then swapped forward to the same future value date.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-2629481722474496787?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2629481722474496787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2629481722474496787'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/11/spot-and-forward-trading.html' title='Spot and forward trading'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-7680603981104784208</id><published>2009-11-12T06:59:00.000-08:00</published><updated>2009-11-12T07:00:12.649-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Domain name'/><title type='text'>Understanding the Relationship Between Domain Names and Hosting</title><content type='html'>Selecting a domain name can be a bit overwhelming since domain registrars often offer far more services than just domain names. Many offer "hosting" as well, so it helps to understand the relationship between domain names and hosting. Domain names and hosting are two completely separate products, but in the effort to sell the products together, domain registrars often just confuse people.When you purchase Web site hosting, you are basically renting a folder on a computer (called a Web server) that is connected to the Internet. You pay a company a monthly or yearly fee to keep your Web site files online and safe from hackers and other online "bad guys." Although technically, you might be able to host a site yourself, the $10 or $20 a month you spend on hosting is money well spent. Keeping a Web server alive and well is not a trivial exercise, so leave this task to the techies who like that kind of thing.It is important to understand the relationship between Web site hosting and domain names. A domain name basically points to a specific folder on a specific Web server. You can buy a domain name without buying hosting. Many people buy domain names long before they get around to creating a Web site. As soon as you think of a good name, spend the $8 and just buy the domain, so someone else doesn’t get it.Until you put up a site, the domain name points to a "parked page." This page is created by the domain registrar as a sort of holding spot until you buy hosting and get your site online. The parked page lets other people know that the domain isn’t available anymore. After you develop a site, get hosting, and put your Web site files in your folder on the Web server, you change your domain to point to the site.Note that you also can point more than one domain to the same Web site. If you decide to do this, you do not need to buy more hosting. Here are some questions to ask before you buy additional hosting.1. Do you want another Web site? (A completely different site with different files.) For example, two separate URLs have two different domains, are located in different folders, and are made up of completely different files.2. Do you want another domain name to point to the site you already have? For example, you might have two URLs point to one place. In that case, it is one folder with one set of files on the server, yet two domains point to it.If the answer to the question is 2, you do not need to purchase another hosting account. The files are already there in the folder. Generally, your hosting company should not charge you to point another domain to the same site. Hosting companies don’t care how many domains you have pointing at a site. However, they do care if you have more than one Web site and will charge you accordingly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-7680603981104784208?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7680603981104784208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7680603981104784208'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/11/understanding-relationship-between.html' title='Understanding the Relationship Between Domain Names and Hosting'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-8103104725421900868</id><published>2009-10-08T23:40:00.000-07:00</published><updated>2009-10-08T23:42:34.645-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Financial instruments'/><title type='text'>Financial instruments</title><content type='html'>Financial instruments SpotA spot transaction is a two-day delivery transaction (except in the case of trades between the US Dollar, Canadian Dollar, Turkish Lira and Russian Ruble, which settle the next business day), as opposed to the futures contracts, which are usually three months. This trade represents a "direct exchange" between two currencies, has the shortest time frame, involves cash rather than a contract; and interest is not included in the agreed-upon transaction. The data for this study come from the spot market. Spot transactions has the second largest turnover by volume after Swap transactions among all FX transactions in the Global FX market. NNM ForwardOne way to deal with the foreign exchange risk is to engage in a forward transaction. In this transaction, money does not actually change hands until some agreed upon future date. A buyer and seller agree on an exchange rate for any date in the future, and the transaction occurs on that date, regardless of what the market rates are then. The duration of the trade can be a one day, a few days, months or years. Usually the date is decided by both parties. FutureForeign currency futures are exchange traded forward transactions with standard contract sizes and maturity dates - for example, $1000 for next November at an agreed rate Futures are standardized and are usually traded on an exchange created for this purpose. The average contract length is roughly 3 months. Futures contracts are usually inclusive of any interest amounts. SwapThe most common type of forward transaction is the currency swap. In a swap, two parties exchange currencies for a certain length of time and agree to reverse the transaction at a later date. These are not standardized contracts and are not traded through an exchange. OptionA foreign exchange option (commonly shortened to just FX option) is a derivative where the owner has the right but not the obligation to exchange money denominated in one currency into another currency at a pre-agreed exchange rate on a specified date. The FX options market is the deepest, largest and most liquid market for options of any kind in the world..Exchange-Traded FundExchange-traded funds (or ETFs) are open ended investment companies that can be traded at any time throughout the course of the day. Typically, ETFs try to replicate a stock market index such as the S&amp;amp;P 500 (e.g., SPY), but recently they are now replicating investments in the currency markets with the ETF increasing in value when the US Dollar weakens versus a specific currency, such as the Euro. Certain of these funds track the price movements of world currencies versus the US Dollar, and increase in value directly counter to the US Dollar, allowing for speculation in the US Dollar for US and US Dollar denominated investors and speculators.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-8103104725421900868?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8103104725421900868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8103104725421900868'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/financial-instruments.html' title='Financial instruments'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-8136445622108476914</id><published>2009-10-08T23:36:00.000-07:00</published><updated>2009-10-08T23:40:09.497-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Market participants'/><title type='text'>Market participants</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Market participants&lt;/span&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Unlike a stock market, where all participants have access to the same prices, the foreign exchange market is divided into levels of access. At the top is the inter-bank market, which is made up of the largest investment banking firms. Within the inter-bank market, spreads, which are the difference between the bid and ask prices, are razor sharp and usually unavailable, and not known to players outside the inner circle. The difference between the bid and ask prices widens (from 0-1 pip to 1-2 pips for some currencies such as the EUR). This is due to volume. If a trader can guarantee large numbers of transactions for large amounts, they can demand a smaller difference between the bid and ask price, which is referred to as a better spread. The levels of access that make up the foreign exchange market are determined by the size of the "line" (the amount of money with which they are trading). The top-tier inter-bank market accounts for 53% of all transactions. After that there are usually smaller investment banks, followed by large multi-national corporations (which need to hedge risk and pay employees in different countries), large hedge funds, and even some of the retail FX-metal market makers. According to Galati and Melvin, "Pension funds, insurance companies, mutual funds, and other institutional investors have played an increasingly important role in financial markets in general, and in FX markets in particular, since the early 2000s." (2004) In addition, he notes, "Hedge funds have grown markedly over the 2001-2004 period in terms of both number and overall size" Central banks also participate in the foreign exchange market to align currencies to their economic needs.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;Banks&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The interbank market caters for both the majority of commercial turnover and large amounts of speculative trading every day. A large bank may trade billions of dollars daily. Some of this trading is undertaken on behalf of customers, but much is conducted by proprietary desks, trading for the bank's own account. Until recently, foreign exchange brokers did large amounts of business, facilitating interbank trading and matching anonymous counterparts for small fees. Today, however, much of this business has moved on to more efficient electronic systems. The broker squawk box lets traders listen in on ongoing interbank trading and is heard in most trading rooms, but turnover is noticeably smaller than just a few years ago.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;Commercial companies&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;An important part of this market comes from the financial activities of companies seeking foreign exchange to pay for goods or services. Commercial companies often trade fairly small amounts compared to those of banks or speculators, and their trades often have little short term impact on market rates. Nevertheless, trade flows are an important factor in the long-term direction of a currency's exchange rate. Some multinational companies can have an unpredictable impact when very large positions are covered due to exposures that are not widely known by other market participants.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Central banks&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;National central banks play an important role in the foreign exchange markets. They try to control the money supply, inflation, and/or interest rates and often have official or unofficial target rates for their currencies. They can use their often substantial foreign exchange reserves to stabilize the market. Milton Friedman argued that the best stabilization strategy would be for central banks to buy when the exchange rate is too low, and to sell when the rate is too high-that is, to trade for a profit based on their more precise information. Nevertheless, the effectiveness of central bank "stabilizing speculation" is doubtful because central banks do not go bankrupt if they make large losses, like other traders would, and there is no convincing evidence that they do make a profit trading.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The mere expectation or rumor of central bank intervention might be enough to stabilize a currency, but aggressive intervention might be used several times each year in countries with a dirty float currency regime. Central banks do not always achieve their objectives. The combined resources of the market can easily overwhelm any central bank.Several scenarios of this nature were seen in the 1992-93 ERM collapse, and in more recent times in Southeast Asia.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Hedge funds as speculators&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;About 70% to 90%[citation needed] of the foreign exchange transactions are speculative. In other words, the person or institution that bought or sold the currency has no plan to actually take delivery of the currency in the end; rather, they were solely speculating on the movement of that particular currency. Hedge funds have gained a reputation for aggressive currency speculation since 1996. They control billions of dollars of equity and may borrow billions more, and thus may overwhelm intervention by central banks to support almost any currency, if the economic fundamentals are in the hedge funds' favor.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Investment management firms&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Investment management firms (who typically manage large accounts on behalf of customers such as pension funds and endowments) use the foreign exchange market to facilitate transactions in foreign securities. For example, an investment manager bearing an international equity portfolio needs to purchase and sell several pairs of foreign currencies to pay for foreign securities purchases.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Some investment management firms also have more speculative specialist currency overlay operations, which manage clients' currency exposures with the aim of generating profits as well as limiting risk. Whilst the number of this type of specialist firms is quite small, many have a large value of assets under management (AUM), and hence can generate large trades.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Retail foreign exchange brokers&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;There are two types of retail brokers offering the opportunity for speculative trading: retail foreign exchange brokers and market makers. Retail traders (individuals) are a small fraction of this market and may only participate indirectly through brokers or banks. Retail brokers, while largely controlled and regulated by the CFTC and NFA might be subject to foreign exchange scams.[8][9] At present, the NFA and CFTC are imposing stricter requirements, particularly in relation to the amount of Net Capitalization required of its members. As a result many of the smaller, and perhaps questionable brokers are now gone. It is not widely understood that retail brokers and market makers typically trade against their clients and frequently take the other side of their trades. This can often create a potential conflict of interest and give rise to some of the unpleasant experiences some traders have had. A move toward NDD (No Dealing Desk) and STP (Straight Through Processing) has helped to resolve some of these concerns and restore trader confidence, but caution is still advised in ensuring that all is as it is presented.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Non-bank Foreign Exchange Companies&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Non-bank foreign exchange companies offer currency exchange and international payments to private individuals and companies. These are also known as foreign exchange brokers but are distinct in that they do not offer speculative trading but currency exchange with payments. I.e., there is usually a physical delivery of currency to a bank account. Send Money Home offer an in-depth comparison into the services offered by all the major non-bank foreign exchange companies.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;It is estimated that in the UK, 14% of currency transfers/payments[10] are made via Foreign Exchange Companies. These companies' selling point is usually that they will offer better exchange rates or cheaper payments than the customer's bank. These companies differ from Money Transfer/Remittance Companies in that they generally offer higher-value services.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Money Transfer/Remittance Companies&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Money transfer companies/remittance companies perform high-volume low-value transfers generally by economic migrants back to their home country. In 2007, the Aite Group estimated that there were $369 billion of remittances (an increase of 8% on the previous year). The four largest markets (India, China, Mexico and the Philippines) receive $95 billion. The largest and best known provider is Western Union with 345,000 agents globally.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Send Money Home is an international money transfer price comparison site that allows consumers access to a range of alternative products and rates available when remitting (transferring) money worldwide.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-8136445622108476914?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8136445622108476914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8136445622108476914'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/market-participants.html' title='Market participants'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-533360838895825835</id><published>2009-10-08T23:33:00.000-07:00</published><updated>2009-10-08T23:36:33.034-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Market size and liquidity'/><title type='text'>Market size and liquidity</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_PZzesciZvb4/Ss7ZcVIWlxI/AAAAAAAAADk/Nm--OMNDYb0/s1600-h/G_foreign_exchange_market_turnover.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5390484884740806418" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 221px" alt="" src="http://4.bp.blogspot.com/_PZzesciZvb4/Ss7ZcVIWlxI/AAAAAAAAADk/Nm--OMNDYb0/s320/G_foreign_exchange_market_turnover.gif" border="0" /&gt;&lt;/a&gt;  &lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The foreign exchange market is the largest and most liquid financial market in the world. Traders include large banks, central banks, currency speculators, corporations, governments, and other financial institutions. The average daily volume in the global foreign exchange and related markets is continuously growing. Daily turnover was reported to be over US$3.2 trillion in April 2007 by the Bank for International Settlements. Since then, the market has continued to grow. According to Euromoney's annual FX Poll, volumes grew a further 41% between 2007 and 2008.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Of the $3.98 trillion daily global turnover, trading in London accounted for around $1.36 trillion, or 34.1% of the total, making London by far the global center for foreign exchange. In second and third places respectively, trading in New York accounted for 16.6%, and Tokyo accounted for 6.0%. In addition to "traditional" turnover, $2.1 trillion was traded in derivatives.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Exchange-traded FX futures contracts were introduced in 1972 at the Chicago Mercantile Exchange and are actively traded relative to most other futures contracts.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Several other developed countries also permit the trading of FX derivative products (like currency futures and options on currency futures) on their exchanges. All these developed countries already have fully convertible capital accounts. Most emerging countries do not permit FX derivative products on their exchanges in view of prevalent controls on the capital accounts. However, a few select emerging countries (e.g., Korea, South Africa, India; ) have already successfully experimented with the currency futures exchanges, despite having some controls on the capital account.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-533360838895825835?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/533360838895825835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/533360838895825835'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/market-size-and-liquidity.html' title='Market size and liquidity'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_PZzesciZvb4/Ss7ZcVIWlxI/AAAAAAAAADk/Nm--OMNDYb0/s72-c/G_foreign_exchange_market_turnover.gif' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-4316450690379130740</id><published>2009-10-08T23:29:00.000-07:00</published><updated>2009-10-08T23:33:06.735-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Foreign Exchange Market'/><title type='text'>Foreign Exchange Market</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The foreign exchange market (currency, forex, or FX) trades currencies. It lets banks and other institutions easily buy and sell currencies. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The purpose of the foreign exchange market is to help international trade and investment. A foreign exchange market helps businesses convert one currency to another. For example, it permits a U.S. business to import European goods and pay Euros, even though the business's income is in U.S. dollars.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;In a typical foreign exchange transaction a party purchases a quantity of one currency by paying a quantity of another currency. The modern foreign exchange market started forming during the 1970s when countries gradually switched to floating exchange rates from the previous exchange rate regime, which remained fixed as per the Bretton Woods system.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The foreign exchange market is unique because of&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;its trading volumes, &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;the extreme liquidity of the market, &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;its geographical dispersion, &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;its long trading hours: 24 hours a day except on weekends (from 22:00 UTC on Sunday until 22:00 UTC Friday), &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;the variety of factors that affect exchange rates. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;the low margins of profit compared with other markets of fixed income (but profits can be high due to very large trading volumes) &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;the use of leverage &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;As such, it has been referred to as the market closest to the ideal perfect competition, notwithstanding market manipulation by central banks. According to the Bank for International Settlements, average daily turnover in global foreign exchange markets is estimated at $3.98 trillion. Trading in the world's main financial markets accounted for $3.21 trillion of this. This approximately $3.21 trillion in main foreign exchange market turnover was broken down as follows:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;$1.005 trillion in spot transactions &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;$362 billion in outright forwards &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;$1.714 trillion in foreign exchange swaps &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;$129 billion estimated gaps in reporting&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-4316450690379130740?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4316450690379130740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4316450690379130740'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/foreign-exchange-market.html' title='Foreign Exchange Market'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-3194702624243940972</id><published>2009-10-08T05:45:00.000-07:00</published><updated>2009-10-08T05:46:13.230-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MetaTrader 4 API'/><title type='text'>MetaTrader 4 API</title><content type='html'>Online trading platform MetaTrader 4 is an automated system providing a full-cycle broker service. Functionality implemented by the developers of the system allows its users to perform almost any actions within the business process of a brokerage company. Owing to that, the system is now a landmark solution and the industry standard at Forex market.&lt;br /&gt;The reasons for the high popularity of our software products are their convenient interfaces and rich features. Moreover, MetaQuotes Software Corp. always takes into account suggestions coming from both customers and traders and has developed an open application interface called MetaTrader Application Program Interface (API). MetaTrader API makes it possible to develop custom software applications used for automating business processes. MetaTrader API possesses a lot of functions that can be called virtually from any software development environment for Microsoft Windows. A qualified software developer gets rich functionality of the MetaTrader system at her/his disposal and can create custom software using a programming language s/he prefers.&lt;br /&gt;MetaTrader API contains the following components aimed at working with the corresponding system modules:&lt;br /&gt;MetaTrader Server API — the interface providing access to server features in the form of a plugin;&lt;br /&gt;MetaTrader Manager API — the interface of the manager terminal providing features both additional client information processing, and implementation own unique business-logic;&lt;br /&gt;MetaTrader DataFeed API — the interface of plugins implementing data delivery (quotations and news) to the system;MetaTrader Client API &amp;amp;#151;&lt;br /&gt;the interface of the client terminal. --&gt;&lt;br /&gt;The application interfaces of each component in the complex are distributed together with the corresponding component and can be found in the API directory. Open interfaces of all MetaTrader API components are provided. Besides, the source code of MetaTrader Server API and DataFeed API components are also supplied as open source in C++. Detailed examples of creating user applications allow you to use MetaTrader API to get acquainted with the principles of software interaction&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-3194702624243940972?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3194702624243940972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3194702624243940972'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/metatrader-4-api.html' title='MetaTrader 4 API'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-9207034833905118975</id><published>2009-10-08T05:44:00.002-07:00</published><updated>2009-10-08T05:45:17.776-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Language bindings and interface generators'/><title type='text'>Language bindings and interface generators</title><content type='html'>APIs that are intended to be used by more than one high-level programming language often provide, or are augmented with, facilities to automatically map the API to features (syntactic or semantic) that are more natural in those languages. This is known as language binding, and is itself an API. The aim is to encapsulate most of the required functionality of the API, leaving a "thin" layer appropriate to each language.&lt;br /&gt;Below are listed some interface generator tools which bind languages to APIs at compile time.&lt;br /&gt;SWIG generates interfaces from many languages for many languages (Typically Compiled-&gt;Scripted)&lt;br /&gt;F2PY: Fortran to Python interface generator.&lt;br /&gt;XPCOM (Cross Platform Component Object Model) is a cross platform component model from Mozilla.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-9207034833905118975?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/9207034833905118975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/9207034833905118975'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/language-bindings-and-interface.html' title='Language bindings and interface generators'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-8021906479320043872</id><published>2009-10-08T05:44:00.001-07:00</published><updated>2009-10-08T05:44:43.777-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='API management'/><title type='text'>API management</title><content type='html'>APIs are changing the way in which web-based companies interact on the Internet and have become a complete distribution channel for Web services and a potential source of revenues. However, to exploit the full potential of APIs, companies need to build a management infrastructure. This generally includes the following features:&lt;br /&gt;Key management and customer sign-up: Automated issue tracking, refresh and control of API access keys.&lt;br /&gt;Limit management and enforcement.&lt;br /&gt;Usage plan management: Creation, modification and management of standard usage plans, each with different features sets, limits and/or pricing rules.&lt;br /&gt;Per customer limit and usage policy adaptation.&lt;br /&gt;Developer community tools: Growing visibility and API usage through online management of documentation and developer forums/discussions.&lt;br /&gt;Monitoring and analytics: Tracking information on a per user basis for hit patterns,volume and method usage.&lt;br /&gt;User messaging, ticket tracking and support tools: Interactive tools to deal with developer support queries.&lt;br /&gt;Billing and payments.&lt;br /&gt;Traffic proxies and caching: Traffic filtering and management components to improve service performance.&lt;br /&gt;There are some companies who offer these management tools for those web services providers who don't have enough resources to build them or want to stay focused on their core service&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-8021906479320043872?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8021906479320043872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8021906479320043872'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/api-management.html' title='API management'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-183663659833837350</id><published>2009-10-08T05:43:00.000-07:00</published><updated>2009-10-08T05:44:11.755-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='API Implementations'/><title type='text'>API Implementations</title><content type='html'>POSIX standard defines an API that allows a wide range of common computing functions to be written such that they may operate on many different systems (Mac OS X and various Berkeley Software Distributions (BSDs) implement this interface); however, making use of this requires re-compiling for each platform. A compatible API, on the other hand, allows compiled object code to function without any changes, on any system implementing that API. This is beneficial to both software providers (where they may distribute existing software on new systems without producing/distributing upgrades) and users (where they may install older software on their new systems without purchasing upgrades), although this generally requires various software libraries implementing the necessary APIs too.&lt;br /&gt;Microsoft has shown commitment to a backward compatible API, particularly within their Windows API (Win32) library, such that older applications may run on newer versions of Windows using an executable-specific setting called "Compatibility Mode" Apple Inc. has shown less propensity to this concern, breaking compatibility or implementing an API in a slower "emulation mode"; this allows greater freedom in development, at the cost of making older software obsolete.&lt;br /&gt;Among Unix-like operating systems, there are many related but incompatible operating systems running on a common hardware platform (particularly Intel 80386-compatible systems). There have been several attempts to standardise the API such that software vendors may distribute one binary application for all these systems; however to date, none of these have met with much success. The Linux Standard Base is attempting to do this for the Linux platform, while many of the BSD Unices (FreeBSD, NetBSD, OpenBSD) implement various levels of API compatibility for both backward compatibility (allowing programs written for older versions to run on newer distributions of the system) and cross-platform compatibility (allowing execution of foreign code without recompiling).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-183663659833837350?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/183663659833837350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/183663659833837350'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/api-implementations.html' title='API Implementations'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-5592482605714452612</id><published>2009-10-08T05:41:00.000-07:00</published><updated>2009-10-08T05:43:18.212-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Application programming interface'/><title type='text'>API (Application programming interface)</title><content type='html'>An application programming interface (API) is an interface in computer science that defines the ways by which an application program may request services from libraries and/or operating systems.[1][2][3] An API determines the vocabulary and calling conventions the programmer should employ to use the services. It may include specifications for routines, data structures, object classes, and protocols used to communicate between the requesting software and the library.&lt;br /&gt;An API may be:&lt;br /&gt;Language-dependent; that is, available only in a given programming language, using the syntax and elements of that language to make the API convenient to use in this context.&lt;br /&gt;Language-independent; that is, written in a way that means it can be called from several programming languages (typically an assembly or C interface). This is a desired feature for a service-style API that is not bound to a given process or system and is available as a remote procedure call.&lt;br /&gt;An API itself is largely abstract in that it specifies an interface and controls the behavior of the objects specified in that interface. The software that provides the functionality described by an API is said to be an implementation of the API. An API is typically defined in terms of the programming language used to build the application. The related term application binary interface (ABI) is a lower level definition concerning details at the assembly language level. For example, the Linux Standard Base is an ABI, while POSIX is an API.&lt;br /&gt;The API initialism may sometimes be used as a reference, not only to the full interface, but also to one function, or even a set of multiple APIs provided by an organization. Thus, the scope of meaning is usually determined by the person or document that communicates the information&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-5592482605714452612?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5592482605714452612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5592482605714452612'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/api-application-programming-interface.html' title='API (Application programming interface)'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-5362780163431938051</id><published>2009-10-08T05:11:00.000-07:00</published><updated>2009-10-08T05:12:39.391-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Stock Trading Software'/><title type='text'>Stock Trading Software</title><content type='html'>What defines an expert? Is he the person born to be highly knowledgeable about a skill that he can impress anyone without batting an eyelash or is he someone who gained facts from experience? This is where the difference between an intelligent and a knowledgeable individual comes into the scene. It can be a little puzzling, but before you become an expert, you must first be knowledgeable on the subject. To do this, before you become skilled in day trading, learning the facts behind the topic is crucial. If you dont have the time to learn all of the needed information, you might as well seek the help of foreign currency trading software.&lt;br /&gt;Basically, day trading refers to the selling and buying of security within a particular day. It can take place within a marketplace although it is more common in the stock and foreign exchange market. The traders must be well informed, and well funded of course. These people who are into this kind of business would work in the marketplace for two imperative purposes: 1. by allowing the market to run smoothly by means of arbitrage, 2. and to offer market liquidity. As you can see, the job of traders is somehow complicated, hence there are currency trading software programs available on the internet.&lt;br /&gt;The Search for the Best Software&lt;br /&gt;Looking for the best currency converter software is no easy job. It is a must to look for one that provides a wide array of features because they must help you when deciding about an investment resolution. Currency software programs should help you fully understand the world market and option trading based on the current reports on the news. It must have personal virtual portfolios, access to a full streaming alternative, and many more. It ought to allow you to analyze your option for the stock, commodities, indices, and other securities. Furthermore, the best currency trading software should offer customer analyses, reports, and graphs to prevent losses and augment profits.&lt;br /&gt;Browse different currency exchange software in the market to rightly compare and contrast their many features. Expect that they will vary depending on the manufacturer, some may have features like instant trade execution and news feeds while others dont have. There are even highly made kinds which will offer a suggested price when you are going to buy a particular stock and may even give an optimal exit rate. If you would like to choose multi currency accounting software which will give you the said options, thats just fine; but you have to remember that many traders actually prefer to base their action on proven theories and means to prevent regrets. The best thing to do is to reflect on your own judgment and consider the decision of the software as well; allow it to meet in the middle.&lt;br /&gt;In case you follow strict criteria when it comes to the stocks that you buy, you must aim to trade them fast without necessarily consuming your precious time. Then, you can opt for stock screeners  these are employed to input all the necessary criteria and the stocks that passed given standards. To familiarize yourself with the foreign currency software, make use of each of its feature at least once for you to have a hands-on clue about how they work. Naturally, since you are shelling out your cash for this expensive software, it makes sense to be knowledgeable about what the software can really do.&lt;br /&gt;Furthermore, before making use of the currency conversion software for the real event, it is wise to program conditional orders so you wont be stuck into the computing stage when the real thing happens. Furthermore, in case the one you bought permits you to utilize stop-order placement, you will enjoy the fact that you can go out of the house without sulking in fear or finding yourself with a large number of overinflated securities.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-5362780163431938051?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5362780163431938051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5362780163431938051'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/stock-trading-software.html' title='Stock Trading Software'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-4624069114497943791</id><published>2009-10-08T04:56:00.000-07:00</published><updated>2009-10-08T04:58:32.718-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Currency Trading Software'/><title type='text'>Best Currency Trading Software</title><content type='html'>In the stock trading business, the simple rule on buying low and selling high does not happen over easy valuations and trend predictions. There is a complex system of economic, business, and sometimes human factors that come into play before you choose to properly make a trade.&lt;br /&gt;For some people who have made a lot of money through the stock market they may have been lucky or utterly smart and wise to place their investments to where they think it should be. The process of thinking and analyzing investments are more important and valuable in playing in the stock market. Anything could happen to your investments through the dynamic financial activities and world economy that affect stocks and derivative instruments. That is why the need for proper monitoring, market research and market timing should be of utmost importance in this kind of business.&lt;br /&gt;Stock trading entails a lot of analysis from a companys retained earnings for its outstanding shares to the more complex algorithms expressed in stock market charts with all the technical signals that bleep sometimes all at the same time. However, trading at this time and age have been made easy through the development of automated trading centers or exchanges around the globe also known as electronic trading. And similarly, studying price movements and market fluctuations are now made easier through ones computer monitor with the development of analysis software.&lt;br /&gt;Even before one dives into the actual practice of stock trading there are certain business terms that he or she should be familiar with in order to properly maneuver his or her sail in the wide ocean of securities, derivatives and bonds that flood the stock market. When it comes to investing, a prospective investor in the stock market should be keen on the financial standing of the company such as its long-term solvency through cash flows, debt standing and equity analysis among others. Such daunting tasks of actually studying a companys accounts and annual or monthly reports could take up most of your time that may otherwise be spent on starting your investment career. A business analysis software can do the task of analyzing endless accounts of a company that you are interested to invest in. This type of financial analysis software takes into consideration a business financial history, its share in the market and its projected stability in the coming years. A substantial amount of financial information of a given company can be accessed in the Securities and Exchange Commission through the Internet. Some businesses use  account analysis software to monitor the changes or differences over their reported balances such as those accounts in banks over the actual monetary value that they have.&lt;br /&gt;It is important to have a general knowledge of business corporations and the general movement that they do in the market because information about them will all be a waste if you do not know how to use them. Investment analysis software can do the task of analyzing an investment whether it is high risk or not. The decision to invest in a certain companys capital stock would be greatly assisted. In this type of software you have to input the material financial information for analysis. You can also even input your own philosophy or your investment strategies that can be monitored in your computer when you use it. This kind of software will also help you project the value of your investments in current and future equivalent terms and compare the available performance of alternative investments. This should also help you build a portfolio of investments, which you are planning to keep for a period of time.&lt;br /&gt;The stock market opens during the day and closes early in the afternoon where most of its transactions are valuable data that could be used in predicting the outcome for the next day. Placing a trade in the market the next day through a stockbroker would be easy with stock market analysis software. Stock markets have diverse and volatile stock prices that go up and down during the day, which you might not have all the time in the world to monitor during the day. This can be done for you in a few hours. The stock market technical analysis software also provides the basic technical analysis of the market through charts, its own computations and probable movements and exit points whether it is a bull or bear market. Surely, no investor would want to keep his or her investments in a slowly moving stock market, which a technical analysis software forecasts.&lt;br /&gt;For analysis of stocks, there are a lot of free stock analysis software that are available on the Internet. Software for stock analysis usually rely only on the technical analysis of a specific stock or market. Fundamental analysis also comes into play when deciding on an investment.&lt;br /&gt;The nature of technical analysis is of the primary study of stock prices that are believed to be the ultimate expression of any companys standing and performance in the market. Prices of stocks are monitoredtheir historical and future movements are charted to help present the price trend and volume patterns of stocks. There are a number of technical indicators that are employed in doing a technical analysis. These indicators are price and volume of a stock and the commodity and currency in the market that are transformed into mathematical expressions. The price direction and trend are determined by the use of these indicators. Options analysis software would rely heavily on the relative price and volume correlations provided by a technical analysis like its options put/call ratios and implied volatility.&lt;br /&gt;A stocks price and volume are all the facts needed for stock technical analysis software.  This type of software is necessary in forecasting price trends and volume behavior of an instrument in the market. Technical analysis is a security analysis technique that uses charts to express models and trading rules. In a technical analysis, models such as a stocks relative strength index, regressions, moving averages, cycles, price patterns and inter-market price correlations are studied. Compared to the fundamental analysis, which is also used in making investments, the technical analysis is more widely used in the stock market and foreign exchanges. But the use of both analyses is probably a safer approach.&lt;br /&gt;Stock analysis software need not employ technicians because of its built-in applications, which can be customized according to ones preferred technical indicators. In this way, ones own strategy could be evaluated and improved. Analysis of charts and graphs would also be made easy through stock chart analysis software. Patterns are charted and interpretation would depend on ones experience or expertise at analyzing the curves and straight lines on ones charts.  Even the trends of specific stocks by the key players in the market or industry can be tracked down and analyzed in an easy way by a stock trend analysis software.&lt;br /&gt;It is not difficult to acquire free stock technical analysis software because they are available on the Internet. Some software developers whose patents are still pending provide an online free trial of the program, which is actually helpful in comparing the different software products available in the worldwide web. The best stock analysis software is the one that works best for you. The best software should be the one that will allow you to meet your goals of buying high yielding stocks at a low price and gain a considerable amount of money when you sell them. A good software that one could most probably start with is one with a market timing application because you would be needing it to monitor price changes to be able take advantage of the best opportunity to place a trade.&lt;br /&gt;When actually practicing stock trading the need to evaluate or even keep a close watch at how your investments are going, whether they are going down or not in the market, is very important. The ultimate objective in going for investing in stocks trading is to gain as much financial returns from your investment but the task could be challenging if you have other obligations to perform.&lt;br /&gt;Trade analysis software is available nowadays to help you meet the requirements of analyzing and evaluating your trade transaction especially when you have a number of investments in the different business industries. It helps track your past transactions and could even provide the reason why you placed that trade at that time by also showing the market conditions that existed during that period. A stock trading software allows you to easily search targeted trade and receive information about them while managing your other accounts.&lt;br /&gt;A software application that could generate buy and sell signals for your specific stock is a great advantage. This is a type of prospecting tool that is useful in starting a career in trading. Trading for a particular stock in the market could be made easy when using a stock accounting software. A stock trading analysis software could give you access to different online stock market brokers from whom you could match and compare your trades to accurately calculate gains and losses on your transactions. This type of program could have a direct link to your Internal Revenues System or your accountant to inform them if you have indeed made a capital gain. When you actually accumulate losses instead of gains, this program will run and do the work of analyzing and comparing data while you do other things.&lt;br /&gt;When it comes to managing your portfolio of investments you would definitely need help in analyzing your current net worth and income streams. A fund manager will help monitor and analyze stocks and mutual funds with easy graphs and reports. When connected with a brokerage firm for your transaction, a fund analysis software will be helpful in keeping track of your investments. A reverse portfolio report by a portfolio management application is used to identify the persons in each fund, the accurate number of units involved in the transaction, as well as the stock valuations. The amount under the funds management can also be tracked.&lt;br /&gt;Most stock market software could provide you with regular reviews either monthly or annually of your current investment performance. Buying and selling opportunities are also identified when you record the projections you actually want to meet against that of your own performance.&lt;br /&gt;From among the different type of stock analysis software products that are available these days, compatibility with your own computers operating system should be checked because some features of certain trading software applications may not run.&lt;br /&gt;The Linux stock analysis software is an open source type of software that is available on the Internet for free. There is actually a list of some stock trading software that is dependent on a Linux operating system. There exists an online stock trading software from programs that run on Linux, which can be viewed through Yahoo! That also includes moving averages and technical analysis.  Features of a Linux trading software includes:&lt;br /&gt;    Analysis of the total portfolio and its returns against its buys and as against its sells, which are later compared to all the transactions made    Storage of transactions in account-specific files    Maintenance of accounts of different derivative instruments or currencies    Comparison reports of important averages on the available shares per price transactions    Comparison of your gains and losses in all the accounts of your portfolio    Gives you updates of currency quotes in the World Wide Web in real time.    You can delete, add and store stock evaluation through its on-line storage that is secured by Firewall and is password protected&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-4624069114497943791?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4624069114497943791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4624069114497943791'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/best-currency-trading-software.html' title='Best Currency Trading Software'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-8474410826817269522</id><published>2009-10-08T04:55:00.000-07:00</published><updated>2009-10-08T04:56:32.428-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Best Forex Trading Software'/><title type='text'>Best Forex Trading Software</title><content type='html'>Tired of spending too much of your precious time blankly staring in front of your computers monitor just to check if the stocks you have invested in are increasing or decreasing in value? It is indeed a little time-consuming for you to do that. By doing so, you have more chances of missing the more important joys of life such as spending some quality time with your family members and friends or just the simple things that you enjoy doing like playing golf, fishing or even completing that die-cast car model you promised your son youd finish before his 18th birthday.&lt;br /&gt;Living a solitary life in Stock Market Trading is not the way to go and experience life to the fullest. You see, it is better that you let your job work to simplify your life rather than simplify your life just to work. Well, it may not be a sound advice to just lie back and let the digits come adding in your bank account. You have to do some thing first for it to start happening.&lt;br /&gt;With the emergence of new technology, your typical dragging work hours can be modified into a summer breeze when you subscribe to digital breakthroughs known as the Forex software. Whether you are a seasoned stock market broker, stock market analyst, or just starting in this trading business, Forex or Foreign Exchange happens to be a rewarding career to begin with. You see, once you understand the language of the business and once you start feeling the vibe whether to buy or sell, you are absolutely headed to Forex heaven.&lt;br /&gt;Since you are definitely considering a career in trading, there are numerous program applications to guide and assist you and they will actually make your life somewhat worth living for. Do not worry that it would take you time just to find the right software on the Internet.&lt;br /&gt;Forex software download is done through the Internet. All you have to do is own a computer and get an Internet connection and you are ready. Whats great about these programs is that they are free applications that you can try out first since they are in either trial or demo versions. Suppose you fell in love with a particular program, you can avail postpaid subscriptions and wait for its billing statement monthly, bi-monthly, or even annually. Not only is it more secured, you will also have access to more features that are being offered by the software. You just have to make sure that you have accomplished all necessary requirements.&lt;br /&gt;The free version is practically the same as the postpaid ones. There are only some features that are limited in the trial version. All you need to do is weigh your options to determine which of the software applications available suits your needs.&lt;br /&gt;Once you have searched for the automated Forex software through the Internet, you might find yourself buried under several website links that are offering the same program application. Do not panic or start hyperventilating just yet. You could just browse over some of the given links. Sooner or later, you will find the best Forex software for you. Since you are just starting in this new route to Forex, free software trading enables you to just click a few buttons and it will definitely re-arrange and manage your life right in front of your eyes.&lt;br /&gt;One word of advice though  since you will opt for free Forex software, it would be better if you install an anti-virus in your computer. You will never know what virus is lurking behind free downloadable applications nowadays. With these in mind, you are now ready to begin your quest in finding the right financial software. Forex Trading would soon start working to your advantage and that means more money in your bank account!&lt;br /&gt;Just how automatic is the automatic Forex trading software? Well, for this program to work, you have to be consistently connected to the Internet for it to generate updates. Otherwise if you go offline, you will definitely miss whats hot and whats not in the stock market and you do not want this to happen. Trading in the stock market is all about proper timing and sound decision-making skills. Without these, you will just resemble a floating duck in the middle of lake during a thunderstorm.&lt;br /&gt;Do not get excited yet since you still have some important things worth your attention here. What kind of computer are you using? Is it the standard Windows application kind of computer or are you using a Mac? Although more and more programs nowadays are being created to work well with either Windows or Mac computers. Log on to your Safari or Firefox browser and make a search for Mac Forex software so you will be able to install it successfully and not just waste several hours trying to figure what went wrong even if you chose the best and correct Forex software system. Trading applications that are supposed to run and function fail because of incompatibility.&lt;br /&gt;What you will be reading here is a rundown of different automated Forex Trading software applications available on the Internet. Do not get overwhelmed especially if you are just starting in this career. Just take a quick tour, refresh some ideas you learned from the research you made and think hard if you really need this kind of assistance.&lt;br /&gt;Not everyone is comfortable with using computers. Yes, even in this hi-tech age, there are people who would prefer the conventional from automatic  we are not talking about car transmissions here. There is an interactive site where you could seek some help regarding Forex trading software. Online applications can be easily viewed via Yahoo! This comes in handy if you are having difficulties with the installation of programs in your computer.&lt;br /&gt;Forex software reviews are also recommended reads for you. This way, you can really immerse yourself with all the features that are being offered. It is best if you make a chart to take note what software package offers the best line-up of features and applications that you need. In general, nearly all software programs assist you in the following situations:&lt;br /&gt;    Maximize your gains and at the same time minimize your losses.    If you already have a working portfolio, the program re-balances it for you to enable a more focused and easier to manage account.    Signals or alerts you of sudden and abrupt movements of stocks in the market.    Gives you historical data analysis by accessing several brokerage firms and financial institutions.    Re-aligns your investment strategies with your goals&lt;br /&gt;To start with your software fieldtrip, here are some of the types of stock market related software that can be downloaded from the Internet. Almost all of these programs are free since they are on a demo or trial version:&lt;br /&gt;1)    FOREX ANALYSISThe Forex Analysis Software allows you to experience a simulation of your stock trading transactions. It is more of mock-trade that will show you what your performance will be should you consider making a trade. This software replays historical data from a database that has information of stock trades from various sectors. Since it is a simulation, you will be able to see how companies fared.&lt;br /&gt;Advantage you will get from this software:    Technical Analysis    Customized spreadsheets for easier charting reports    Data Extraction    Market signals&lt;br /&gt;2)    FOREX CHARTINGThe Forex Charting software allows you to manage all your accounts at the same time. There will be no more problems leading to a mismatched trade to a miscalculated profit margin. This program is designed to actually allow you to live your life and just refer to it to get updates if the time is right for you to make a trade.&lt;br /&gt;Advantage you will get from this software:    Historical analysis across accounts in the portfolio using different charting tools    Minimized time consumed for sorting and categorizing accounts    Automatic alerts for different tickers    Real-time data for chart extrapolations and analysis, which can be exported to Excel.&lt;br /&gt;3)    FOREX STOCK OPTIONSThe Forex Options software speeds up all your transactions since it helps determine if the stocks you are eyeing at is under-price or over-priced. You see, stock options give you some rights to buy or sell stock made possible through a contract. When you go about a trade, you do not actually sell or buy the shares but rather the trade rights.&lt;br /&gt;Advantage you will get from this software:    Data updates at real-time    Standard reports on gainers    Portfolio track    A calculator to determine percentage returns&lt;br /&gt;4)    FOREX PREDICTIONThe Forex Prediction software can assist you with the generation of charts that actually predicts the direction where the market is headed. This prediction is designed to make reports a couple of days in advance before it takes place. This is useful since you will be given a heads-up if you are interested to make a transaction.&lt;br /&gt;Aside from this, it also analyzes data from the market together with other indicators. It banks on the idea of using predictions in the stock market to provide pre-knowledge if a particular share of stock will rise or fall.&lt;br /&gt;Advantage you will get from this software:    Technical Analysis    Inter-market analysis as source of the predictions    Entry and Exit time    Trade segregation by Long-Term transactions or Short-Term    Report consolidation regarding Target Gains.&lt;br /&gt;5)    FOREX SIGNALSThe Forex signal software is designed not to rely on alerts or signals using intuition. Predictions can be of great help but since it is a couple of days advanced before an actual trade commences, the gap from the time you have placed your bets until the time you are waiting to shout Eureka is quite big. Remember that the stock market is very volatile  so much like a tornado. You just do not know when it will turn and why. You can only be supported by calculations and historical data, but the actual movement is a little difficult to predict.&lt;br /&gt;The Forex Trading Signal software actually gives you an upper hand in managing your accounts. You will receive reports and updates to be able to get ahead in the race. You will receive signs that a particular share of stock from a particular company is ripe for the kill.&lt;br /&gt;Advantage you will get from this software:    Real-Time updates on when to open and close your trades.    Automated Trading transactions =  all you have to do is count your gains.    Compatibility with almost all Operating Systems (OS).&lt;br /&gt;Not all programs can function across all kinds of computers so you have to read first if the Forex software system requirements are compatible with what you have. If you are successful in finding the best Forex software, trading in the stock market will no longer be time-consuming and confusing especially for newcomers like you or even for the season traders who are already starting to complain of the tedious work they have to go through everyday.&lt;br /&gt;Employing a software application to succeed in the stock market is indeed a wise thing to do. You only have to make sure that it already has some good remarks from other users. This is a way for you to gauge if it is worth it. Be attentive of the small and hard to read clauses that might spell out Customer Service Support at your own Risk. Make sure help is a phone call or email away should you have technical problems concerning the software.&lt;br /&gt;Using programs such as these requires effort on your part in order to succeed in your career. If you are more comfortable with manual trading, go ahead. The software run-down was made for you to consider getting extra help as you climb up the stock markets ladder of success.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-8474410826817269522?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8474410826817269522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8474410826817269522'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/best-forex-trading-software.html' title='Best Forex Trading Software'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-682231236782218948</id><published>2009-10-02T06:38:00.000-07:00</published><updated>2009-10-02T06:44:54.319-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reseller hosting'/><title type='text'>Reseller hosting</title><content type='html'>Reseller hosting is a form of web hosting wherein the account owner has the ability to use his/her allotted hard drive space and bandwidth to host websites on behalf of third parties. The reseller purchases the host's services wholesale and then sells them to customers for a profit. A certain portion of hard drive and bandwidth is allocated to the reseller account. The reseller may rent a dedicated server from a hosting company, or resell shared hosting services. In the latter case, the reseller is simply given the permission to sell a certain amount of disk space and bandwidth to his own customers without renting a server from a web hosting company he signed for a reseller account with.&lt;br /&gt;The typical web hosting reseller might be a web design firm, web developer or systems integrator who offers web hosting as an add-on service. Reseller hosting is also an inexpensive way for web hosting entrepreneurs to start a company. Most reseller hosting plans allow resellers to create their own service plans and choose their own pricing structure. In many cases, resellers are able to establish their own branding via customized control panels and name servers.&lt;br /&gt;Reseller hosting does not require extensive knowledge of the technical aspects of web hosting. Usually, the data center operator is responsible for maintaining network infrastructure and hardware, and the dedicated server owner configures, secures, and updates the server. A reseller is responsible for interfacing with his/her own customer base, but any hardware, software and connectivity problems are typically forwarded to the server provider from whom the reseller plan was purchased. It should be noted that being a profitable reseller firm usually involves extensive advertising to get customers. While the monthly fees with major hosts are only a few dollars a month, it's a low margin business, and resellers must devote large advertising budgets to compete with established competitors. However, web hosting is one of the biggest online businesses, because every website needs hosting.&lt;br /&gt;Resellers can set up and manage customer accounts via a web interface, usually point and click "Control Panels."&lt;br /&gt;&lt;br /&gt;Well-known Control Panels List:&lt;br /&gt;Cortex Provisioning System (Windows)&lt;br /&gt;Reseller Hosting (Unix)&lt;br /&gt;Plesk (Windows/Unix)&lt;br /&gt;DirectAdmin&lt;br /&gt;Webmin (Unix)&lt;br /&gt;Ensim Pro (Windows/Unix)&lt;br /&gt;Helm (Windows)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-682231236782218948?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/682231236782218948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/682231236782218948'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/reseller-hosting.html' title='Reseller hosting'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-1823377853764272528</id><published>2009-10-02T06:35:00.000-07:00</published><updated>2009-10-02T06:37:26.018-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Hosting'/><title type='text'>Types of hosting</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5387996008292858290" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 180px; CURSOR: hand; HEIGHT: 289px" alt="" src="http://3.bp.blogspot.com/_PZzesciZvb4/SsYB0p2EubI/AAAAAAAAADc/bvsfCHWtgyc/s320/180px-KN-Servers2.jpg" border="0" /&gt; Types of hosting&lt;br /&gt;&lt;br /&gt;A typical server "rack," commonly seen in colocation centres.&lt;br /&gt;Internet hosting services can run Web servers; see Internet hosting services.&lt;br /&gt;Hosting services limited to the Web:&lt;br /&gt;Many large companies who are not internet service providers also need a computer permanently connected to the web so they can send email, files, etc. to other sites. They may also use the computer as a website host so they can provide details of their goods and services to anyone interested. Additionally these people may decide to place online orders.&lt;br /&gt;Free web hosting service: Free web hosting is offered by different companies with limited services, sometimes advertisement-supported web hosting, and is often limited when compared to paid hosting.&lt;br /&gt;Shared web hosting service: one's Web site is placed on the same server as many other sites, ranging from a few to hundreds or thousands. Typically, all domains may share a common pool of server resources, such as RAM and the CPU. The features available with this type of service can be quite extensive. A shared website may be hosted with a reseller.&lt;br /&gt;Reseller web hosting: allows clients to become web hosts themselves. Resellers could function, for individual domains, under any combination of these listed types of hosting, depending on who they are affiliated with as a provider. Resellers' accounts may vary tremendously in size: they may have their own virtual dedicated server to a collocated server. Many resellers provide a nearly identical service to their provider's shared hosting plan and provide the technical support themselves.&lt;br /&gt;Virtual Dedicated Server: also known as a Virtual Private Server (VPS for short) divides server resources into virtual servers, where resources can be allocated in a way that does not directly reflect the underlying hardware. VPS will often be allocated resources based on a one server to many VPSs relationship, however virtualisation may be done for a number of reasons, including the ability to move a VPS container between servers. The users may have root access to their own virtual space. This is also known as a virtual private server or VPS. Customers are sometimes responsible for patching and maintaining the server.&lt;br /&gt;Dedicated hosting service: the user gets his or her own Web server and gains full control over it (root access for Linux/administrator access for Windows); however, the user typically does not own the server. Another type of Dedicated hosting is Self-Managed or Unmanaged. This is usually the least expensive for Dedicated plans. The user has full administrative access to the box, which means the client is responsible for the security and maintenance of his own dedicated box.&lt;br /&gt;Managed hosting service: the user gets his or her own Web server but is not allowed full control over it (root access for Linux/administrator access for Windows); however, they are allowed to manage their data via FTP or other remote management tools. The user is disallowed full control so that the provider can guarantee quality of service by not allowing the user to modify the server or potentially create configuration problems. The user typically does not own the server. The server is leased to the client.&lt;br /&gt;Colocation web hosting service: similar to the dedicated web hosting service, but the user owns the colo server; the hosting company provides physical space that the server takes up and takes care of the server. This is the most powerful and expensive type of the web hosting service. In most cases, the colocation provider may provide little to no support directly for their client's machine, providing only the electrical, Internet access, and storage facilities for the server. In most cases for colo, the client would have his own administrator visit the data center on site to do any hardware upgrades or changes.&lt;br /&gt;Cloud hosting: is a new type of hosting platform that allows customers powerful, scalable and reliable hosting based on clustered load-balanced servers and utility billing. Removing single-point of failures and allowing customers to pay for only what they use versus what they could use.&lt;br /&gt;Clustered hosting: having multiple servers hosting the same content for better resource utilization. Clustered Servers are a perfect solution for high-availability dedicated hosting, or creating a scalable web hosting solution. A cluster may separate web serving from database hosting capability.&lt;br /&gt;Grid hosting: this form of distributed hosting is when a server cluster acts like a grid and is composed of multiple nodes.&lt;br /&gt;Home server: usually a single machine placed in a private residence can be used to host one or more web sites from a usually consumer-grade broadband connection. These can be purpose-built machines or more commonly old PCs. Some ISPs actively attempt to block home servers by disallowing incoming requests to TCP port 80 of the user's connection and by refusing to provide static IP addresses. A common way to attain a reliable DNS hostname is by creating an account with a dynamic DNS service. A dynamic DNS service will automatically change the IP address that a URL points to when the IP address changes.&lt;br /&gt;Some specific types of hosting provided by web host service providers:&lt;br /&gt;File hosting service: hosts files, not web pages&lt;br /&gt;Image hosting service&lt;br /&gt;Video hosting service&lt;br /&gt;Blog hosting service&lt;br /&gt;One-click hosting&lt;br /&gt;Pastebin Hosts text snippets&lt;br /&gt;Shopping cart software&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-1823377853764272528?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1823377853764272528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1823377853764272528'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/types-of-hosting.html' title='Types of hosting'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_PZzesciZvb4/SsYB0p2EubI/AAAAAAAAADc/bvsfCHWtgyc/s72-c/180px-KN-Servers2.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-7188312600336736620</id><published>2009-10-02T06:30:00.000-07:00</published><updated>2009-10-02T06:35:16.674-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Hosting'/><title type='text'>Web Hosting</title><content type='html'>&lt;p&gt;A web hosting service is a type of Internet hosting service that allows individuals and organizations to make their own website accessible via the World Wide Web. Web hosts are companies that provide space on a server they own or lease for use by their clients as well as providing Internet connectivity, typically in a data center. Web hosts can also provide data center space and connectivity to the Internet for servers they do not own to be located in their data center, called colocation.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Service scope&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The scope of hosting services varies widely. The most basic is web page and small-scale file hosting, where files can be uploaded via File Transfer Protocol (FTP) or a Web interface. The files are usually delivered to the Web "as is" or with little processing. Many Internet service providers (ISPs) offer this service free to their subscribers. People can also obtain Web page hosting from other, alternative service providers. Personal web site hosting is typically free, advertisement-sponsored, or cheap. Business web site hosting often has a higher expense.&lt;br /&gt;Single page hosting is generally sufficient only for personal web pages. A complex site calls for a more comprehensive package that provides database support and application development platforms (e.g. PHP, Java, Ruby on Rails, ColdFusion, and ASP.NET). These facilities allow the customers to write or install scripts for applications like forums and content management. For e-commerce, SSL is also highly recommended.&lt;br /&gt;The host may also provide an interface or control panel for managing the Web server and installing scripts as well as other services like e-mail. Some hosts specialize in certain software or services (e.g. e-commerce). They are commonly used by larger companies to outsource network infrastructure to a hosting company.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-7188312600336736620?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7188312600336736620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7188312600336736620'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/web-hosting.html' title='Web Hosting'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-2925613411589465551</id><published>2009-10-02T06:28:00.000-07:00</published><updated>2009-10-02T06:30:01.164-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Domain name'/><title type='text'>Domain name</title><content type='html'>A domain name is an identification label that defines a realm of administrative autonomy, authority, or control in the Internet, based on the Domain Name System (DNS).&lt;br /&gt;Domain names are used in various networking contexts and application-specific naming and addressing purposes. They are organized in subordinate levels (subdomains) of the DNS root domain, which is nameless. The first-level set of domain names are the top-level domains (TLDs), including the generic top-level domains (gTLDs), such as the prominent domains com, net and org, and the country code top-level domains (ccTLDs). Below these top-level domains in the DNS hierarchy are the second-level and third-level domain names that are typically open for reservation by end-users that wish to connect local area networks to the Internet, run web sites, or create other publicly accessible Internet resources. The registration of these domain names is usually administered by domain name registrars who sell their services to the public.&lt;br /&gt;Individual Internet host computers use domain names as host identifiers, or hostnames. Hostnames are the leaf labels in the domain name system usually without further subordinate domain name space. Hostnames appear as a component in Uniform Resource Locators (URLs) for Internet resources such as web sites.Domain names are also used as simple identification labels to indicate ownership or control of a resource. Such examples are the realm identifiers used in the Session Initiation Protocol (SIP), the DomainKeys used to verify DNS domains in e-mail systems, and in many other Uniform Resource Identifiers (URIs).&lt;br /&gt;An important purpose of domain names is to provide easily recognizable and memorizable names to numerically addressed Internet resources. This abstraction allows any resource (e.g., website) to be moved to a different physical location in the address topology of the network, globally or locally in an intranet. Such a move usually requires changing the IP address of a resource and the corresponding translation of this IP address to and from its domain name.&lt;br /&gt;Domain names are often referred to simply as domains and domain name registrants are frequently referred to as domain owners, although domain name registration with a registrar does not confer any legal ownership of the domain name, only an exclusive right of use.&lt;br /&gt;This article primarily discusses the group of domain names that are offered by domain name registrars for registration by the public. The Domain Name System article discusses the technical facilities and infrastructure of the domain name space and the hostname article deals with specific information about the use of domain names as identifiers of network hosts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-2925613411589465551?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2925613411589465551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2925613411589465551'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/domain-name.html' title='Domain name'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6739296117022719973</id><published>2009-10-01T05:20:00.000-07:00</published><updated>2009-10-01T05:21:57.056-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='What&apos;s new in C# 3.0'/><title type='text'>What's new in C# 3.0</title><content type='html'>IMPLICIT TYPED LOCAL VARIABLES&lt;br /&gt;&lt;br /&gt;LOCAL VARIABLES CAN BE DECLARED AS TYPE VAR, WHOSE ACTUAL TYPE OF THE VARIABLE IS DETERMINED BY THE COMPILER BASED ON THE DATA SCHEMA (SEE LISTING 1). IT'S MAINLY USED TO STORE ANONYMOUS TYPES IN LINQ.&lt;br /&gt;&lt;br /&gt;// THIS IS AN INTEGER&lt;br /&gt;&lt;br /&gt;VAR NID = 1234567;&lt;br /&gt;&lt;br /&gt;//THIS IS A STRING&lt;br /&gt;&lt;br /&gt;VAR STRFULLNAME = "JOHN CHARLES OLAMENDY TURRUELLAS";&lt;br /&gt;&lt;br /&gt;LISTING 1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;AUTOMATIC PROPERTIES&lt;br /&gt;&lt;br /&gt;SOMETIMES WHEN YOU ARE IMPLEMENTING THE LOGIC ASSOCIATED WITH CLASSES, YOU NEED TO WRITE THE GETTERS/SETTERS OF OUR PROPERTIES. PROPERTIES ARE BEST PRACTICES TO SUPPORT THE ENCAPSULATION CONCEPT IN THE OBJECT-ORIENTED PROGRAMMING PARADIGM. C# COMPILER PROVIDES AN ELEGANT WAY TO MAKE YOUR CODE MORE ROBUST USING PROPERTIES CALLED AUTOMATIC PROPERTIES. IT ALLOWS YOU TO AVOID HAVING TO MANUALLY DECLARE A PRIVATE FIELD AND WRITE THE UNDERLYING GETTER/SETTER LOGIC. THE COMPILER DOES THE WORK FOR YOU (SEE LISTING 2).&lt;br /&gt;&lt;br /&gt;PUBLIC CLASS CUSTOMER&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;PUBLIC STRING FULLNAME&lt;br /&gt;&lt;br /&gt;{ GET; SET; }&lt;br /&gt;&lt;br /&gt;PUBLIC STRING CONTACTADDRESS&lt;br /&gt;&lt;br /&gt;{ GET; SET; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;LISTING 2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;OBJECT INITIALIZERS&lt;br /&gt;WHEN YOU CREATE AN INSTANCE OF THE BUSINESS ENTITY CUSTOMER, YOU WRITE THE CODE TO CALL THE CLASS CONSTRUCTOR AND SET THE PROPERTIES OF THE INSTANCE (LISTING 3).&lt;br /&gt;&lt;br /&gt;CUSTOMER OBJCUSTOMER = NEW CUSTOMER();&lt;br /&gt;&lt;br /&gt;OBJCUSTOMER.FULLNAME = "JOHN";&lt;br /&gt;&lt;br /&gt;OBJCUSTOMER.CONTACTADDRESS = "MY ADDRESS";&lt;br /&gt;&lt;br /&gt;LISTING 3&lt;br /&gt;&lt;br /&gt;OBJECT INITIALIZERS ALLOW YOU TO RE-WRITE THE PREVIOUS CODE IN A CONCISE WAY (SEE LISTING 4).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CUSTOMER OBJCUSTOMER = NEW CUSTOMER { FULLNAME="JOHN", CONTACTADDRESS="MY ADDRESS"};&lt;br /&gt;&lt;br /&gt;LISTING 4&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;COLLECTION INITIALIZERS&lt;br /&gt;&lt;br /&gt;OBJECT INITIALIZERS IS A GREAT FEATURE TO WRITE CODE EFFICIENTLY. C# ALSO ADDS A FEATURE TO INITIALIZE COLLECTIONS OF OBJECTS CALLED COLLECTION INITIALIZERS FOLLOWING THE SAME CONCEPTS OF OBJECT INITIALIZERS (SEE LISTING 5).&lt;br /&gt;&lt;br /&gt;LIST&lt;customer&gt; OBJCUSTOMERLIST = NEW LIST&lt;customer&gt;&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;NEW CUSTOMER{FULLNAME="JOHN OLAMENDY", CONTACTADDRESS="ADDRESS1"},&lt;br /&gt;&lt;br /&gt;NEW CUSTOMER{FULLNAME="MARY PEREZ", CONTACTADDRESS="ADDRESS2"},&lt;br /&gt;&lt;br /&gt;NEW CUSTOMER{FULLNAME="ANTHONY FRANCES", CONTACTADDRESS="ADDRESS3"}&lt;br /&gt;&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;LISTING 5&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;EXTENSION METHODS ALLOW DEVELOPERS TO ADD NEW METHODS TO EXISTING CLR TYPES WITHOUT SUBCLASSING AND RECOMPILING THE ORIGINAL CLASS. YOU CAN REALIZE BY DEFINING A STATIC CLASS WITH A STATIC METHOD CONTAINING THE EXTENSION METHOD. YOU NEED TO USE THE KEYWORD THIS BEFORE THE CLR TYPE YOU WANT TO EXTEND. TO USE THE NEW DEFINED EXTENSION, YOU NEED TO USE THE IMPORT KEYWORD TO IMPORT THE NAMESPACE CONTAINING THE EXTENSION CLASS.&lt;br /&gt;&lt;br /&gt;LET'S DEFINE AN EXTENSION METHOD TO CHECK WHETHER A GIVEN STRING OBJECT IS EMPTY OR NOT (SEE LISTING 6).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PUBLIC STATIC CLASS CHECKSTRING&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;PUBLIC STATIC BOOL MYEXTENSIONMETHOD_ISEMPTY(THIS STRING VALUE)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;BOOL BRESULT = TRUE;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;IF (VALUE != NULL &amp;amp;&amp;amp; !VALUE.EQUALS(""))&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;BRESULT = FALSE;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RETURN BRESULT;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;LISTING 6&lt;br /&gt;&lt;br /&gt;NOW LET'S USE THE EXTENSION METHOD IN A SCENARIO (SEE LISTING 7).&lt;br /&gt;&lt;br /&gt;STRING STRCUSTOMERNAME = "JOHN C. OLAMENDY";&lt;br /&gt;&lt;br /&gt;IF (STRCUSTOMERNAME.MYEXTENSIONMETHOD_ISEMPTY())&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;SYSTEM.CONSOLE.WRITELINE("THE STRING IS EMPTY");&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;ELSE&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;SYSTEM.CONSOLE.WRITELINE("THE STRING IS IS NOT EMPTY");&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;LISTING 7&lt;br /&gt;&lt;br /&gt;ONE COMMON BUILT-IN EXTENSION SHIPPED IN MICROSOFT.NET IS INSIDE THE NAMESPACE SYSTEM.LINQ AND ALLOWS EASY QUERYING OF THE DATA BY USING LINQ QUERY OPERATORS. LET'S SUPPOSE WE WANT TO QUERY THE LIST OF CUSTOMER ALREADY DEFINED (OBJCUSTOMERLIST) IN ORDER TO GET CUSTOMERS WHOSE NAMES BEGINS WITH THE LETTER J. YOU NEED TO USE THE WHERE EXTENSION METHOD PROVIDED BY SYSTEM.LINQ TO RETRIEVE THE RESULT SET (SEE LISTING 8).&lt;br /&gt;&lt;br /&gt;IENUMERABLE&lt;customer&gt; RSCUSTOMER = OBJCUSTOMERLIST.WHERE(P =&gt; P.FULLNAME.STARTSWITH("J"));&lt;br /&gt;&lt;br /&gt;LISTING 8&lt;br /&gt;&lt;br /&gt;THE STATEMENT FOR THE QUERY IS WRITTEN USING THE PRINCIPLES OF "LAMBDA EXPRESSION", WHICH IS A NATURAL EVOLUTION OF ANONYMOUS METHODS.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ANONYMOUS TYPE IS A WAY TO ENCAPSULATE PROPERTIES OF AN OBJECT WITHOUT DEFINING THE UNDERLYING CLASS AT RUNTIME. THE TYPE NAME AND PROPERTIES ARE INFERRED BY THE COMPILER (LISTING 9).&lt;br /&gt;&lt;br /&gt;VAR OBJPRODUCT = NEW { PRODUCTID=1, NAME="MY PRODUCT", UNITPRICE=10.2};&lt;br /&gt;&lt;br /&gt;SYSTEM.CONSOLE.WRITELINE("THE PRODUCT INFO IS: ID={0}, NAME={1}, UNITPRICE={2}", OBJPRODUCT.PRODUCTID, OBJPRODUCT.NAME, OBJPRODUCT.UNITPRICE);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;LISTING 9&lt;br /&gt;&lt;br /&gt;ONE COMMON SCENARIO WHERE WE CAN USE ANONYMOUS TYPE IS WHEN WE WANT TO QUERY AND WORK WITH DATA USING LINQ EXPRESSIONS, AND WE WANT TO DEFINE THE SCHEMA OF THE RESULT SET IN-LINE. LET'S SUPPOSE THAT WE WANT TO QUERY A DATABASE IN ORDER TO SEARCH FOR PRODUCTS THAT SATISFY SOME CONDITIONS SUCH AS UNITPRICE GREAT THAN A VALUE IN ORDER TO HAVE AN INSIGHT OF EXPENSIVE PRODUCTS (SEE LISTING 10). THIS SYNTAX ALLOWS USING THE DYNAMIC LANGUAGE FLEXIBILITY WITHOUT LOSING THE STRONG-TYPE LANGUAGE SUPPORT FOR COMPILE-TIME CHECKING AND INTELLISENSE IN VISUAL STUDIO.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;VAR RSPRODUCT = FROM P IN DB.PRODUCTS&lt;br /&gt;&lt;br /&gt;WHERE P.UNITPRICE &gt; 10000.00&lt;br /&gt;&lt;br /&gt;SELECT NEW&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;ID = P.PRODUCTID,&lt;br /&gt;&lt;br /&gt;NAME = P.NAME,&lt;br /&gt;&lt;br /&gt;PRICE = P.UNITPRICE&lt;br /&gt;&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;FOREACH (VAR OBJPRODUCT IN RSPRODUCT)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;SYSTEM.CONSOLE.WRITELINE("EXPENSIVE PRODUCTS. ID={0}, NAME={1}, PRICE={2}", OBJPRODUCT.ID, OBJPRODUCT.NAME, OBJPRODUCT.PRICE);&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;LISTING 10&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;LAMBDA EXPRESSION IS AN EVOLUTION OF DELEGATES IN ORDER TO WRITE IN-LINE ANONYMOUS BLOCKS IN C#. IT'S VERY HELPFUL WHEN WRITING LINQ QUERY EXPRESSIONS BY DEFINING WRAPPING METHODS THAT CAN BE PASSED AS ARGUMENTS TO THE EVALUATIONS. AS ILLUSTRATIVE PURPOSES, WE'RE GOING TO QUERY THE LIST OF CUSTOMER (OBJCUSTOMERLIST) DEFINED BEFORE. THIS COLLECTION HAS NEW EXTENSION METHODS SUCH AS WHERE AND AVERAGE WHICH CAN BE USED ALONG WITH LAMBDA EXPRESSIONS TO QUERY THE ARRAY OF ENTITIES.&lt;br /&gt;&lt;br /&gt;LET'S SUPPOSE THAT WE WANT TO RETRIEVE INFORMATION FOR A PARTICULAR CUSTOMER; THEN WE WRITE THE C# CODE ALONG WITH LAMBDA EXPRESSION AS A FILTER AS SHOWN (SEE LISTING 11).&lt;br /&gt;&lt;br /&gt;IENUMERABLE&lt;customer&gt; RSCUSTOMER = OBJCUSTOMERLIST.WHERE(P =&gt; P.FULLNAME == "JOHN OLAMENDY");&lt;br /&gt;&lt;br /&gt;LISTING 11&lt;br /&gt;&lt;br /&gt;THIS EXPRESSION IS SEMANTICALLY EQUIVALENT TO ANONYMOUS METHODS FOLLOWING THE RULE PARAMS=&gt;EXPRESSION. THAT IS, THE P IS PARAMETER OF THE ANONYMOUS METHOD REFERENCING TO EVERY INSTANCE OF CUSTOMER IN THE COLLECTION. IN THIS CASE, WE DON'T NEED TO DECLARE THE PARAMETER TYPE BECAUSE IT'S INFERRED BY THE COMPILER FROM THE TYPES IN THE COLLECTIONS. THE EXPRESSION IS NORMAL C# STATEMENT THAT, IN THIS CASE, RETURNS A BOOLEAN VALUE. LET'S RE-WRITE THE PREVIOUS LAMBDA EXPRESSION INTO AN ANONYMOUS METHOD (SEE LISTING 12).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;IENUMERABLE&lt;customer&gt; RSCUSTOMER = OBJCUSTOMERLIST.WHERE&lt;br /&gt;&lt;br /&gt;(&lt;br /&gt;&lt;br /&gt;DELEGATE(CUSTOMER OBJTEMP)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;RETURN OBJTEMP.FULLNAME == "JOHN OLAMENDY";&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;LISTING 12&lt;br /&gt;&lt;br /&gt;I WOULD LIKE TO ILLUSTRATE THE EVOLUTION FROM DELEGATES (IN EARLY C# LANGUAGE), THROUGH ANONYMOUS METHODS (IN C# 2.0) TO LAMBDA EXPRESSION (IN C# 3.0) USING AN EXAMPLE TAKING FROM THE VISUAL STDUIO 2008 DOCUMENTATION (SEE LISTING 13).&lt;br /&gt;&lt;br /&gt;CLASS TEST&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;DELEGATE VOID TESTDELEGATE(STRING S);&lt;br /&gt;&lt;br /&gt;STATIC VOID M(STRING S)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;CONSOLE.WRITELINE(S);&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;STATIC VOID MAIN(STRING[] ARGS)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;// ORIGINAL DELEGATE SYNTAX REQUIRED&lt;br /&gt;&lt;br /&gt;// INITIALIZATION WITH A NAMED METHOD.&lt;br /&gt;&lt;br /&gt;TESTDELEGATE TESTDELA = NEW TESTDELEGATE(M);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// C# 2.0: A DELEGATE CAN BE INITIALIZED WITH&lt;br /&gt;&lt;br /&gt;// INLINE CODE, CALLED AN "ANONYMOUS METHOD." THIS&lt;br /&gt;&lt;br /&gt;// METHOD TAKES A STRING AS AN INPUT PARAMETER.&lt;br /&gt;&lt;br /&gt;TESTDELEGATE TESTDELB = DELEGATE(STRING S) { CONSOLE.WRITELINE(S); };&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// C# 3.0. A DELEGATE CAN BE INITIALIZED WITH&lt;br /&gt;&lt;br /&gt;// A LAMBDA EXPRESSION. THE LAMBDA ALSO TAKES A STRING&lt;br /&gt;&lt;br /&gt;// AS AN INPUT PARAMETER (X). THE TYPE OF X IS INFERRED BY THE COMPILER.&lt;br /&gt;&lt;br /&gt;TESTDELEGATE TESTDELC = (X) =&gt; { CONSOLE.WRITELINE(X); };&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// INVOKE THE DELEGATES.&lt;br /&gt;&lt;br /&gt;TESTDELA("HELLO. MY NAME IS M AND I WRITE LINES.");&lt;br /&gt;&lt;br /&gt;TESTDELB("THAT'S NOTHING. I'M ANONYMOUS AND ");&lt;br /&gt;&lt;br /&gt;TESTDELC("I'M A FAMOUS AUTHOR.");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// KEEP CONSOLE WINDOW OPEN IN DEBUG MODE.&lt;br /&gt;&lt;br /&gt;CONSOLE.WRITELINE("PRESS ANY KEY TO EXIT.");&lt;br /&gt;&lt;br /&gt;CONSOLE.READKEY();&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/* OUTPUT:&lt;br /&gt;&lt;br /&gt;HELLO. MY NAME IS M AND I WRITE LINES.&lt;br /&gt;&lt;br /&gt;THAT'S NOTHING. I'M ANONYMOUS AND&lt;br /&gt;&lt;br /&gt;I'M A FAMOUS author.&lt;br /&gt;&lt;br /&gt;PRESS ANY KEY TO EXIT.&lt;br /&gt;&lt;br /&gt;*/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6739296117022719973?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6739296117022719973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6739296117022719973'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/whats-new-in-c-30.html' title='What&apos;s new in C# 3.0'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-3379380801772974620</id><published>2009-10-01T04:49:00.000-07:00</published><updated>2009-10-01T05:07:49.498-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='New Features in ASP.NET 3.5'/><title type='text'>New Controls in ASP.Net 3.5</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;This article will describe the following Ajax extension related controls: ScriptManager, ScriptManagerProxy, Timer, UpdatePanel, UpdateProgress and List View in ASP.NET 3.5.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;The article will be divided into two parts; the first section covering Ajax extension related controls and how these controls have fundamentally change the approach of web development, the second will cover the List View control. The red circle in the below image highlights the controls covered in this article.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_PZzesciZvb4/SsSZU-vfdFI/AAAAAAAAADU/Utc53grJlyo/s1600-h/6.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5387599639960581202" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 201px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_PZzesciZvb4/SsSZU-vfdFI/AAAAAAAAADU/Utc53grJlyo/s320/6.jpg" border="0" /&gt;&lt;/a&gt;  &lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;strong&gt;UpdatePanel&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The UpdatePanel control, now built-in as part of ASP.Net 3.5, is responsible for partial page rendering of a web page.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Meaning only part of a page is posted back to the server instead of the entire page.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;This helps to build rich User Interfaces, provides improved performance and quicker response time.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The following code listing shows two button controls: one within the UpdatePanel and the second outside of the UpdatePanel. If clicking on the Inside button only the contents inside the UpdatePanel will be updated (see Figure 2). If the outside button is clicked all the contents inside and outside of the UpdatePanel will be updated (see Figure 3).&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_PZzesciZvb4/SsSZFA4XanI/AAAAAAAAADM/d2tRlpwwCao/s1600-h/5.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5387599365656767090" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 201px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_PZzesciZvb4/SsSZFA4XanI/AAAAAAAAADM/d2tRlpwwCao/s320/5.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_PZzesciZvb4/SsSZEtlhd4I/AAAAAAAAADE/0hkw2wyzW8Y/s1600-h/4.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5387599360477460354" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 201px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_PZzesciZvb4/SsSZEtlhd4I/AAAAAAAAADE/0hkw2wyzW8Y/s320/4.jpg" border="0" /&gt;&lt;/a&gt;  &lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Code Listing&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Below is the code discussed in the UpdatePanel example:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="NewControls._Default" %&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;head runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;title&gt;UpdatePanel&lt;/title&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/head&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;body&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;form id="form1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;asp:scriptmanager id="ScriptManager1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/asp:ScriptManager&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;asp:updatepanel id="UpdatePanel1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;contenttemplate&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;asp:label id="lblUpdatePanel" runat="server" text="Within UpdatePanel :"&gt;&lt;/asp:Label&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;asp:label id="Label2" runat="server" text="Label"&gt;&lt;/asp:Label&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;asp:button id="btnInside" runat="server" onclick="Button1_Click"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;Text="Inside" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;     &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;&lt;/contenttemplate&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/asp:UpdatePanel&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;asp:label id="lblOutsideUpdatepanel" runat="server"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;Text="Outside&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;of UpdatePanel :"&gt;&lt;/asp:Label&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;asp:label id="Label3" runat="server" text="Label"&gt;&lt;/asp:Label&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;p&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;asp:button id="btnOutside" runat="server" text="Outside"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/p&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/form&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/body&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/html&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;protected void Page_Load(object sender, EventArgs e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;Label2.Text = System.DateTime.Now.ToString();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;Label3.Text = System.DateTime.Now.ToString();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Properties of the UpdatePanel&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The content of the UpdatePanel described in the code listing is declared within the ContentTemplate tag. The content of the ContentTemplate tag is posted back to the server asynchronously. Create the ContentTemplate's content declaratively or programmatically.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;By default the UpdateMode property of UpdatePanel is set to Always meaning the contents of the UpdatePanel will be rendered whenever the page is posted back to server. Conversely setting the UpdateMode property to Conditional means the content of the UpdatePanel will be rendered in the following circumstances:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;When the Update method is explicitly called from the UpdatePanel control &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;When a control defined as a trigger within the Triggers tag in the UpdatePanel and is responsible for postback. The control triggers an update of the contents within the panel explicitly and the control can be present either inside or outside of the UpdatePanel control. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;When a child control of an UpdatePanel control is responsible for postback and the ChildrenAsTriggers property is set to true &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;When the UpdatePanel control is nested inside another UpdatePanel control and the parent UpdatePanel control is updated &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The following code shows the Update method of the UpdatePanel being called provided the condition within the if block is satisfied.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Code Listing&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;protected void Button1_Click(object sender, EventArgs e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;if (condition.....)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;UpdatePanel1.Update();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Nested UpdatePanel Controls&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The UpdatePanel controls can be nested. If the parent UpdatePanel is refreshed, all the nested UpdatePanels are refreshed also.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The &lt;triggers&gt; element&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The above code sends not only the labels code when asynchronous post back occurs, but also the buttons code and the entire section of the UpdatePanel back to the client. However only the part which needs updating can be sent back to the server - meaning only the label part.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;To do this, Trigger elements need to be added into the UpdatePanel control as shown in the Code Listing below:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Code Listing&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;asp:updatepanel id="UpdatePanel1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;contenttemplate&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;.................&lt;span style="mso-spacerun: yes"&gt;           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/contenttemplate&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;triggers&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;asp:asyncpostbacktrigger controlid="btnInside" eventname="Click"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/triggers&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/asp:UpdatePanel&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;     &lt;/span&gt;&lt;asp:button id="btnInside" runat="server" onclick="Button1_Click"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;Text="Inside" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;....................&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The Trigger can be generated by any control in the form. It can be of two types: AsynchronousPostBackTrigger and PostBackTrigger. In this example AsynchronousPostBackTrigger is used. The PostBackTrigger will cause a full page post back whereas the AsynchronousPostBackTrigger will cause only a Asynchronous PostBack.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;UpdatePanel Controls in Master Pages&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;To use the UpdatePanel control in a master page include the ScriptManager control on the master page. Then the ScriptManager control will become the ScriptManager control for all content pages. Remember the ScriptManager control can't be added in the content pages again when the master page has a ScriptManager control. To register scripts or services declaratively in a content page, add a ScriptManagerProxy control to that content page. If the master page does not have the ScriptManager control, have a separate ScriptManager control for each content page that contains an UpdatePanel control.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;It is more logical to place inside each content page the required scripts and services using the ScriptManagerProxy control. Otherwise the Master Page will be responsible for including all the scripts and services required by all the content pages in the website. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Avoid partial-page rendering for a content page when the master page has a ScriptManager control by setting the EnablePartialRendering property of the ScriptManager control to false programmatically.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Then the content page provided content page does not require partial-page rendering capabilities.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;ScriptManager and ScriptManagerProxy&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The ScriptManager is the most important control for an Ajax enabled web page. It provides Client side scripting and access to web service using javascript proxy classes. Using the UpdatePanel control provides partial page rendering capabilities.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;There can be only one ScriptManager control in an Ajax enabled webpage. If more than one ScriptManager control is added in the web page, the following exception will occur at runtime: Exception Details: System.InvalidOperationException: Only one instance of a ScriptManager can be added to the page. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Code Listing&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The following is the code listing for the example master page:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;%@ Master Language="C#" AutoEventWireup="true" CodeBehind="MasterPage.master.cs" Inherits="NewControls.MasterPage" %&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;head runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;title&gt;Master Page&lt;/title&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;asp:contentplaceholder id="head" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/asp:ContentPlaceHolder&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/head&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;body&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;form id="form1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;div&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;asp:scriptmanager id="ScriptManager1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;asp:contentplaceholder id="ContentPlaceHolder1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/asp:ContentPlaceHolder&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/div&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/form&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/body&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/html&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;However to modify the ScriptManager control of the master page, then have a scriptManagerproxy control in the content page.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Note that&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;to use ScriptManagerProxy control in the content page, there should be a ScriptManager control in master page. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Code Listing&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The following code snippet is the the content page:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;%@ Page Language="C#" MasterPageFile="~/MasterPage.Master" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="NewControls.WebForm1" Title="Untitled Page" %&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;asp:content id="Content1" contentplaceholderid="head" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/asp:Content&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;asp:content id="Content2" contentplaceholderid="ContentPlaceHolder1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;asp:scriptmanagerproxy id="ScriptManagerProxy1" runat="server"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;scripts&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;asp:scriptreference path="~/Common.js"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/scripts&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/asp:ScriptManagerProxy&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;p&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;input id="Button1" type="button" value="button" onclick="javascript:test();"&gt;&lt;/p&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/asp:Content&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;function test()&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;// test function in Common.js&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;alert("Content Page Functionality");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;UpdateProgress&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;When doing the partial page update in an asynchronous mode of operation, UpdateProgress is very useful control to display the process status. In the figure below, when the start button is clicked the Processing . message is displayed indicating that the operation is in process and the button caption will be changed when the processing is finished (see Figure 5). The required code for this is listed below:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_PZzesciZvb4/SsSZEGcqm_I/AAAAAAAAAC8/VsQJcqyXibk/s1600-h/3.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5387599349971327986" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 201px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_PZzesciZvb4/SsSZEGcqm_I/AAAAAAAAAC8/VsQJcqyXibk/s320/3.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_PZzesciZvb4/SsSZD6UI0wI/AAAAAAAAAC0/ZtDhtnKGnYY/s1600-h/2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5387599346714333954" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 201px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_PZzesciZvb4/SsSZD6UI0wI/AAAAAAAAAC0/ZtDhtnKGnYY/s320/2.jpg" border="0" /&gt;&lt;/a&gt;  &lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Code Listing&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UpdateProgress.aspx.cs" Inherits="NewControls.UpdateProgress" %&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;head runat="server"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;title&gt;Update Progress&lt;/title&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/head&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;body&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;form id="form1" runat="server"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;div&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;asp:scriptmanager id="ScriptManager1" runat="server"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/asp:ScriptManager&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;         &lt;/span&gt;&lt;asp:updatepanel id="UpdatePanel1" runat="server" updatemode="Conditional"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;contenttemplate&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;&lt;asp:button id="Button1" runat="server" text="Start" onclick="Button1_Click"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;/contenttemplate&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/asp:UpdatePanel&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;         &lt;/span&gt;&lt;asp:updateprogress id="UpdateProgress1" runat="server" associatedupdatepanelid="UpdatePanel1"&gt;&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;&lt;progresstemplate&gt;&lt;b&gt;Processing................&lt;/b&gt;&lt;/progresstemplate&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;&lt;/asp:UpdateProgress&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/form&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/body&gt; &lt;/html&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;protected void Button1_Click(object sender, EventArgs e)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;System.Threading.Thread.Sleep(6000);&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;Button1.Text = "End";&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Note that there can be more than one UpdateProgress control in the web page and each UpdateProgress control can be associated with a separate UpdatePanel control. Alternatively there can only be one UpdateProgress control for multiple UpdatePanel control. &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;That means one UpdateProgress control can be associated with all the UpdatePanel controls present in the web page.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Timer Control&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;To update any value or data on an interval basis, the Timer control is an ideal choice. In the following code listing the datetime is update every second as the interval attribute of timer control is set to 1000 millisecond i.e. 1 second.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Code Listing&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Timer.aspx.cs" Inherits="NewControls.Timer" %&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;head runat="server"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;title&gt;Timer Control&lt;/title&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/head&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;body&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;form id="form1" runat="server"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;div&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;    &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;asp:scriptmanager id="ScriptManager1" runat="server"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/asp:ScriptManager&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;asp:updatepanel id="UpdatePanel1" runat="server"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;contenttemplate&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;&lt;asp:label id="Label1" runat="server" text="Label"&gt;&lt;/asp:Label&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;&lt;asp:timer id="Timer1" runat="server" ontick="Timer1_Tick" interval="1000"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;&lt;/asp:Timer&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;/contenttemplate&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;/asp:UpdatePanel&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;    &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;/form&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/body&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/html&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;protected void Page_Load(object sender, EventArgs e)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;if (!IsPostBack)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;Label1.Text = DateTime.Now.ToString();&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;span style="font-family:Calibri;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;protected void Timer1_Tick(object sender, EventArgs e)&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;Label1.Text = DateTime.Now.ToString()&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;}&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_PZzesciZvb4/SsSZDugU62I/AAAAAAAAACs/-pEfK69Jzic/s1600-h/1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5387599343544232802" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 202px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_PZzesciZvb4/SsSZDugU62I/AAAAAAAAACs/-pEfK69Jzic/s320/1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;strong&gt;Conclusion&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;How the ASP.NET Ajax server controls can be used has been explained and demonstrated. These controls improve the response time against a request, helps to minimize postback and enables client-server communication without using client script, thus making web applications better than ever.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-3379380801772974620?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3379380801772974620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3379380801772974620'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/new-controls-in-aspnet-35.html' title='New Controls in ASP.Net 3.5'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_PZzesciZvb4/SsSZU-vfdFI/AAAAAAAAADU/Utc53grJlyo/s72-c/6.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-3485269820687442118</id><published>2009-10-01T04:47:00.000-07:00</published><updated>2009-10-01T04:49:07.419-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows Communication Foundation'/><title type='text'>Windows Communication Foundation</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;strong&gt;Working with Windows Communication Foundation (WCF)&lt;/strong&gt; &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-tab-count: 1"&gt;                &lt;/span&gt;Prior to .Net 3.0 it was not an easy matter to select a particular technology for communicating between systems due to the number of technologies available from&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Microsoft. For example, users could have used Web Service to communicate between a Java based application and a .Net application; WSE users&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;could have take advantage of some of the WS-* message protocols; MSMQ has the ability to&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;queue&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;messages which helps to communicate between intermittently connected solutions; Enterprise services (the successor of COM+) helps to build distributed application easily; .Net Remoting is a fast way to move messages between two .Net applications. All the above mentioned technologies have their pros and cons. Using WCF now we can take the advantage of all the above distributed technologies in a unified manner and WCF is the&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;successor to all these&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;message distribution technologies.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Performance comparison between distributed technologies:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;When we migrate distributed applications made&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;with ASP.NET Web Services, WSE, .NET Enterprise Services and .NET Remoting to WCF, it will in almost all cases result in a performance boost: &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Other Distributed Technologies&lt;span style="mso-tab-count: 1"&gt; &lt;/span&gt;WCF Performance Advantage&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;ASP.NET Web Service&lt;span style="mso-tab-count: 1"&gt;    &lt;/span&gt;25%-50% faster&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;.NET Remoting&lt;span style="mso-tab-count: 1"&gt;  &lt;/span&gt;25% faster&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;WSE 2.0/3.0 implementations.&lt;span style="mso-tab-count: 1"&gt;   &lt;/span&gt;400%&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;faster&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;.NET Enterprise Service&lt;span style="mso-tab-count: 1"&gt; &lt;/span&gt;100% faster subject to the load.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Whereas the other Microsoft distributed technologies do not have too many limitations in running on&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Windows operating system, an application built with WCF can run only on Windows XP SP2, Windows Vista or Windows Server 2008.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Programming Model:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A WCF service is made up of three parts: the service, one or more endpoints and a hosting environment.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A service is basically a class written in a .Net compliant language which contains some methods that are exposed through the WCF service. A service may have one or more endpoints - an endpoint is responsible for communication from the service to the client.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Endpoints also have three parts which are&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;known as 'ABC': 'A' for Address, 'B' for Binding and 'C' for Contracts.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;Address: Address specifies the info about where to find the service.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;Binding: Binding specifies the info for how to&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;interact with the service.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;Contracts: Contracts specifies the info for how the service is implemented and what it offers.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Finally a hosting environment where the service is contained.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;WCF bindings:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;System-provided WCF bindings are used to specify the transport protocols, encoding, and security details required for clients and services to communicate with each other. As per MSDN followings are the system-provided WCF bindings:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;BasicHttpBinding:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A binding that is suitable for communication with WS-Basic Profile conformant Web Services like ASMX-based services. This binding uses HTTP as the transport and Text/XML as the message encoding. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;WSHttpBinding:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A secure and interoperable binding that is suitable for non-duplex service contracts. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;WSDualHttpBinding:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A secure and interoperable binding that is suitable for duplex service contracts or communication through SOAP intermediaries. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;WSFederationHttpBinding:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A secure and interoperable binding that supports the WS-Federation protocol, enabling organizations that are in a federation to efficiently authenticate and authorize users. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;NetTcpBinding:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A secure and optimized binding suitable for cross-machine communication between WCF applications &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;NetNamedPipeBinding:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A secure, reliable, optimized binding that is suitable for on-machine communication between WCF applications. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;NetMsmqBinding:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A queued binding that is suitable for cross-machine communication between WCF applications. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;NetPeerTcpBinding :&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A binding that enables secure, multi-machine communication. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;MsmqIntegrationBinding :&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;MsmqIntegrationBinding: A binding that is suitable for cross-machine communication between a WCF application and existing MSMQ applications.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;It should be noted that WCF also allows us to define our own custom bindings.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Creating a WCF service:&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;In order to create a WCF service in Visual Studio, select WCF&gt;WCF Service Library from the New Project dialog. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[if !supportLineBreakNewLine]--&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;This&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;will create the several files in a new project. Apart from the AppConfig file there are two more files -&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Service1.cs&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;and IService1.cs&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;. Service1.cs is an implementation of the IService1.cs interface.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-3485269820687442118?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3485269820687442118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3485269820687442118'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/windows-communication-foundation.html' title='Windows Communication Foundation'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-2063646277852856818</id><published>2009-10-01T04:43:00.000-07:00</published><updated>2009-10-01T04:45:46.700-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migrating SQL Server Databases'/><title type='text'>Migrating SQL Server Databases (Part 3)</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Migrating SQL Server Databases - The DBA's Checklist (Part 3)&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-tab-count: 1"&gt;                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Continuing from Part 2 of the Database Migration Checklist series:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;strong&gt;Step 10: Full-text catalogs and full-text indexing&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;This is one area of SQL Server where people do not seem to take notice unless something goes wrong. Full-text functionality is a specialised area in database application development and is not usually implemented in your everyday OLTP systems.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Nevertheless, if you are migrating a database that uses full-text indexing on one or more tables, you need to be aware a few points.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;First of all, SQL Server 2005 now allows full-text catalog files to be restored or attached along with the rest of the database. However, after migration, if you are unable to look at the properties of any full-text catalogs, you are probably better off dropping and recreating it. You may also get the following error messages along the way:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Msg 9954, Level 16, State 2, Line 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;The Full-Text Service (msftesql) is disabled. The system administrator must enable this service.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;This basically means full text service is not running (disabled or stopped) in the destination instance. You will need to start it from the Configuration Manager.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Similarly, if you get the following message, you will also need to drop and recreate the catalog and populate it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Msg 7624, Level 16, State 1, Line 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Full-text catalog 'catalog_name' is in an unusable state. Drop and re-create this full-text catalog.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;A full population of full-text indexes can be a time and resource intensive operation. Obviously you will want to schedule it for low usage hours if the database is restored in an existing production server.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Also, bear in mind that any scheduled job that existed in the source server for populating the full text catalog (e.g. nightly process for incremental update) will need to be re-created in the destination.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;strong&gt;Step 11: Database collation considerations&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Another sticky area to consider during a migration is the collation setting. Ideally you would want to restore or attach the database in a SQL Server instance with the same collation. Although not used commonly, SQL Server allows you to change a database's collation by using the ALTER DATABASE command:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;ALTER DATABASE database_name COLLATE collation_name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;You should not be using this command for no reason as it can get really dangerous.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;When you change the database collation, it does not change the collation of the existing user table columns.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;However the columns of every new table, every new UDT and subsequently created variables or parameters in code will use the new setting. The collation of every char, nchar, varchar, nvarchar, text or ntext field of the system tables will also be changed. Stored procedure and function parameters will be changed to the new collation and finally, every character-based system data type and user defined data types will also be affected. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;And the change may not be successful either if there are dependent objects involved. You may get one or multiple messages like the following:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Cannot ALTER 'object_name' because it is being referenced by object 'dependent_object_name'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;That is why it is important to test and check for collation related issues. Collation also affects queries that use comparisons of character-based data.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;If errors arise due to two sides of a comparison being in different collation orders, the COLLATE keyword can be used to cast one side to the same collation as the other.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-2063646277852856818?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2063646277852856818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2063646277852856818'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/migrating-sql-server-databases-part-3.html' title='Migrating SQL Server Databases (Part 3)'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-1140592445522751904</id><published>2009-10-01T04:39:00.000-07:00</published><updated>2009-10-01T04:42:15.029-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migrating SQL Server Databases'/><title type='text'>Migrating SQL Server Databases (Part 2)</title><content type='html'>&lt;p&gt;&lt;strong&gt;Migrating SQL Server Databases - The DBA's Checklist (Part 2)&lt;/strong&gt;&lt;br /&gt;Continuing from Part 1  , our Migration Checklist continues:&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Step 5: Update statistics&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;It is always a good idea to update the statistics of the database that you have just installed or migrated. To do this, run the following command against the target database:sp_updatestatsThe sp_updatestats system stored procedure runs the UPDATE STATISTICS command against every user and system table in the database.  However, a word of caution: running the sp_updatestats against a database with a compatibility level below 90 (SQL Server 2005) will reset the automatic UPDATE STATISTICS settings for every index and statistics of every table in the database. You may therefore want to change the compatibility mode before you run the command.Another thing you should remember to do is to ensure the new database has its AUTO_CREATE_STATISTICS and AUTO_UPDATE_STATISTICS properties set to ON. You can do so using the ALTER DATABASE command or from the SSMS.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Step 6: Set database options&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;You may have to change the state of a database after it has been restored. If the database was changed to single-user or read-only mode before backup, the restored copy will also retain these settings. This may not be an issue when you are manually restoring from Enterprise Manager or the Management Studio since you can change the properties. However, this is something to be mindful of if the restore process is invoked by an automated job or script and the database needs to be written to immediately after restore. You may want to check the database's status programmatically in such cases.Another important option you may want to set for the newly restored / attached database is PAGE_VERIFY. This option specifies how you want SQL Server to ensure the physical integrity of the data. It is a new option from SQL Server 2005 and can have three values: CHECKSUM (default for SQL Server 2005 and latter databases), TORN_PAGE_DETECTION (default when restoring a pre-SQL Server 2005 database) or NONE.Torn page detection was itself an option for SQL Server 2000 databases. From SQL Server 2005, when PAGE_VERIFY is set to CHECKSUM, the database engine calculates the checksum for a page's contents and writes it to the page header before storing it in disk. When the page is read from the disk, the checksum is computed again and compared with the checksum stored in the header.  Torn page detection works much like the same way in that it stores a bit in the page header for every 512 byte sector. When data is read from the page, the torn page bits stored in the header is compared with the respective sector contents.When PAGE_VERIFY is set to NONE, SQL Server does not perform any checking, even if torn page data or checksums are present in the page header.  This may not be something you would want to set unless there is a very specific reason. Microsoft suggests using the CHECKSUM page verify option as this offers more protection. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Step 7: Map database users to logins&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;A common database migration issue is related to user access. Windows and SQL Server native logins that existed in the source instance and had access to the database may not be present in the destination. Even if the logins exist in the destination, the mapping between the user accounts and the logins will not be automatic.You can use a special system stored procedure called sp_change_users_login to address these situations. The procedure needs to be run against the newly attached or restored database and can accept four parameters. Depending on what you want to do, you may be using less than four though.The first parameter, @Action, can take three values. When you specify @Action = 'Report', the system will provide you with a list of database users which are not mapped to any login. If you want to map a database user to an existing SQL Server login, the value for @Action will be 'Update_One'. In this case, you will only need to provide the database user name and the login it will map to. So if your newly restored database has a user account called "bob" and there is already a SQL Server login with the same name and you want to map the user to the login, you will execute a query like the following:sp_change_users_login         @Action = 'Update_One',        @UserNamePattern = 'bob',        @LoginName = 'bob'If the login does not exist, you can instruct SQL Server to create the login with the same name. In this case you will need to provide a password for the login and the value of the @Action parameter will be 'Auto_Fix'. If the login already exists, it will be automatically mapped to the user account. Unfortunately sp_change_users_login system stored procedure cannot be used to map database users to trusted logins (Windows accounts) in SQL Server. You will need to follow a manual process to re-map the database user accounts&lt;br /&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-1140592445522751904?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1140592445522751904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1140592445522751904'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/migrating-sql-server-databases-part-2.html' title='Migrating SQL Server Databases (Part 2)'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6113006718240461161</id><published>2009-10-01T04:13:00.000-07:00</published><updated>2009-10-01T04:38:08.486-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Migrating SQL Server Databases'/><title type='text'>Migrating SQL Server Databases</title><content type='html'>&lt;strong&gt;Migrating SQL Server Databases - The DBA's Checklist (Part 1)&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;It is a fact of life: SQL Server databases change homes. They move from one instance to another, from one version to the next, from old servers to new ones. They move around as an organisation's data grows, applications are enhanced or new versions of the database software are released. If not anything else, servers become old and unreliable and databases eventually need to find a new home. Consider the following scenarios:1. A new database application is rolled out in a production server from the development or test environment2. A copy of the production database needs to be installed in a test server for troubleshooting purposes3. A copy of the development database is regularly refreshed in a test server during the system development life cycle4. A SQL Server is upgraded to a newer version. This can be an in-place upgrade or a side-by-side migration5. One or more databases need to be moved between different instances as part of a consolidation strategy. The instances can be running the same or different version of SQL Server6. A database has to be restored from a backup file provided by a third party application vendor7. A backup of the database is restored in the same or different instance for disaster recovery8. A database needs to be migrated within the same instance: a. Files are moved from direct attached storage to storage area networkb. The same database is copied under a different name for another applicationMigrating SQL Server database applications is a complex topic in itself. There are a number of components that can be involved: jobs, DTS or SSIS packages, logins or linked servers are only few pieces of the puzzle. However, in this article we will focus only on the central part of migration: the installation of the database itself. Unless it is an in-place upgrade, typically the database is taken from a source server and installed in a destination instance. Most of the time, a full backup file is used for the rollout. The backup file is either provided to the DBA or the DBA takes the backup and restores it in the target server. Sometimes the database is detached from the source and the files are copied to and attached in the destination. Regardless of the method of copying, moving, refreshing, restoring or upgrading the physical database, there are a number of steps the DBA should follow before and after it has been installed in the destination. It is these post database installation steps we are going to discuss below. Some of these steps apply in almost every scenario described above while some will depend on the type of objects contained within the database. Also, the principles hold regardless of the number of databases involved. Step 1: Make a copy of data and log files when attaching and detachingWhen detaching and attaching databases, ensure you have made copies of the data and log files if the destination is running a newer version of SQL Server. This is because once attached to a newer version, the database cannot be detached and attached back to an older version. Trying to do so will give you a message like the following:Server: Msg 602, Level 21, State 50, Line 1Could not find row in sysindexes for database ID 6, object ID 1, index ID 1. Run DBCC CHECKTABLE on sysindexes.Connection BrokenIf you try to backup the attached database and restore it in the source, it will still fail.Similarly, if you are restoring the database in a newer version, it cannot be backed up or detached and put back in an older version of SQL. Unlike detach and attach method though, you do not lose the backup file or the original database here. When detaching and attaching a database, it is important you keep all the log files available along with the data files. It is possible to attach a database without a log file and SQL Server can be instructed to create a new log file, however this does not work if the database was detached when the primary file group was read-only. You will need all the log files in such cases.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Step 2: Change database compatibility level&lt;/strong&gt;&lt;br /&gt;Once the database has been restored or attached to a newer version of SQL Server, change the database compatibility level to reflect the newer version unless there is a compelling reason not to do so. When attaching or restoring from a previous version of SQL, the database retains the older version's compatibility level. The only time you would want to keep a database with an older compatibility level is when the code within your database is no longer supported by SQL Server. For example, outer joins with *= or the =* operators were still possible in SQL 2000 (with a warning message), but not in SQL 2005 anymore. If your stored procedures or triggers are using this form of join, you would want to keep the database with an older compatibility level. For a list of compatibility issues between older and newer versions of SQL Server databases, refer to the Books Online under the sp_dbcmptlevel topic.Application developers and architects can help you in deciding whether you should change the compatibility level or not. You can always change the compatibility mode from the newest to an older version if necessary. To change the compatibility level, you can either use the database's property from the SQL Server Management Studio or use the sp_dbcmptlevel stored procedure.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_PZzesciZvb4/SsSTzBibNMI/AAAAAAAAACc/VR63qMACGnA/s1600-h/1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5387593559037392066" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 82px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_PZzesciZvb4/SsSTzBibNMI/AAAAAAAAACc/VR63qMACGnA/s320/1.jpg" border="0" /&gt;&lt;/a&gt; Bear in mind that you cannot run the built-in reports for databases from SQL Server Management Studio if you keep the database with an older compatibility level. The following figure shows the error message I received when trying to run the Disk Usage by Top Tables report against a database. This database was hosted in a SQL Server 2005 system and still had a compatibility mode 80 (SQL 2000).&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;img id="BLOGGER_PHOTO_ID_5387593570838896354" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 35px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_PZzesciZvb4/SsSTztgH3uI/AAAAAAAAACk/VqAu6-ZfIrs/s320/2.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_PZzesciZvb4/SsSRoIejuzI/AAAAAAAAACU/0Dt2nqS_F2M/s1600-h/dotnet_classes.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6113006718240461161?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6113006718240461161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6113006718240461161'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/migrating-sql-server-databases.html' title='Migrating SQL Server Databases'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_PZzesciZvb4/SsSTzBibNMI/AAAAAAAAACc/VR63qMACGnA/s72-c/1.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-8292305441658954330</id><published>2009-10-01T04:01:00.000-07:00</published><updated>2009-10-01T04:06:43.070-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><title type='text'>Visual Studio 2008</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Visual Studio 2008&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Visual Studio 2008, codenamed Orcas, was released to MSDN subscribers on 19 November 2007 alongside .NET Framework 3.5. The codename Orcas is, like Whidbey, a reference to an island in Puget Sound, Orcas Island. The source code for the Visual Studio 2008 IDE will be available under a shared source license to some of Microsoft's partners and ISVs. Microsoft released Service Pack 1 for Visual Studio 2008 on 11 August 2008. The internal version number of Visual Studio 2008 is version 9.0.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Visual Studio 2008 is focused on development of Windows Vista, 2007 Office system, and Web applications. For visual design, a new Windows Presentation Foundation visual designer and a new HTML/CSS editor influenced by Microsoft Expression Web are included. J# is not included. Visual Studio 2008 requires .NET Framework 3.5 and by default configures compiled assemblies to run on .NET Framework 3.5, but it also supports multi-targeting which lets the developers choose which version of the .NET Framework (out of 2.0, 3.0, 3.5, Silverlight CoreCLR or .NET Compact Framework) the assembly runs on. Visual Studio 2008 also includes new code analysis tools, including the new Code Metrics tool (only in Team Edition and Team Suite Edition).[60] For Visual C++, Visual Studio adds a new version of Microsoft Foundation Classes (MFC 9.0) that adds support for the visual styles and UI controls introduced with Windows Vista.[61] For native and managed code interoperability, Visual C++ introduces the STL/CLR, which is a port of the C++ Standard Template Library (STL) containers and algorithms to managed code. STL/CLR defines STL-like containers, iterators and algorithms that work on C++/CLI managed objects.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Visual Studio 2008 features a XAML based designer (codenamed Cider), workflow designer, LINQ to SQL designer (for defining the type mappings and object encapsulation for SQL Server data), XSLT debugger, JavaScript Intellisense support, JavaScript Debugging support, support for UAC manifests, a concurrent build system, among others.It ships with an enhanced set of UI widgets, both for Windows Forms and WPF. It also includes a multithreaded build engine (MSBuild) to compile multiple source files (and build the executable file) in a project across multiple threads simultaneously. It also includes support for compiling PNG compressed icon resources introduced in Windows Vista. An updated XML Schema designer will ship separately some time after the release of Visual Studio 2008.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;The Visual Studio debugger includes features targeting easier debugging of multi-threaded applications. In debugging mode, in the Threads window, which lists all the threads, hovering over a thread will display the stack trace of that thread in tooltips. The &lt;span style="TEXT-TRANSFORM: uppercase"&gt;threads&lt;/span&gt; can directly be named and flagged for easier identification from that window itself.In addition, in the code window, along with indicating the location of the currently executing instruction in the current thread, the currently executing instructions in other threads are also pointed out. &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-8292305441658954330?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8292305441658954330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/8292305441658954330'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/visual-studio-2008.html' title='Visual Studio 2008'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-3894692369239550281</id><published>2009-10-01T03:57:00.000-07:00</published><updated>2009-10-01T04:00:11.539-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java Platform'/><title type='text'>Java Platform</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Java Platform&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Main articles: Java Platform and Java Runtime Environment&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;One characteristic of Java is portability, which means that computer programs written in the Java language must run similarly on any supported hardware/operating-system platform. This is achieved by compiling the Java language code to an intermediate representation called Java bytecode, instead of directly to platform-specific machine code. Java bytecode instructions are analogous to machine code, but are intended to be interpreted by a virtual machine (VM) written specifically for the host hardware. End-users commonly use a Java Runtime Environment (JRE) installed on their own machine for standalone Java applications, or in a Web browser for Java applets.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Standardized libraries provide a generic way to access host specific features such as graphics, threading and networking.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;A major benefit of using bytecode is porting. However, the overhead of interpretation means that interpreted programs almost always run more slowly than programs compiled to native executables would, and Java suffered a reputation for poor performance. This gap has been narrowed by a number of optimization techniques introduced in the more recent JVM implementations.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Implementations&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Sun Microsystems officially licenses the Java Standard Edition platform for Linux, Mac OS X,and Solaris. Although, in the past Sun has licensed Java to Microsoft, the license has expired and has not been renewed. Through a network of third-party vendors and licensees, alternative Java environments are available for these and other platforms.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Sun's trademark license for usage of the Java brand insists that all implementations be "compatible". This resulted in a legal dispute with Microsoft after Sun claimed that the Microsoft implementation did not support RMI or JNI and had added platform-specific features of their own. Sun sued in 1997, and in 2001 won a settlement of $20 million as well as a court order enforcing the terms of the license from Sun. As a result, Microsoft no longer ships Java with Windows, and in recent versions of Windows, Internet Explorer cannot support Java applets without a third-party plugin. Sun, and others, have made available free Java run-time systems for those and other versions of Windows.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Platform-independent Java is essential to the Java EE strategy, and an even more rigorous validation is required to certify an implementation. This environment enables portable server-side applications, such as Web services, Java Servlets, and Enterprise JavaBeans, as well as with embedded systems based on OSGi, using Embedded Java environments. Through the new GlassFish project, Sun is working to create a fully functional, unified open source implementation of the Java EE technologies.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Sun also distributes a superset of the JRE called the Java Development Kit (commonly known as the JDK), which includes development tools such as the Java compiler, Javadoc, Jar and debugger.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Performance&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Main article: Java performance&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Programs written in Java have had a reputation for being slower and requiring more memory than those written in some other languages. However, Java programs' execution speed improved significantly with the introduction of Just-in-time compilation in 1997/1998 for Java 1.1, the addition of language features supporting better code analysis,[clarification needed] and optimizations in the Java Virtual Machine itself, such as HotSpot becoming the default for Sun's JVM in 2000&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-3894692369239550281?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3894692369239550281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3894692369239550281'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/java-platform.html' title='Java Platform'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6899806703770373351</id><published>2009-10-01T03:24:00.000-07:00</published><updated>2009-10-01T03:56:53.900-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java History'/><title type='text'>Java History</title><content type='html'>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Java History Sun released the first public implementation as Java 1.0 in 1995. It promised "Write Once, Run Anywhere" (WORA), providing no-cost run-times on popular platforms. Fairly secure and featuring configurable security, it allowed network- and file-access restrictions. Major web browsers soon incorporated the ability to run Java applets within web pages, and Java quickly became popular. With the advent of Java 2 (released initially as J2SE 1.2 in December 1998), new versions had multiple configurations built for different types of platforms. For example, J2EE targeted enterprise applications and the greatly stripped-down version J2ME for mobile applications. J2SE designated the Standard Edition. In 2006, for marketing purposes, Sun renamed new J2 versions as Java EE, Java ME, and Java SE, respectively.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;In 1997, Sun Microsystems approached the ISO/IEC JTC1 standards body and later the Ecma International to formalize Java, but it soon withdrew from the process&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Java remains a de facto standard, controlled through the Java Community Process At one time, Sun made most of its Java implementations available without charge, despite their proprietary software status. Sun generated revenue from Java through the selling of licenses for specialized products such as the Java Enterprise System. Sun distinguishes between its Software Development Kit (SDK) and Runtime Environment (JRE) (a subset of the SDK); the primary distinction involves the JRE's lack of the compiler, utility programs, and header files.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;On 13 November 2006, Sun released much of Java as open source software under the terms of the GNU General Public License (GPL). On 8 May 2007 Sun finished the process, making all of Java's core code available under free software / open-source distribution terms, aside from a small portion of code to which Sun did not hold the copyright.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;Sun's vice-president Rich Green has said that Sun's ideal role with regards to Java is as an "evangelist".&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="TEXT-TRANSFORM: uppercase"&gt;&lt;span style="font-family:Calibri;"&gt;Principles&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;There were five primary goals in the creation of the Java language&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;1.&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;It should be "simple, object oriented, and familiar". &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;2.&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;It should be "robust and secure". &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;3.&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;It should be "architecture neutral and portable". &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;4.&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;It should execute with "high performance". &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family:Calibri;"&gt;5.&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;It should be "interpreted, threaded, and dynamic". &lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6899806703770373351?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6899806703770373351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6899806703770373351'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/10/java-history.html' title='Java History'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6093635040332458189</id><published>2009-08-10T06:17:00.000-07:00</published><updated>2009-08-10T06:20:03.786-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ReportViewer Control in Visual Studio 2008'/><title type='text'>ReportViewer Control in Visual Studio 2008</title><content type='html'>Introduction&lt;br /&gt;ReportViewer is a freely redistributable control that enables embedding reports in applications developed using the .NET Framework. Reports are designed with drag-and-drop simplicity using Report Designer included in Visual Studio 2008 (Standard editon and above.)&lt;br /&gt;The ReportViewer control offers the following benefits:&lt;br /&gt;1 Processes data efficiently. The reporting engine built into ReportViewer can perform operations such as filtering, sorting, grouping and aggregation.&lt;br /&gt;2 Supports a variety of ways in which to present data. You can present data as lists, tables, charts and matrices (also known as crosstabs.)&lt;br /&gt;3 Adds visual appeal. You can specify fonts, colors, border styles, background images etc to make your report visually appealing.&lt;br /&gt;4 Enables interactivity in reports. You can have collapsible sections, document map, bookmarks, interactive sorting etc in your report.&lt;br /&gt;5 Supports conditional formatting. You can embed expressions in the report to change display style dynamically based on data values.&lt;br /&gt;6 Supports printing and print preview.&lt;br /&gt;7 Supports export to Excel and PDF.&lt;br /&gt;&lt;br /&gt;The control can process and render reports independently using a built-in engine ('local mode') or it can display reports that are processed and rendered on a Report Server ('remote mode').&lt;br /&gt;There is a WinForms and a WebForms version of the control.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6093635040332458189?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6093635040332458189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6093635040332458189'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/08/reportviewer-control-in-visual-studio.html' title='ReportViewer Control in Visual Studio 2008'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-3457007695501065014</id><published>2009-08-08T04:42:00.001-07:00</published><updated>2009-08-08T04:42:30.458-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript Debugging and Intellisense'/><title type='text'>JavaScript Debugging and Intellisense</title><content type='html'>In Visual Studio 2008, client-side JavaScript has now become a first-class citizen in regards to its debugging and Intellisense support. Not only does the Intellisense give standard JavaScript keyword support, but it will automatically infer variable types and provide method, property and event support from any number of included script files. Similarly, the JavaScript debugging support now allows for the deep Watch and Locals support in JavaScript that you are accustomed to having in other languages in Visual Studio. And despite the dynamic nature of a lot of JavaScript, you will always be able to visualize and step into the JavaScript code, no matter where it is generated from. This is especially convenient when building ASP.NET AJAX applications&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-3457007695501065014?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3457007695501065014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/3457007695501065014'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/08/javascript-debugging-and-intellisense.html' title='JavaScript Debugging and Intellisense'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6395446425555759016</id><published>2009-08-08T04:39:00.000-07:00</published><updated>2009-08-08T04:41:32.141-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='New Features in ASP.NET 3.5'/><title type='text'>New Features in ASP.NET 3.5</title><content type='html'>ASP.NET AJAX&lt;br /&gt;With ASP.NET AJAX, developers can quickly create pages with sophisticated, responsive user interfaces and more efficient client-server communication by simply adding a few server controls to their pages. Previously an extension to the ASP.NET runtime, ASP.NET AJAX is now built into the platform and makes the complicated task of building cross-platform, standards based AJAX applications easy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6395446425555759016?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6395446425555759016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6395446425555759016'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/08/new-features-in-aspnet-35.html' title='New Features in ASP.NET 3.5'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-1702052625324432519</id><published>2009-08-05T01:34:00.000-07:00</published><updated>2009-08-05T01:35:38.732-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET SQL Server Registration Tool'/><title type='text'>ASP.NET SQL Server Registration Tool (Aspnet_regsql.exe)</title><content type='html'>The ASP.NET SQL Server Registration tool is used to create a Microsoft SQL Server database for use by the SQL Server providers in ASP.NET, or to add or remove options from an existing database.&lt;br /&gt;You can run Aspnet_regsql.exe without any command-line arguments to run a wizard that will walk you through specifying connection information for your SQL Server installation, and installing or removing the database elements for the membership, role management, profile, Web Parts personalization, and health monitoring features. (Setting session state and SQL cache dependency are not covered by the wizard.) You can also run Aspnet_regsql.exe as a command-line tool to specify database elements for individual features to add or remove, using the options listed in the table below&lt;br /&gt;&lt;br /&gt;Aspnet_regsql.exe  SQL Connection OptionsOption Description&lt;br /&gt;-? Prints Aspnet_regsql.exe Help text in the command window. -W Runs the tool in wizard mode. This is the default if no command-line arguments are specified.&lt;br /&gt;-C Specifies the connection string to the computer running SQL Server where the database will be installed, or is already installed. This option is not necessary if you specify only the server (-S) and login (-U and -P, or -E) information.&lt;br /&gt;-S Specifies the name of the computer running SQL Server where the database will be installed, or is already installed.&lt;br /&gt;-U The SQL Server user ID to log in with. This option also requires the password (-P) option. This option is not necessary if you are authenticating using Windows credentials (-E).&lt;br /&gt;-P The SQL Server password to log in with. This option also requires the user ID (-U) option. This option is not necessary if you are authenticating using Windows credentials (-E).&lt;br /&gt;-E Authenticates using the Windows credentials of the currently logged-on user.&lt;br /&gt;-sqlexportlonly Generates a SQL script file that can be used to add or remove the specified features. The specified actions are not performed.&lt;br /&gt;Application Services Options&lt;br /&gt;Adds support for one or more ASP.NET application services. Service identifiers can be specified together or separately. The following identifiers are used for ASP.NET application services:&lt;br /&gt;-A allmrpcw&lt;br /&gt;all - All services, including common tables and stored procedures shared by the services&lt;br /&gt;m - Membership&lt;br /&gt;r - Role Manager&lt;br /&gt;p - Profile&lt;br /&gt;c - Web Parts Personalization&lt;br /&gt;Removes support for one or more application services. Service identifiers can be specified together or separately. The following identifiers are used for ASP.NET application services:&lt;br /&gt;&lt;br /&gt;-R allmrpcw&lt;br /&gt;m - Membershipr - Role Managerp - Profilec - Web Parts Personalizationw - Web Events&lt;br /&gt;-Q Runs the tool in quiet mode and does not confirm before removing an application service.-d Specifies the name of the database to create or modify for use with application services. If the database is not specified, the default database name of "aspnetdb" is used.&lt;br /&gt;Note&lt;br /&gt;The database elements that are installed in the application services database will always be owned by the SQL Server database owner account (dbo). You do not need to be a system administrator for the computer running SQL Server to install the application services database. To install the application services database, a SQL Server login must be permitted to the db_ddladmin and dd_securityadmin roles for the SQL Server database.&lt;br /&gt; SQL Cache Dependency Options (for Microsoft SQL Server 7.0, Microsoft SQL Server 2000 and SQL Server 2005)&lt;br /&gt;Option Description&lt;br /&gt;-d Specifies the name of the database to use with SQL cache dependency. The database can optionally be specified using the connection string option, -C.&lt;br /&gt;-ed Enables a database for SQL cache dependency.-dd Disables a database for SQL cache dependency.-et Enables a table for SQL cache dependency. The -t option must also be included in the parameter string.-dt Disables a table for SQL cache dependency. The -t option must also be included in the parameter string.-t Specifies the table name to enable or disable for use with SQL cache dependency. This option must be used with the -et or -dt options.-lt Lists all tables enabled for SQL cache dependency.&lt;br /&gt;&lt;br /&gt;Session State Options&lt;br /&gt;Option Description -d Specifies the name of the database to store session state. This option must be used if -sstype is set to c-ssadd Adds support for SQL Server mode session state.-ssremove Removes support for SQL Server mode session state.&lt;br /&gt;Specifies the type of session state to us1:&lt;br /&gt;-sstype tpc&lt;br /&gt;t - Temporary. Session state data is stored in the SQL Server tempdb database. Stored procedures for managing session state are installed in the SQL Server ASPState database. Data is not persisted if you restart SQL. This is the default.&lt;br /&gt;p - Persisted. Both session state data and stored procedures are stored in the SQL Server ASPState database.&lt;br /&gt;c - Custom. Both session state data and stored procedures are stored in a custom database. The database name must be specified using the -d option.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-1702052625324432519?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1702052625324432519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1702052625324432519'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/08/aspnet-sql-server-registration-tool.html' title='ASP.NET SQL Server Registration Tool (Aspnet_regsql.exe)'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-4088506078583682986</id><published>2009-08-05T01:33:00.001-07:00</published><updated>2009-08-05T01:33:50.013-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enable or Disable'/><title type='text'>Enable or Disable Asp.net validation control using JavaScript</title><content type='html'>function EnableValidator()&lt;br /&gt;{&lt;br /&gt;var dropdownValue = document.getElementById("").value;&lt;br /&gt;if(dropdownValue == 2)&lt;br /&gt;{&lt;br /&gt;ValidatorEnable(document.getElementById(''),true);&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;ValidatorEnable(document.getElementById(''),false);&lt;br /&gt;}&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-4088506078583682986?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4088506078583682986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4088506078583682986'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/08/enable-or-disable-aspnet-validation.html' title='Enable or Disable Asp.net validation control using JavaScript'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-4597872492747474603</id><published>2009-08-05T01:29:00.000-07:00</published><updated>2009-08-05T01:32:43.185-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Increase the buffer limit'/><title type='text'>Increase the buffer limit</title><content type='html'>To increase the buffering limit, follow these steps:1.Click Start, click Run, type cmd, and then click OK.2.Type the following command, and then press ENTER:cd /d %systemdrive%\inetpub\adminscripts3.Type the following command, and then press ENTER:cscript.exe adsutil.vbs SET w3svc/aspbufferinglimit LimitSizeNote LimitSize represents the buffering limit size in bytes. For example, the number 67108864 sets the buffering limit size to 64 MB.To confirm that the buffer limit is set correctly, follow these steps:1.Click Start, click Run, type cmd, and then click OK.2.Type the following command, and then press ENTER:cd /d %systemdrive%\inetpub\adminscripts3.Type the following command, and then press ENTER:cscript.exe adsutil.vbs GET w3svc/aspbufferinglimit&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-4597872492747474603?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4597872492747474603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/4597872492747474603'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/08/increase-buffer-limit.html' title='Increase the buffer limit'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-1622065753339173793</id><published>2009-08-05T01:27:00.000-07:00</published><updated>2009-08-05T01:29:30.177-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Read Data From an Excel File'/><title type='text'>Read Data From an Excel File (.xlsx) in ASP.NET</title><content type='html'>In this article, we will see how to display data from an Excel spreadsheet using ASP.NET. We will connect to a Microsoft Excel workbook using the OLEDB.NET data provider, extract data and then display the data in a GridView. Let us get started.&lt;br /&gt;Step 1: Open Visual Studio &gt; File &gt; New &gt;Website &gt; Under Templates, click ASP.NET WebSite and choose either Visual C# or Visual Basic as the language. Select a location and click Ok.&lt;br /&gt;Step 2: We will create two excel sheets and add them to the project. One excel sheet will be created in Office 2003(.xls) and the other one using Office 2007(.xlsx). Add 4 columns called EID, EName, Age and City to the Sheet1. Also add some data into the columns. Once these excel files are created, add them to your project. To add them to the project, right click project &gt; Add Existing Item &gt; Add the two excel files.&lt;br /&gt;Step 3: We will now create a web.config file to store the connection string information. Right click project &gt; Add New Item &gt; Web.config. Add the following entries to the file&lt;br /&gt;&lt;br /&gt;As you can observe, the connection string for xlsx (Excel 2007) contains Microsoft.ACE.OLEDB.12.0 as the provider. This is the new Access database engine OLE DB driver and is also capable of reading Excel 2003.&lt;br /&gt;Step 4: Add a GridView to the Default.aspx page. We will extract data from the excel file and bind it to the GridView.&lt;br /&gt;Step 5: Let us now create a connection to the excel file and extract data from it. Before that add a reference toSystem.Data.OleDb;&lt;br /&gt;C#protected void Page_Load(object sender, EventArgs e){string connString = ConfigurationManager.ConnectionStrings["xls"].ConnectionString;// Create the connection objectOleDbConnection oledbConn = new OleDbConnection(connString);try{// Open connectionoledbConn.Open();&lt;br /&gt;// Create OleDbCommand object and select data from worksheet Sheet1OleDbCommand cmd = new OleDbCommand("SELECT * FROM [Sheet1$]", oledbConn);&lt;br /&gt;// Create new OleDbDataAdapterOleDbDataAdapter oleda = new OleDbDataAdapter();&lt;br /&gt;oleda.SelectCommand = cmd;&lt;br /&gt;// Create a DataSet which will hold the data extracted from the worksheet.DataSet ds = new DataSet();&lt;br /&gt;// Fill the DataSet from the data extracted from the worksheet.oleda.Fill(ds, "Employees");&lt;br /&gt;// Bind the data to the GridViewGridView1.DataSource = ds.Tables[0].DefaultView;GridView1.DataBind();}catch{}finally{// Close connectionoledbConn.Close();}&lt;br /&gt;}&lt;br /&gt;VB.NET&lt;br /&gt;Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)Dim connString As String = ConfigurationManager.ConnectionStrings("xls").ConnectionString' Create the connection objectDim oledbConn As OleDbConnection = New OleDbConnection(connString)Try' Open connectionoledbConn.Open()&lt;br /&gt;' Create OleDbCommand object and select data from worksheet Sheet1Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM [Sheet1$]", oledbConn)&lt;br /&gt;' Create new OleDbDataAdapterDim oleda As OleDbDataAdapter = New OleDbDataAdapter()&lt;br /&gt;oleda.SelectCommand = cmd&lt;br /&gt;' Create a DataSet which will hold the data extracted from the worksheet.Dim ds As DataSet = New DataSet()&lt;br /&gt;' Fill the DataSet from the data extracted from the worksheet.oleda.Fill(ds, "Employees")&lt;br /&gt;' Bind the data to the GridViewGridView1.DataSource = ds.Tables(0).DefaultViewGridView1.DataBind()CatchFinally' Close connectionoledbConn.Close()End Try&lt;br /&gt;End Sub&lt;br /&gt;Note:if you want to select a particular column from the excel sheet then you have to assign the name of the column at top of every column. Do not use the excel column name like A1, B1 etc...&lt;br /&gt;All set!! Run the application and see the data getting displayed in the GridView. If you want to target the Excel 2007 sheet, just change xls to xlsx in the ConfigurationManager.ConnectionString.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-1622065753339173793?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1622065753339173793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1622065753339173793'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/08/read-data-from-excel-file-xlsx-in.html' title='Read Data From an Excel File (.xlsx) in ASP.NET'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-7741063695728965872</id><published>2009-07-01T22:23:00.000-07:00</published><updated>2009-07-01T22:24:14.965-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Image In Database'/><title type='text'>How to display images in datagridview in windows application</title><content type='html'>How to display images in datagridview in windows application&lt;br /&gt;private string ImagePath = @"C:\Users\Public\Pictures\Sample Pictures\";&lt;br /&gt;private void bindGrid(){dataGridView1.DataSource = getTable();}private DataTable getTable(){string[] strImage;DataTable dt = null;try{System.Data.SqlClient.SqlConnection con;strImage = System.IO.Directory.GetFiles(ImagePath, "*.jpg");int ImageCount = strImage.Length;dt = new DataTable();dt.Columns.Add("Sno", typeof(int));dt.Columns.Add("Name", typeof(Image));DataRow dr = null;for (int i = 1; i &lt; ImageCount; i++){dr = dt.NewRow();dr[0] = i.ToString();dr[1] = Image.FromFile(strImage[i]);dt.Rows.Add(dr);dr = null;}return dt;}catch (Exception ex){throw ex;}finally{if (dt != null)dt = null;}}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-7741063695728965872?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7741063695728965872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7741063695728965872'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/07/how-to-display-images-in-datagridview.html' title='How to display images in datagridview in windows application'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6568276228623143574</id><published>2009-07-01T21:44:00.001-07:00</published><updated>2009-07-01T21:44:57.362-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Working in ListView Control'/><title type='text'>Working in ListView Control</title><content type='html'>ListView control is a new control added into ASP.NET 3.5. It enables you to display data in a format specified by you using templates and styles. It is useful for data in any repeating structure just like DataList and Repeater controls. However, unlike those controls ListView control enable you to edit, insert, delete, sort, paginate data without any extra effort&lt;br /&gt;Step 1stFirst create a new .aspx page and go to design view. Go to Data tab of the Toolbox and drag ListView control to your page. Now again go to the Data tab and drag LinqDataSource control to the page. Now configure the LinqDataSource control as described in Make sure that you have selected Enable Delete, Enable Insert and Enable Update checkbox from the smart tag of the LinqDataSource control as displayed in the picture below&lt;br /&gt;Step 2nd&lt;br /&gt;Now open the smart tag of the ListView control and choose the Data Source as the LinqDataSource as displayed in the picture below.&lt;br /&gt;Step 3rd&lt;br /&gt;Now click on Configure ListView … from the smart tag of the Listview. Select Tiled from Layout, Professional from Style and Enable Editing, Enable Inserting, Enable Deleting and Enable Paging from the Options as displayed in the picture below. In the Enable Paging dropdown you may select Next/Previous pager or Numeric pager&lt;br /&gt;Step 4th&lt;br /&gt;Now Save your files and press F5 to run. You should see an Insert form in your browsers. Just enter few records, try editing, deleting records. Once the number of records will exceed the PageSize of the DataPagers (that will be automatically inserted into ListView when you will select Enable Paging from the Configure ListView dialogue box) First, Previous, Next and Last button at the bottom will be enabled automatically.&lt;br /&gt;Hope you enjoyed playing with ListView and LinqDataSource control. Do let me know if you have any comments or suggestions. Thanks and Happy Coding !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6568276228623143574?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6568276228623143574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6568276228623143574'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/07/working-in-listview-control.html' title='Working in ListView Control'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-2005794845796702893</id><published>2009-07-01T21:43:00.002-07:00</published><updated>2009-07-01T21:44:15.824-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Object Oriented Programming'/><title type='text'>Object Oriented Programming</title><content type='html'>Object Oriented Programming&lt;br /&gt;An object-oriented programming language (also called an OO language) is one that allows or encourages, to some degree, object-oriented programming techniques such as encapsulation, inheritance, modularity, and polymorphism&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-2005794845796702893?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2005794845796702893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2005794845796702893'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/07/object-oriented-programming.html' title='Object Oriented Programming'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-225308659228611379</id><published>2009-07-01T21:43:00.001-07:00</published><updated>2009-07-01T21:43:52.785-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Step Of Classes'/><title type='text'>Steps of Collection Class</title><content type='html'>Steps of Collection Classclass Leaf {private int intAge;private String strName;&lt;br /&gt;// Default Constructor public Leaf() {}&lt;br /&gt;// gets and sets the age valuepublic int Age {get {return intAge;}set {intAge = value;}}&lt;br /&gt;// gets and sets the strName variablepublic string Name {get {return strName;}set {strName = value;}}}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-225308659228611379?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/225308659228611379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/225308659228611379'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/07/steps-of-collection-class.html' title='Steps of Collection Class'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-7127285178368177327</id><published>2009-07-01T21:39:00.000-07:00</published><updated>2009-07-01T21:43:15.276-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Working Nic'/><title type='text'>Working in Nic Edit Mask</title><content type='html'>Working in Nic Edit Mask function mask(str,textbox,loc,delim){var locs = loc.split(',');&lt;br /&gt;for (var i = 0; i &lt;= locs.length; i++){for (var k = 0; k &lt;= str.length; k++){if (k == locs[i]){if (str.substring(k, k+1) != delim){str = str.substring(0,k) + delim + str.substring(k,str.length)}}}}textbox.value = str}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-7127285178368177327?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7127285178368177327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7127285178368177327'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/07/working-in-nic-edit-mask.html' title='Working in Nic Edit Mask'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-5028820079792092244</id><published>2009-06-27T03:45:00.000-07:00</published><updated>2009-06-27T03:46:05.522-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Understanding Delegates'/><title type='text'>Understanding Delegates</title><content type='html'>In this article we will deal with Delegates in C#. I tried my best to keep this article very simple so that people could understand the basics of delegates.&lt;br /&gt;&lt;br /&gt;In simple words when you invoke something on Delegates it Delegates( means hand over) to some one. Delegates acts like a bridge between a method that is invoked and a person responding.&lt;br /&gt;&lt;br /&gt;Perhaps you can recall from high-school days that sound travels with Particles. Sound emitted at Point A(Source) reaches Point B (Receiver) with the help of medium. An example of a medium is an interface to travel sound from Point A to Point B. Similary, Delegates are interfaces to pass functionality from one object to another object. You guys may me wondering why I am teaching physics, medium was a perfect example for a Delegate.&lt;br /&gt;&lt;br /&gt;It looks like a method Overriding but Delegates concept is much more robust and powerfull than method overriding.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A delegate in C# allows you to pass methods of one class to objects of other classes that can call those methods. You can pass method Play (method name) in Class A, wrapped in a delegate, to class B and Class B will be able to call method Play in class A.&lt;br /&gt;Delegates in C# are objects which points towards a function which matches its signature. Delegates are reference type used to encapsulate a method with a specific signature.&lt;br /&gt;A delegate instance encapsulates a static or an instance method. Delegates are roughly similar to function pointers in C++; however, delegates are type-safe and secure.&lt;br /&gt;You can pass both static and instance methods.&lt;br /&gt;A delegate represents a class.&lt;br /&gt;A delegate is type-safe.&lt;br /&gt;You can combine multiple delegates into a single delegate.&lt;br /&gt;You can use delegates both for static and instance methods.&lt;br /&gt;You can define delegates inside or outside of classes.&lt;br /&gt;You can use delegates in asynchronous-style programming.&lt;br /&gt;Delegates are often used in event-based programming, such as publish/subscribe.&lt;br /&gt;The delegate declaration takes the form:&lt;br /&gt;&lt;br /&gt;[attributes] [modifiers] delegate result-type identifier ([formal-parameters]);attributes (Optional)The allowed modifiers are new and the four access modifiers. result-typeThe result type, which matches the return type of the method.&lt;br /&gt;&lt;br /&gt;identifierThe delegate name.&lt;br /&gt;&lt;br /&gt;formal-parameters (Optional)Parameter list. If a parameter is a pointer, the delegate must be declared with the unsafe modifier. Delegates are the basis for events.&lt;br /&gt;&lt;br /&gt;Functionality of Delegates can be accomplished in four steps.&lt;br /&gt;&lt;br /&gt;1 Declare a delegate object with a signature that exactly matches the method signature that you are trying to encapsulate.&lt;br /&gt;&lt;br /&gt;2. Define all the methods whose signatures match the signature of the delegate object that you have defined in step 1.&lt;br /&gt;&lt;br /&gt;3. Create delegate object and plug in the methods that you want to encapsulate.&lt;br /&gt;&lt;br /&gt;4. Call the encapsulated methods through the delegate object.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-5028820079792092244?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5028820079792092244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/5028820079792092244'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/06/understanding-delegates.html' title='Understanding Delegates'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-1991024636450643433</id><published>2009-06-27T03:42:00.000-07:00</published><updated>2009-06-27T03:43:28.876-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Posts'/><title type='text'>Gathering all my posts in one place</title><content type='html'>hey guys i thought i should gather all my posts to one place so from now on i'll post everything here and also trying to recollect the things that i posted to different websites&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-1991024636450643433?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1991024636450643433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/1991024636450643433'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/06/gathering-all-my-posts-in-one-place.html' title='Gathering all my posts in one place'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-7922505164307388735</id><published>2009-06-23T22:15:00.001-07:00</published><updated>2009-06-23T22:15:56.036-07:00</updated><title type='text'>Globalization and Localization</title><content type='html'>There are many tutorials which explain you about localization / globalization concept. In this article I just tryed to explain every single point from the developer/programmer point of view.Let me brief you about Resource files.&lt;br /&gt;"aspx.resx" (resource) files: Resource files are xml files, which stores string, file paths (image), which are required to translate in to other languages.&lt;br /&gt;"App_GlobalResources": You can keep files which need to be accessed throughout the application. So in our application I have kept "TextDirect" &amp;amp; "EmailFormat" which required to access in maximum pages. In short common strings.&lt;br /&gt;"App_LocalResources": Local resources are associated with the single web pages, In this folder I have kept lables and strings which are specific to particualt aspx page it self.Note: Since I am showing this in english and arabic. So every aspx page will have two different resource files.For Example:I have "Registration.aspx" page, for this page I had made files as follows:&lt;br /&gt;Registration.aspx.ar.resx (for arabic content to be stored).&lt;br /&gt;Registration.aspx.resx (for english content to be stored).The above files are local, now letus consider files which can be accessed globally as.&lt;br /&gt;MulResource.resx&lt;br /&gt;MulResource.ar.resxThese files are used for storing "EmailFormat" &amp;amp; "TextDirection" which is common for most of the pages.To create a resource file manually:Make sure that your Web site has a folder in which to store the resource file by doing one of the following:If you are creating a global resource file, you must have a folder named App_GlobalResources. To create the folder, in Solution Explorer, right-click the name of your Web site, click Add Folder, and then click App_GlobalResources Folder. There can only be one of these folders in an application, and it must be located at the root of the application.If you are creating a local resource file, you must have a folder named App_LocalResources. To create the folder, in Solution Explorer, right-click the name of your Web site, click Add Folder, and then click App_LocalResources Folder. There can be many of these folders in an application, and they can be located at any level in the application.To create a resource file, right-click the App_GlobalResources or App_LocalResources folder, and then click Add New Item.Global resource files must be in the App_GlobalResources folder. If you try to create a .resx file outside of this folder, Visual Web Developer prompts you to create it in the folder.Glbalization:It is process by which you can develope application / program so that it can be used by the various regions/cultures. Let us consider that you have made a product called as "Shopping Cart" and you want to sell it to different regions, since it is online say arabic people should able to read the info in Arabic &amp;amp; English people should read it in English. To achive this we have to use something called as localizationLocalization:It is process of using specific regional/cultural info so that your program uses local language.Culture:Every region has different language and language is depend on different geographical location.For example: "ar-EG" ar is the code for arabic language &amp;amp; EG means this language is spoken in Egypt country/region so "ar-EG" sets for Arabic-Egyption. Similarly "en-US" stands for English-United State.Note: In IE the user can change the culture by going to Internet Options-&gt;General-&gt;Languages. For this to work, we need to set both the Culture and the UICulture to auto and enableClientBasedCulture = trueSetting Page Culture:You can set the page culture by two ways:&lt;br /&gt;&lt;globalization enableclientbasedculture="true" culture="ar-EG" uiculture="ar-EG"&gt;&lt;br /&gt;Setting culture by programmatically.protected override void InitializeCulture(){//string culture = Request.Form["ddSelLanguage"];string culture = Session["Language"].ToString();if (string.IsNullOrEmpty(culture))culture = "Auto";//Use thisUICulture = culture;Culture = culture;//OR Thisif (culture != "Auto"){System.Globalization.CultureInfo MyCltr = new System.Globalization.CultureInfo(culture);System.Threading.Thread.CurrentThread.CurrentCulture = MyCltr;System.Threading.Thread.CurrentThread.CurrentUICulture = MyCltr;}base.InitializeCulture();} Code:In "Default.aspx" file I have a drop-down by which user can select specific language, i have Arabic and English languages and by default "Auto" is set. I have used Auto-postback property of the drop-down &amp;amp; even you can make use of submit button for the same.Once you got the selected language you can hold that value in the session as explained in the above code.&lt;br /&gt;Session["Language"] = Request.Form["ddSelLanguage"];While overriding the InitializeCulture() method you can assign this to the culture variable.In this application i have tryed to explain with two different forms:&lt;br /&gt;User registration form.&lt;br /&gt;Send Email (In which I have also explained that how can we make use of built-in asp.net validation controls).And on both the pages i have shown as we can switch on different pages by making use of .Now let us have a look at "Registration.aspx" page code.&lt;br /&gt;@ Page Language="C#" AutoEventWireup="true" CodeFile="Registration.aspx.cs" Inherits="Registration" meta:resourcekey="RegResource" %&gt;This code is preety much similar with the code which get generated normally for any aspx page, only difference is that:meta:resourcekey="RegResource" Here I want to explain in little depth, the concept of storing values like key-value pair and accessing values in the aspx page. Forexample if you refer to "Registration.aspx.resx" &amp;amp; "Registration.aspx.ar.resx" pages you will notice thatA resourceKey "RegResource.Title" has value "Registration" similarly in the other language. "RegResource.Title" has value, which is directly accessed as shown above.&lt;html id="Html1" runat="server" dir="'$"&gt;' xmlns="http://www.w3.org/1999/xhtml"&gt;In the above tag it should have runat="server" attribute or it will give you error use literal runat="server" .As i have already explained you about the global &amp;amp; local resources, in the above we have used dir='$ Resources:MulResource, TextDirection %&gt;' attribute, now let us go little in dept for this, many of you must be aware of "DIR" attribute, it is nothing but the direction or the text in the page by default it is LTR (left to write) to have arabic type of appearance of the page we have to use it as "RTL". In short this act as common for all the pages either LTR or RTL so i have two global resource files as:&lt;br /&gt;MulResource.resx&lt;br /&gt;MulResource.ar.resxIn which you will find "TextDirection" ResourceKey and it's value associated with it, which is used in the above code.I think so far so clear?Now let us see how we can access the value of different labels in our project.For example: On the registratio page i have label called as "lblFirstName" and it's values are stored in the corrosponding resource files viz.&lt;br /&gt;Registration.aspx.resx&lt;br /&gt;Registration.aspx.ar.resxHere is code to make use of the same.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-7922505164307388735?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7922505164307388735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/7922505164307388735'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/06/globalization-and-localization.html' title='Globalization and Localization'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-6255338205775986898</id><published>2009-06-23T04:30:00.000-07:00</published><updated>2009-06-23T04:33:13.035-07:00</updated><title type='text'>ASP.NET</title><content type='html'>&lt;strong&gt;Working in Nic&lt;br /&gt;&lt;/strong&gt;Working in Nic Edit Maskfunction mask(str,textbox,loc,delim){var locs = loc.split(',');for (var i = 0; i &lt;= locs.length; i++){for (var k = 0; k &lt;= str.length; k++){if (k == locs[i]){if (str.substring(k, k+1) != delim){str = str.substring(0,k) + delim + str.substring(k,str.length)}}}}textbox.value = str}&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Steps of Collection Class&lt;/strong&gt;&lt;br /&gt;class Leaf {private int intAge;private String strName;// Default Constructor public Leaf() {}// gets and sets the age valuepublic int Age {get {return intAge;}set {intAge = value;}}// gets and sets the strName variablepublic string Name {get {return strName;}set {strName = value;}}}&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Object Oriented Programming&lt;/strong&gt;&lt;br /&gt;An object-oriented programming language (also called an OO language) is one that allows or encourages, to some degree, object-oriented programming techniques such as encapsulation, inheritance, modularity, and polymorphism&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Working in ListView Control&lt;/strong&gt;&lt;br /&gt;ListView control is a new control added into ASP.NET 3.5. It enables you to display data in a format specified by you using templates and styles. It is useful for data in any repeating structure just like DataList and Repeater controls. However, unlike those controls ListView control enable you to edit, insert, delete, sort, paginate data without any extra effortStep 1stFirst create a new .aspx page and go to design view. Go to Data tab of the Toolbox and drag ListView control to your page. Now again go to the Data tab and drag LinqDataSource control to the page. Now configure the LinqDataSource control as described in Make sure that you have selected Enable Delete, Enable Insert and Enable Update checkbox from the smart tag of the LinqDataSource control as displayed in the picture belowStep 2ndNow open the smart tag of the ListView control and choose the Data Source as the LinqDataSource as displayed in the picture below.Step 3rdNow click on Configure ListView … from the smart tag of the Listview. Select Tiled from Layout, Professional from Style and Enable Editing, Enable Inserting, Enable Deleting and Enable Paging from the Options as displayed in the picture below. In the Enable Paging dropdown you may select Next/Previous pager or Numeric pagerStep 4thNow Save your files and press F5 to run. You should see an Insert form in your browsers. Just enter few records, try editing, deleting records. Once the number of records will exceed the PageSize of the DataPagers (that will be automatically inserted into ListView when you will select Enable Paging from the Configure ListView dialogue box) First, Previous, Next and Last button at the bottom will be enabled automatically.Hope you enjoyed playing with ListView and LinqDataSource control. Do let me know if you have any comments or suggestions. Thanks and Happy Coding !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-6255338205775986898?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6255338205775986898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/6255338205775986898'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/06/aspnet.html' title='ASP.NET'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-3902750071711505426.post-2884815874895439870</id><published>2009-06-23T04:29:00.000-07:00</published><updated>2009-06-23T04:30:20.422-07:00</updated><title type='text'>Hello</title><content type='html'>Hello&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3902750071711505426-2884815874895439870?l=azaan-slk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2884815874895439870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3902750071711505426/posts/default/2884815874895439870'/><link rel='alternate' type='text/html' href='http://azaan-slk.blogspot.com/2009/06/hello.html' title='Hello'/><author><name>Azaan Slk</name><uri>http://www.blogger.com/profile/13233497055296925872</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_PZzesciZvb4/SkDAXwDPMHI/AAAAAAAAABk/Npwti_4zl6w/S220/Sajjad6.jpg'/></author></entry></feed>
