<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">K. G. Sreeju Nair</title><subtitle type="html">Knowledge has to be improved, challenged, and increased constantly, or it vanishes.</subtitle><id>http://weblogs.asp.net/sreejukg/atom.aspx</id><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/default.aspx" /><link rel="self" type="application/atom+xml" href="http://weblogs.asp.net/sreejukg/atom.aspx" /><generator uri="http://communityserver.org" version="3.0.20510.895">Community Server</generator><updated>2012-04-07T17:51:00Z</updated><entry><title>Semantic Tags in HTML 5</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2013/02/24/semantic-tags-in-html-5.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2013/02/24/semantic-tags-in-html-5.aspx</id><published>2013-02-24T13:14:19Z</published><updated>2013-02-24T13:14:19Z</updated><content type="html">&lt;p&gt;In December 2012, W3C has published the complete definition of HTML 5 specification. Already most of the browser vendors have implemented support for HTML 5 and you can expect future versions of browsers will have complete support of the specification. In the introduction of HTML 5, web developers faced some challenges to support their markup in non-HTML 5 browsers. This added some cost to web development. Now web developers can expect better browser support and all the browser vendors already announced their commitment to this standard. &lt;/p&gt;  &lt;p&gt;In this article I am going to mention about the semantic tags introduced in HTML 5. The introduction of semantic tags is to make your markup meaningful. When an HTML document is presented to people, they are seeing how the document is presented in the browser. So for people, Markup is not that important. So definitely adding meaning for markup doesn’t meant for those who are looking for the presentation of the document. &lt;/p&gt;  &lt;p&gt;But there are other couple of types of users is there who are interested in your markup. The first one, is the search engine crawlers. They need to identify what is the content of the indexed page and what is the related content etc. Another type of users is those who integrate the markup in their applications (can be a web application that consolidate content from various sites or standalone applications that aggregates data from various web). They will be interested in meaningful content in markup. &lt;/p&gt;  &lt;p&gt;Prior to HTML 5, there was no single mechanism that allows this. Web developers used to give meaningful id/class attribute to the markup. This helped them grouping the content across their applications but the terminology used differs from developer to developer.&lt;/p&gt;  &lt;p&gt;For e.g. I used the following markup for my titles across my applications&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;lt;div id=”Title”&amp;gt;My title content&amp;lt;/div&amp;gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I saw lots of developers using the terms such as header, titles or their own names. This makes it impossible for the crawlers/indexers to identify the title of the page. So making some standard semantic tags will solve this. With HTML 5 W3C decided to give a common naming definitions for markup, those are named as sematic tags in HTML 5. I am going to list most of them as a tabular format for developers to have a quick look at them. (I have added the tags with a brief explanation by W3C and corresponding url and some helpful tips.)&lt;/p&gt;  &lt;p&gt;   &lt;table border="1" cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;Tag&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;Brief explanation&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;article&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The article element represents a section of content that forms an independent part of a document or site; for example, a magazine or newspaper article, or a blog entry.&lt;/p&gt;            &lt;p&gt;Refer &lt;a href="http://www.w3.org/TR/html5/sections.html#the-article-element"&gt;http://www.w3.org/TR/html5/sections.html#the-article-element&lt;/a&gt;&lt;/p&gt;            &lt;p&gt;An article refers to the main content of a page. An article can have header, footer and even contains multiple article sub elements. E.g. a blog post, a news entry etc.&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;section&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The section element represents a generic section of a document or application. &lt;/p&gt;            &lt;p&gt;Refer &lt;a href="http://www.w3.org/TR/html5/sections.html#the-section-element"&gt;http://www.w3.org/TR/html5/sections.html#the-section-element&lt;/a&gt;&lt;/p&gt;            &lt;p&gt;Basically section element is meant for grouping content. For e.g. if you have multiple articles related to a subject in a page, it will give more meaning by including them in a section element. Though section element definition looks similar to article, it is recommended to use article element to syndicate the content. If you use section element, it will be easy to extract the document outline from the section elements. &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;nav&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The nav element represents a section of a page that links to other pages or to parts within the page: a section with navigation links.&lt;/p&gt;            &lt;p&gt;Refer: &lt;a href="http://www.w3.org/TR/html5/sections.html#the-nav-element"&gt;http://www.w3.org/TR/html5/sections.html#the-nav-element&lt;/a&gt;&lt;/p&gt;            &lt;p&gt;If you have navigation elements in your page, such as menus or quick links, it is recommended to place them inside the nav element. &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;aside&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The aside element represents a section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content.&lt;/p&gt;            &lt;p&gt;Refer: &lt;a href="http://www.w3.org/TR/html5/sections.html#the-aside-element"&gt;http://www.w3.org/TR/html5/sections.html#the-aside-element&lt;/a&gt;&lt;/p&gt;            &lt;p&gt;When you use aside inside an article, aside content to be related to the article and when used outside, the content to be related to the site. A typical use of aside is to place related content for an article such as sidebar content. &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;hgroup&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The hgroup element represents the heading of a section. The element is used to group a set of h1–h6 elements when the heading has multiple levels, such as subheadings, alternative titles, or taglines.&lt;/p&gt;            &lt;p&gt;Refer: &lt;a href="http://www.w3.org/TR/html5/sections.html#the-hgroup-element"&gt;http://www.w3.org/TR/html5/sections.html#the-hgroup-element&lt;/a&gt;&lt;/p&gt;            &lt;p&gt;hgroup element is used to group multiple head tags (h1 – h6). hgroup should only contain h1 – h6 as child elements. It is a good idea to group multiple headings such as main heading, sub heading etc. with a hgroup element&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;header&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The header element represents a group of introductory or navigational aids.&lt;/p&gt;            &lt;p&gt;Refer: &lt;a href="http://www.w3.org/TR/html5/sections.html#the-header-element"&gt;http://www.w3.org/TR/html5/sections.html#the-header-element&lt;/a&gt;&lt;/p&gt;            &lt;p&gt;The header element should be used to wrap the heading content such as table of contents, hgroup, heading tags etc. Unlike hgroup (that supports only h1-h6 as childs) header can contains other HTML elements as children elements&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;Footer&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The footer element represents footer for its nearest ancestor sectioning content or sectioning root element. A footer typically contains information about its section such as who wrote it, links to related documents, copyright data, and the like.&lt;/p&gt;            &lt;p&gt;Refer: &lt;a href="http://www.w3.org/TR/html5/sections.html#the-footer-element"&gt;http://www.w3.org/TR/html5/sections.html#the-footer-element&lt;/a&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="103"&gt;           &lt;p&gt;address&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="535"&gt;           &lt;p&gt;The address element represents the contact information for its nearest article or body element ancestor. If that is the body element, then the contact information applies to the document as a whole.&lt;/p&gt;            &lt;p&gt;Refer: &lt;a href="http://www.w3.org/TR/html5/sections.html#the-address-element"&gt;http://www.w3.org/TR/html5/sections.html#the-address-element&lt;/a&gt;&lt;/p&gt;            &lt;p&gt;Be noted that address element is not created for postal addresses. You can place the address information inside body to specify the contact information for the page, and place inside article to specify the contact information for the particular article. &lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p&gt;As a web developer you should ensure that your markup is following the HTML 5 recommendations. You can expect search engines to implement algorithms based on HTML 5 to index the content. Making the site in HTML 5 ensures your content can be indexed by search engines properly. In addition to this, you can consider every web page as a structured content that can be syndicated to various applications. Adding sematic tags to HTML means you have self-described document available on the web that can be acted as a database for other applications that utilize your content. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=9907527" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="Web Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Web+Development/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term="HTML 5" scheme="http://weblogs.asp.net/sreejukg/archive/tags/HTML+5/default.aspx" /><category term="CSS3" scheme="http://weblogs.asp.net/sreejukg/archive/tags/CSS3/default.aspx" /></entry><entry><title>Apply language packs to SharePoint 2013</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2013/01/08/apply-language-packs-to-sharepoint-2013.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2013/01/08/apply-language-packs-to-sharepoint-2013.aspx</id><published>2013-01-08T10:16:59Z</published><updated>2013-01-08T10:16:59Z</updated><content type="html">&lt;p&gt;Any collaboration platform that allows teams to work together should have the user interface available in multiple languages. As a market leader in portals and collaboration technology, it is one of the important but easiest features to configure inside SharePoint 2013. Now a days it is common in enterprises to have teams mixed with people speaks different languages. Getting the menus and commands translated to user’s local language will increase the productivity for the user. In this walkthrough I am going to demonstrate how you can apply language pack in SharePoint 2013. &lt;/p&gt;  &lt;p&gt;For the purpose of this walkthrough, I have SharePoint 2013 installed in standalone mode. By default the language is English. Now I am going to apply the Arabic language pack to my SharePoint farm. &lt;/p&gt;  &lt;p&gt;Download language packs&lt;/p&gt;  &lt;p&gt;I was able to find the language pack from the MSDN subscription. If you are facing difficulties to locate the language pack, remember to add the specified language to your search filter.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_5486A07D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_76425341.jpg" width="244" height="132" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;All language packs downloads with the same file name. So if you download multiple language packs, make sure you download it to different folders to avoid overwriting files.&lt;/p&gt;  &lt;p&gt;Once you download the ISO file, run the setup.exe. Since it is Arabic language, the interface is in Arabic. I have a second opinion here. The administrator who installs language pack may not be familiar with the corresponding language, so an option to display the details in English is better I think. Starting the setup from the installation media will bring the following dialog.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_5B95B728.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_2B8B65A7.png" width="244" height="201" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;As usual you need to select the check box for “I agree to license terms” and then click on the continue button. Once you click continue, the installation starts immediately.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;     &lt;br /&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_3740ACD9.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_6787818F.png" width="244" height="199" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once the installation succeeds, you will find the below screen.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_5F23AC38.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image005" border="0" alt="clip_image005" src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_127F6F95.png" width="244" height="200" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The checkbox here takes your permission to run products configuration wizard. You need to run this in order to apply changes to the SharePoint farm. Click on the finish button will start the configuration wizard. The products configuration wizard will be in your default language, so for me it is in English. Now it is going to update your SharePoint farm. You are not supposed to enter or select any option here, just click some next buttons.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_5104BD3B.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_48A0E7E4.png" width="244" height="211" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You need to click Yes on the warning dialog appears. It just alerts you saying that IIS will be stopped during the update process. The installation starts immediately.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_2C437FF7.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image007" border="0" alt="clip_image007" src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_099F417C.png" width="244" height="211" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If everything goes ok, you will see the following success message.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_19CB0975.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image008" border="0" alt="clip_image008" src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_37C91769.png" width="244" height="211" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now your SharePoint farm can use the installed language. To use the installed language with a site, go to the Site Settings page. Instead of Site Actions menu in SharePoint 2010, you have a settings image that brings the Site Actions menu in SharePoint 2013.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_11F2F106.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image009" border="0" alt="clip_image009" src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_098F1BAF.png" width="244" height="196" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now in the Site Settings page, under Site Administration, you will find Language Settings.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_7A0C09DF.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image010" border="0" alt="clip_image010" src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_77EF0B16.png" width="227" height="244" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In the language settings, you see the default language (which will be decided during the site creation step and you cannot change this later), and alternative languages that site can utilize. In my case I can see the Arabic there. Select the languages from the list and click OK. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_360825C8.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image011" border="0" alt="clip_image011" src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_6963E924.png" width="241" height="244" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once you applied the changes, now your site can deliver the UI in the selected languages. In SharePoint 2010, there was a language selection available for users to select from. The following is a screenshot of SharePoint 2010 language selection options.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image013_2BF3849D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image013" border="0" alt="clip_image013" src="http://weblogs.asp.net/blogs/sreejukg/clip_image013_thumb_65961E87.jpg" width="244" height="137" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If you create a site in SharePoint 2013, in the template selection you have an option to select the experience version (either 2010 or 2013). If you select your site as 2010 experience version, you will see the same option for selecting the language. &lt;/p&gt;  &lt;p&gt;In 2013, things have changed a bit. The page will render the specified language based on 2 things&lt;/p&gt;  &lt;h4&gt;The browser settings.&lt;/h4&gt;  &lt;p&gt;I have a site with default language as English. I also enabled the Arabic language from the site settings page for this site. In my browser, I have default language as English. In this case site will be displayed in English&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image015_1C23C9CC.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image015" border="0" alt="clip_image015" src="http://weblogs.asp.net/blogs/sreejukg/clip_image015_thumb_41AD472D.jpg" width="244" height="47" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I have added Arabic language to the IE language settings.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image016_204DA191.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image016" border="0" alt="clip_image016" src="http://weblogs.asp.net/blogs/sreejukg/clip_image016_thumb_711BB5F9.png" width="225" height="244" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Since Arabic has first preference, the site will render in Arabic. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image018_0F19C3EE.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image018" border="0" alt="clip_image018" src="http://weblogs.asp.net/blogs/sreejukg/clip_image018_thumb_46EC0811.jpg" width="244" height="69" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Changing the language from browser will have immediate effect in the site appearance. &lt;/p&gt;  &lt;h4&gt;Based on the language preferences in user’s profile &lt;/h4&gt;  &lt;p&gt;With BYOD, people are using multiple devices at work. So instead of changing settings in every browser, user can update the language preference in the user’s settings. To update the users settings, from the user menu, select About Me&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image019_1ACF0B20.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image019" border="0" alt="clip_image019" src="http://weblogs.asp.net/blogs/sreejukg/clip_image019_thumb_7DE5E64A.png" width="244" height="84" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You will be redirected to your personal page.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image021_6AC4B99E.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image021" border="0" alt="clip_image021" src="http://weblogs.asp.net/blogs/sreejukg/clip_image021_thumb_5084507A.jpg" width="244" height="74" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on Edit link, you will be redirected to update profile section.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image023_61887E5D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image023" border="0" alt="clip_image023" src="http://weblogs.asp.net/blogs/sreejukg/clip_image023_thumb_200DCC04.jpg" width="244" height="178" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on the … (three dots) to see the language and region menu&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image024_7EAE2667.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image024" border="0" alt="clip_image024" src="http://weblogs.asp.net/blogs/sreejukg/clip_image024_thumb_3D33740E.png" width="244" height="93" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on the language and Region link will take you to the page where you can set your preferences. You can simply add languages to this and decide the order here.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image025_2A124762.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image025" border="0" alt="clip_image025" src="http://weblogs.asp.net/blogs/sreejukg/clip_image025_thumb_3AAA4250.png" width="244" height="126" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I added the languages as below.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image026_75254224.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image026" border="0" alt="clip_image026" src="http://weblogs.asp.net/blogs/sreejukg/clip_image026_thumb_57CFEA5A.png" width="244" height="82" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you will see the site is rendered on your preferred language, as per my settings it is Arabic. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image028_7C8101D1.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image028" border="0" alt="clip_image028" src="http://weblogs.asp.net/blogs/sreejukg/clip_image028_thumb_01833F81.jpg" width="244" height="60" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The settings in your profile are having highest priority. If you set the preferences in your profile and the UI will be rendered in the preferred language if the site is available in that language. Configuring multiple language options is easy in SharePoint.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=9716158" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="Sharepoint" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Sharepoint/default.aspx" /><category term="SharePoint 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/SharePoint+2010/default.aspx" /><category term="SharePoint 2013" scheme="http://weblogs.asp.net/sreejukg/archive/tags/SharePoint+2013/default.aspx" /><category term="Languages" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Languages/default.aspx" /></entry><entry><title>Get certified for free, Microsoft offers free certification exam (70-480)</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2013/01/03/get-certified-for-free-microsoft-offers-free-certification-exam-70-480.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2013/01/03/get-certified-for-free-microsoft-offers-free-certification-exam-70-480.aspx</id><published>2013-01-03T10:34:00Z</published><updated>2013-01-03T10:34:00Z</updated><content type="html">&lt;p&gt;Recently I got an email from Microsoft regarding the free exam voucher that can be used for exam 70-480 : Programming in HTML 5 with JavaScript and CSS3. This is a great opportunity for developers to get certified without spending any money. Awesome!&lt;/p&gt;  &lt;p&gt;With the release of Windows 8, Microsoft has announced the capability to develop windows store apps using HTML5, JavaScript and CSS3. So now developers can be certified in these technologies to showcase your expertise. I think this is the only certification available for HTML 5.&lt;/p&gt;  &lt;h3&gt;Free Voucher Code&lt;/h3&gt;  &lt;blockquote&gt;   &lt;p&gt;You can use the free voucher code &lt;b&gt;HTMLMPN &lt;/b&gt;or&lt;b&gt; HTMLJMP &lt;/b&gt;as the registration code.&lt;/p&gt;    &lt;p&gt;Hurry! The registration code has some limit on the number of registrations.. So register before the count ends.&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;How To Register&lt;/h3&gt;  &lt;p&gt;To register for the exam go to the below URL&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://www.register.prometric.com" mce_href="http://www.register.prometric.com"&gt;www.register.prometric.com&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;To successfully schedule an exam using the Prometric site, you need to register an account. Registration is free. Once you registered, go to the above url.&lt;/p&gt;  &lt;p&gt;You will find Schedule an exam link, click on the Schedule an exam link.&lt;/p&gt;  &lt;blockquote&gt;&lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_516AF59F.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_516AF59F.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_22C4C6F0.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" alt="clip_image002" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_22C4C6F0.jpg" border="0" height="92" width="244"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;  &lt;p&gt;First you need to select your country and then locate &lt;b&gt;Microsoft&lt;/b&gt; as the client and select the &lt;b&gt;Program&lt;/b&gt;.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_2C3D8566.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_2C3D8566.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_1F632F48.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image003" alt="clip_image003" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_1F632F48.png" border="0" height="179" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In the next step you need to select the 70-480 as the exam and choose a currency. It will show the amount for the exam as per your country. Don’t worry, you are not going to pay anything. Just click next button.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_68A5D443.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_68A5D443.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_1EC74C93.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image005" alt="clip_image005" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_1EC74C93.jpg" border="0" height="131" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you will see all the test centers available in the location you selected. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_1D1680BF.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_1D1680BF.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_3057375E.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image006" alt="clip_image006" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_3057375E.png" border="0" height="244" width="175"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once you find the test center of your choice click on the associated Schedule appointment link. You need to have a Prometric account to continue from here, so make sure that you register one and logged in with the account. &lt;/p&gt;  &lt;p&gt;Once you select the Schedule appointment link, it will show you a calendar, you can choose any available date and time of your choice.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_0E8B5ECD.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_0E8B5ECD.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_0C6E6004.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image008" alt="clip_image008" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_0C6E6004.jpg" border="0" height="191" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you can see the Enter Promo Code/Voucher number. Enter HTMLMPN here.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_722DF6DF.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_722DF6DF.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_62AAE510.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image009" alt="clip_image009" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_62AAE510.png" border="0" height="107" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once you click validate, you will redirect to the previous page and will show you your balance amount as 0.0&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_19A4C34A.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_19A4C34A.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_589643E5.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image010" alt="clip_image010" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_589643E5.png" border="0" height="95" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now in the bottom of the page just click on the Agree button and the registration will be over. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_255A0A7C.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_255A0A7C.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_3D1141E2.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image012" alt="clip_image012" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_3D1141E2.jpg" border="0" height="75" width="244"&gt;&lt;/a&gt;. &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;p&gt;Once you are done, you need to prepare for the Exam. right? There are lot of resources available in the web. But there are some specifically for this exam again freely distributed by Microsoft, great! isn’t it? You can find it from channel 9 or from MVA (Microsoft Virtual Academy). Refer the url below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://channel9.msdn.com/Series/MVA-Jump-Start/Developing-HTML5-Apps-Jump-Start-01a-HTML5-Semantic-Structure-Part-1" title="http://channel9.msdn.com/Series/MVA-Jump-Start/Developing-HTML5-Apps-Jump-Start-01a-HTML5-Semantic-Structure-Part-1" mce_href="http://channel9.msdn.com/Series/MVA-Jump-Start/Developing-HTML5-Apps-Jump-Start-01a-HTML5-Semantic-Structure-Part-1"&gt;http://channel9.msdn.com/Series/MVA-Jump-Start/Developing-HTML5-Apps-Jump-Start-01a-HTML5-Semantic-Structure-Part-1&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It is a great opportunity for developers to get certified in HTML 5. Hope you will enjoy it and all the very best for your success.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=9692631" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="ASP.Net" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net/default.aspx" /><category term="HTML 5" scheme="http://weblogs.asp.net/sreejukg/archive/tags/HTML+5/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/sreejukg/archive/tags/.NET/default.aspx" /><category term="JavaScript" scheme="http://weblogs.asp.net/sreejukg/archive/tags/JavaScript/default.aspx" /><category term="Microsoft Exam" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Microsoft+Exam/default.aspx" /><category term="CSS3" scheme="http://weblogs.asp.net/sreejukg/archive/tags/CSS3/default.aspx" /><category term="Certification" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Certification/default.aspx" /></entry><entry><title>Installing SharePoint 2013 on Windows 2012- standalone installation</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/11/27/installing-sharepoint-2013-on-windows-2012-standalone-installation.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/11/27/installing-sharepoint-2013-on-windows-2012-standalone-installation.aspx</id><published>2012-11-27T08:15:43Z</published><updated>2012-11-27T08:15:43Z</updated><content type="html">&lt;p&gt;In this article, I am going to share my experience while installing SharePoint 2013 on Windows 2012. This was the first time I tried SharePoint 2013. So I thought sharing the same will benefit somebody who would like to install SharePoint 2013 as a standalone installation. Standalone installation is meant for evaluation/development purposes. For production environments, you need to follow the best practices and create required service accounts. Microsoft has published the deployment guide for SharePoint 2013, you can download this from the below link.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=30384"&gt;http://www.microsoft.com/en-us/download/details.aspx?id=30384&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Since this is for development environment, I am not going to create any service account, I logged in to Windows 2012 as an administrator and just placed my installation DVD on the drive. When I run the setup from the DVD, the below splash screen appears.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_57B603A9.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_54546C01.jpg" width="244" height="183" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This reflects the new UI changes happening with all Microsoft based applications; the interface matches the metro style applications (Windows 8 style). As you can see the options are same as that of the SharePoint 2010 installation screen. Click on the “install software prerequisites” link to get all the prerequisites get installed. You need a valid internet connection to do this. Clicking on the install software prerequisites will bring the following dialog. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_6C0BA367.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_57A5DDDC.jpg" width="244" height="186" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click Next, you will see the terms and conditions. Select I accept check box and click Next.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_0F782200.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_2656F37C.jpg" width="244" height="185" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The installation will start immediately. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_78F55DAB.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image008" border="0" alt="clip_image008" src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_7E63CE4F.jpg" width="244" height="185" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;For any reason, if you stop the installation and start it later, the product preparation tool will check whether a particular component is installed and if yes, then the installation of that particular component will be skipped. If you do not have internet connection, you will face the download error as follows. At any point of failure, the error log will be available for you to review. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_2F16D5FB.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image010" border="0" alt="clip_image010" src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_73E2FA2F.jpg" width="244" height="185" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If all OK, you will reach the below dialog, this means some components will be installed once the PC is rebooted. Be noted that the clicking on finish will not ask you for further confirmation. So make sure to save all your work before clicking on finish button.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_513EBBB4.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image012" border="0" alt="clip_image012" src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_798DEE08.jpg" width="244" height="185" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once the server is restarted, the product preparation tool will start automatically and you will see the following dialog.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image014_061B9B25.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image014" border="0" alt="clip_image014" src="http://weblogs.asp.net/blogs/sreejukg/clip_image014_thumb_358A09F1.jpg" width="244" height="196" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now go to the SharePoint 2013 splash page and click on “Install SharePoint Server” link. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image016_740F5797.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image016" border="0" alt="clip_image016" src="http://weblogs.asp.net/blogs/sreejukg/clip_image016_thumb_10830B75.jpg" width="244" height="183" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You need to enter the product key here. Enter the product key as you received and click continue. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image018_1167832D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image018" border="0" alt="clip_image018" src="http://weblogs.asp.net/blogs/sreejukg/clip_image018_thumb_7D01BDA1.jpg" width="244" height="200" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Select the Checkbox for the license agreement and click on continue button. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image020_749DE84A.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image020" border="0" alt="clip_image020" src="http://weblogs.asp.net/blogs/sreejukg/clip_image020_thumb_6CC5CFDB.jpg" width="244" height="199" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you need to select the installation type. Select Stand-alone and click on “Install Now” button. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image022_3D27B14F.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image022" border="0" alt="clip_image022" src="http://weblogs.asp.net/blogs/sreejukg/clip_image022_thumb_6C96201B.jpg" width="244" height="198" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;A dialog will pop up that updates you with the process and progress. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image024_4B367A7F.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image024" border="0" alt="clip_image024" src="http://weblogs.asp.net/blogs/sreejukg/clip_image024_thumb_24F42127.jpg" width="244" height="200" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The installation took around 15-20 minutes with 2 GB or Ram installed in the server, seems fair. Once the installation is over, you will see the following Dialog. Make sure you select the Run the products and configuration wizard. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image026_3CAB588D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image026" border="0" alt="clip_image026" src="http://weblogs.asp.net/blogs/sreejukg/clip_image026_thumb_40D53052.jpg" width="244" height="199" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If you miss to select the check box, you can find the products and configuration wizard from the start tiles.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image028_718837FD.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image028" border="0" alt="clip_image028" src="http://weblogs.asp.net/blogs/sreejukg/clip_image028_thumb_42564C66.jpg" width="128" height="132" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The products and configuration wizard will start. If you get any dialog saying some of the services will be stopped, you just accept it. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image030_16394F75.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image030" border="0" alt="clip_image030" src="http://weblogs.asp.net/blogs/sreejukg/clip_image030_thumb_740143EE.jpg" width="244" height="211" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Since we selected standalone installation, it will not ask for any user input, as it already knows the database to be configured. Once the configuration is over without any problems you will see the configuration successful message. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image032_1E014217.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image032" border="0" alt="clip_image032" src="http://weblogs.asp.net/blogs/sreejukg/clip_image032_thumb_42B2598E.jpg" width="244" height="210" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Also you can find the link to central administration on the Start Screen.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image034_2152B3F2.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image034" border="0" alt="clip_image034" src="http://weblogs.asp.net/blogs/sreejukg/clip_image034_thumb_54AE774E.jpg" width="244" height="224" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;Troubleshooting&lt;/h2&gt;  &lt;p&gt;During my first setup process, I got the below error. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;System.ArgumentException: The SDDL string contains an invalid sid or a sid that cannot be translated.     &lt;br /&gt;Parameter name: sddlForm      &lt;br /&gt;at System.Security.AccessControl.RawSecurityDescriptor.BinaryFormFromSddlForm(String sddlForm)      &lt;br /&gt;at System.Security.AccessControl.RawSecurityDescriptor..ctor(String sddlForm)      &lt;br /&gt;at Microsoft.SharePoint.Win32.SPNetApi32.CreateShareSecurityDescriptor(String[] readNames, String[] changeNames, String[] fullControlNames, String&amp;amp; sddl)      &lt;br /&gt;at Microsoft.SharePoint.Win32.SPNetApi32.CreateFileShare(String name, String description, String path)      &lt;br /&gt;at Microsoft.SharePoint.Administration.SPServer.CreateFileShare(String name, String description, String path)      &lt;br /&gt;at Microsoft.Office.Server.Search.Administration.AnalyticsAdministration.CreateAnalyticsUNCShare(String dirParentLocation, String shareName)      &lt;br /&gt;at Microsoft.Office.Server.Search.Administration.AnalyticsAdministration.ProvisionAnalyticsShare(SearchServiceApplication serviceApplication)      &lt;br /&gt;…………………………………………      &lt;br /&gt;…………………………………………&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The configuration wizard displayed the error as below. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image036_778F38FE.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image036" border="0" alt="clip_image036" src="http://weblogs.asp.net/blogs/sreejukg/clip_image036_thumb_75723A35.jpg" width="244" height="211" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The error occurred in step 8 of the configuration wizard and by the time the central administration is already provisioned. So from the start, I was able to open the central administration website, but the search service application was showing as error. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image038_091F23CA.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image038" border="0" alt="clip_image038" src="http://weblogs.asp.net/blogs/sreejukg/clip_image038_thumb_63194DA6.jpg" width="244" height="17" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I found a good blog that specifies the reason for error. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://kbdump.com/sharepoint2013-standalone-config-error-create-sample-data/"&gt;http://kbdump.com/sharepoint2013-standalone-config-error-create-sample-data/&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The workaround specified in the blog works fine. I think SharePoint must be provisioning Search using the Network Service account, so instead of giving permission to everyone, you could try giving permission to Network Service account(I didn’t try this yet, buy you could try and post your feedback here). In production environment you will have specific accounts that have access rights as recommended by Microsoft guidelines. &lt;/p&gt;  &lt;p&gt;Installation of SharePoint 2013 is pretty straight forward. Hope you enjoyed the article!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=9470437" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="Sharepoint" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Sharepoint/default.aspx" /><category term="SharePoint 2013" scheme="http://weblogs.asp.net/sreejukg/archive/tags/SharePoint+2013/default.aspx" /></entry><entry><title>NuGet package manager in Visual Studio 2012</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/10/25/nuget-package-manager-in-visual-studio-2012.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/10/25/nuget-package-manager-in-visual-studio-2012.aspx</id><published>2012-10-25T07:59:16Z</published><updated>2012-10-25T07:59:16Z</updated><content type="html">&lt;p&gt;NuGet is a package manager that helps developers to automate the process of installing and upgrading packages in Visual Studio projects. It is free and open source. You can see the project in codeplex from the below link.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://nuget.codeplex.com/"&gt;http://nuget.codeplex.com/&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now days developers needed to work with several packages or libraries from various sources, a typical e.g. is jQuery. You will hardly find a website that not uses jQuery. When you include these packages as manually copying the files, it is difficult to task to update these files as new versions get released. NuGet is a Visual studio add on, that comes by default with Visual Studio 2012 that manages such packages. So by using NuGet, you can include new packages to you project as well as update existing ones with the latest versions. NuGet is a Visual Studio extension, and happy news for developers, it is shipped with Visual Studio 2012 by default. In this article, I am going to demonstrate how you can include jQuery (or anything similar) to a .Net project using the NuGet package manager.&lt;/p&gt;  &lt;p&gt;I have Visual Studio 2012, and I created an empty ASP.Net web application. In the solution explorer, the project looks like following.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_58A409D0.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_015F6F1A.png" width="244" height="142" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now I need to add jQuery for this project, for this I am going to use NuGet. From solution explorer, right click the project, you will see “Manage NuGet Packages”&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_73ACB311.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_37DCF491.png" width="244" height="178" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on the Manage NuGet Packages options so that you will get the NuGet Package manager dialog. Since there is no package installed in my project, you will see “no packages installed” message.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_432608CE.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_612416C2.jpg" width="244" height="164" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;From the left menu, select the online option, and in the Search box (that is available in the top right corner) enter the name of the package you are looking for. In my case I just entered jQuery. Now NuGet package manager will search online and bring all the available packages that match my search criteria. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_4D2A842C.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_6330EFBE.jpg" width="244" height="163" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can select the right package and use the Install button just next to the package details. Also in the right pane, it will show the link to project information and license terms, you can see more details of the project you are looking for from the provided links. Now I have selected to install jQuery.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_13E3F76A.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image008" border="0" alt="clip_image008" src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_10EE92B7.jpg" width="244" height="163" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once installed successfully, you can find the green icon next to it that tells you the package has been installed successfully to your project.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_081E8A6B.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image009" border="0" alt="clip_image009" src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_06D9F18C.png" width="244" height="65" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now if you go to the Installed packages link from the left menu of package manager, you can see jQuery is installed and you can uninstall it by just clicking on the Uninstall button.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_7A6BCE62.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image011" border="0" alt="clip_image011" src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_4ACDAFD6.jpg" width="244" height="62" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;Now close the package manager dialog and let us examine the project in solution explorer. &lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_296E0A3A.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image012" border="0" alt="clip_image012" src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_7631D0D0.png" width="244" height="184" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt; &lt;b&gt;&lt;/b&gt;  &lt;p&gt;You can see some new entries in your project. One is Scripts folder where the jQuery got installed, and a packages.config file. The packages.config is xml file that tells the NuGet package manager, the id and the version of the package you install. Based on this file NuGet package manager will identify the installed packages and the corresponding versions. &lt;/p&gt;  &lt;p&gt;Installing packages using NuGet package manager will save lot of time for developers and developers can get upgrades for the installed packages very easily.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=9206525" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="ASP.Net" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/sreejukg/archive/tags/.NET/default.aspx" /><category term="ASP.Net 4.5" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net+4.5/default.aspx" /><category term="jQuery" scheme="http://weblogs.asp.net/sreejukg/archive/tags/jQuery/default.aspx" /><category term="Visual Studio 2012" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2012/default.aspx" /><category term="NuGet" scheme="http://weblogs.asp.net/sreejukg/archive/tags/NuGet/default.aspx" /></entry><entry><title>Coexistence of projects between Visual Studio 2010 and 2012</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/10/17/coexistence-of-projects-between-visual-studio-2010-and-2012.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/10/17/coexistence-of-projects-between-visual-studio-2010-and-2012.aspx</id><published>2012-10-17T10:04:00Z</published><updated>2012-10-17T10:04:00Z</updated><content type="html">&lt;p&gt;Microsoft has released another version of Visual Studio named Visual Studio 2012. As you can see there are user interface (UI) changes in all/most of the Microsoft applications as Microsoft is moving towards Windows 8 and changing the UI scheme for all of the applications. Visual Studio 2012 is a move to adapt the new interface requirements that are in coherent with Windows 8. Not only this Visual Studio 2012 has lots of improvements in several areas and it supports .Net framework 4.5. &lt;/p&gt;  &lt;p&gt;In the past, whenever a new version of Visual Studio launches, developers needed to upgrade the project to new version of Visual Studio which was a pain, especially when you are working with a team of developers. Once a solution is upgraded to a newer version, it was not possible to going back. With Visual studio 2012, you can avoid the pain of upgrading. Developers will be able to open their project in Visual Studio 2012 along with Visual Studio 2010 SP 1. This means if you create a project using Visual Studio 2012, you will be able to open it with Visual Studio 2010 SP 1 and vice versa. There are some exceptions (as always!). Visual Studio 2012 supports some new project types, which was not there in 2010 version. Such project, you will not be able to open in Visual Studio 2010. For e.g. Visual Studio 2012 brings a new project type named “Windows 8 Modern Applications”, such projects you will not be able to open using the 2010 version of Visual Studio.&lt;/p&gt;  &lt;p&gt;Just to prove the said subject, I am going to perform some simple operations. I installed Visual Studio 2010 with SP 1 and Visual Studio 2012 on my PC. See the snapshots for both the installations. &lt;/p&gt;  &lt;h5&gt;Visual Studio 2010&lt;/h5&gt;  &lt;blockquote&gt;   &lt;p&gt;     &lt;br&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_60C8857F.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_60C8857F.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image001" border="0" alt="clip_image001" src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_62692B86.png" width="244" height="134" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_62692B86.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;h5&gt;Visual Studio 2012&lt;/h5&gt;  &lt;blockquote&gt;   &lt;p&gt;     &lt;br&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_71BC8D95.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_71BC8D95.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image002" border="0" alt="clip_image002" src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_5E9B60E9.png" width="244" height="150" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_5E9B60E9.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now I am going to perform two test cases. First create a project in 2010 Version and open it in 2012 version and vice versa. If you are interested, you can continue scrolling down, otherwise just say bye bye to this article. &lt;/p&gt;  &lt;h3&gt;Case 1: Open a solution created using Visual Studio 2010 in 2012 version.&lt;/h3&gt;  &lt;p&gt;I created a project in VS 2010 named TestProject2010 using empty ASP.Net web application template. Once created the project appears in VS 2010 as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_67A7EC6A.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_67A7EC6A.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image003" border="0" alt="clip_image003" src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_41659312.png" width="232" height="244" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_41659312.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I closed Visual Studio and opened the solution file using VS 2012 by using the Open Project dialog(File -&amp;gt; Open Project/Solution). Surprisingly, there is not even a warning message, just the project opened fine in Visual Studio 2012.&lt;/p&gt;  &lt;blockquote&gt;   &lt;h3&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_50B8F521.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_50B8F521.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image004" border="0" alt="clip_image004" src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_2761AD23.png" width="244" height="229" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_2761AD23.png"&gt;&lt;/a&gt;&lt;/h3&gt; &lt;/blockquote&gt;  &lt;h3&gt;Case 2: Open a solution created using Visual Studio 2012 in 2010 version.&lt;/h3&gt;  &lt;p&gt;I have created a project in Visual Studio 2012 named testProject2012. See the screenshot of the project in VS 2012 below.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_3383274A.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_3383274A.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image005" border="0" alt="clip_image005" src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_2AB31EFE.png" width="244" height="202" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_2AB31EFE.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now try opening the solution in Visual Studio 2010. The solution loaded successfully, but Visual Studio failed to load project. See the screenshot.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_02343CEA.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_02343CEA.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image006" border="0" alt="clip_image006" src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_788BCEB3.png" width="234" height="244" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_788BCEB3.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;At first I was surprised. The Web application project template is available in both versions, So there should not be any problem. What is making the incompatibility? Is it ASP.Net version? Yes it is. VS 2012 assign ASP.Net 4.5 as the default version that was causing the trouble for Visual Studio 2010. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_113AF5F7.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_113AF5F7.jpg"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image008" border="0" alt="clip_image008" src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_334351BD.jpg" width="244" height="124" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_334351BD.jpg"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I changed the version to .Net framework 4.0 and saved the project after that I was able to open the project in Visual Studio 2010. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_124FDF16.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_124FDF16.png"&gt;&lt;img style="border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image009" border="0" alt="clip_image009" src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_4C5EABF5.png" width="232" height="244" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_4C5EABF5.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This as an excellent move from Visual Studio Team and allows enterprises to perform gradual upgrade to the new version. Now developers can work in any version based on availability and preference, simply I can use Visual Studio 2012 as my IDE while my colleague working on the same project can still use Visual Studio 2010.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=9127360" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="ASP.Net" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net/default.aspx" /><category term="ASP.Net 4" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net+4/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/sreejukg/archive/tags/C_2300_/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/sreejukg/archive/tags/.NET/default.aspx" /><category term="ASP.Net 4.5" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net+4.5/default.aspx" /><category term="Visual Studio 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2010/default.aspx" /><category term="Visual Studio 2012" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2012/default.aspx" /></entry><entry><title>Change default language settings in Visual Studio 2012</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/10/08/change-default-language-settings-in-visual-studio-2012.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/10/08/change-default-language-settings-in-visual-studio-2012.aspx</id><published>2012-10-08T20:12:00Z</published><updated>2012-10-08T20:12:00Z</updated><content type="html">&lt;p&gt;The first thing you need to do after the installation of Visual Studio 2012 is to choose the IDE preferences. Once you select your preferred collection of settings, the IDE will always choose dialogs and other options according to your selection. Nowadays developer’s needs to work with different programming environments and due to this, developers might need to reset the default settings. In this article, I am going to demonstrate how you can change the default settings in Visual Studio 2012.&lt;/p&gt;  &lt;p&gt;For the purpose of this demonstration, I have installed Visual Studio 2012 and selected C++ as my default environment settings. So now when I go to file -&amp;gt; new project, it will give me C++ templates by default as follows. If you want to select another language, you need to expand Other Languages section and select C# or VB.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_6C6970EA.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_6C6970EA.jpg"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image002" border="0" alt="clip_image002" src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_6A4C7221.jpg" width="244" height="169" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_6A4C7221.jpg"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now I am going to change these default settings. I am going to change the default language preference to C#. In Visual Studio 2012, go to tools menu and select Import and Export Settings. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_572B4575.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_572B4575.jpg"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image004" border="0" alt="clip_image004" src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_7F7A77C9.jpg" width="244" height="178" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_7F7A77C9.jpg"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Here you have 3 options; one is to export the current settings so that the settings are saved for future use. Also you can import previously saved settings. The last option available is to reset it to default. It is a good Idea to export your settings and import it as you need in later stages. To reset the settings to default select the Reset option and click next.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_32D63B26.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_32D63B26.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image005" border="0" alt="clip_image005" src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_66024EC2.png" width="244" height="242" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_66024EC2.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now Visual Studio will ask you to whether you would like to save the settings, which can be used in future to restore. Select any one option and click next. For the purpose of this demo, I have selected not to save the settings. Click Next button to continue. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_11D2A2B2.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_11D2A2B2.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image006" border="0" alt="clip_image006" src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_48604DF6.png" width="244" height="244" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_48604DF6.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now Visual Studio will bring you the similar dialog that appears just after installation to select your IDE settings. Select the required settings from the available list and click Finish button. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_783AEFB7.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_783AEFB7.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image007" border="0" alt="clip_image007" src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_7D3D2D66.png" width="244" height="244" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_7D3D2D66.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click Finish once you are done. If everything OK, you will see the success message as below. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_782AC9EA.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_782AC9EA.png"&gt;&lt;img style="margin: 0px; border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image008" border="0" alt="clip_image008" src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_0FE20151.png" width="244" height="241" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_0FE20151.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now go to file -&amp;gt; new Project, you will see the selected language appear by default. I selected C# in the previous step and the new project dialog appears as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_6E825BB4.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_6E825BB4.jpg"&gt;&lt;img style="border: 0px currentColor; padding-top: 0px; padding-right: 0px; padding-left: 0px; display: inline; background-image: none;" title="clip_image010" border="0" alt="clip_image010" src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_0BA803BF.jpg" width="244" height="171" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_0BA803BF.jpg"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Changing IDE settings in Visual Studio 2012 is very easy and straight forward. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=9072518" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/sreejukg/archive/tags/C_2300_/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/sreejukg/archive/tags/.NET/default.aspx" /><category term=".Net Framework" scheme="http://weblogs.asp.net/sreejukg/archive/tags/.Net+Framework/default.aspx" /><category term="Visual Studio 2012" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2012/default.aspx" /></entry><entry><title>Extension methods in .Net framework</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/08/07/extension-methods-in-net-framework.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/08/07/extension-methods-in-net-framework.aspx</id><published>2012-08-07T13:18:00Z</published><updated>2012-08-07T13:18:00Z</updated><content type="html">&lt;p&gt;Recently one of my friend asked me about extension method. Though it was introduced in .Net framework 3.0, lots of people are not using this or not aware of the power of extension methods. So I decided to write a blog post about this to give an introduction to the extension methods. &lt;/p&gt;  &lt;p&gt;In a nutshell Extension methods make the .Net framework extensible. You can add methods to existing classes without altering or accessing the original class code. This applies to in-built types that shipped with .Net framework and the types you create. Using this feature you can extend types/classes that you never have access to. You can add a method to a class written by somebody else. Extension method adds more power to .Net framework. &lt;/p&gt;  &lt;p&gt;Prior to extension methods, developers were using the inheritance feature to extend a class. You need to create a new class based on the existing class and can add methods to it. This is great, but this approach has two disadvantages. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;In order to add a single method, you need to create a new class. So just to add a simple method you are forced to extend a class and create a new class/Type, which is inconvenience for developers.      &lt;br&gt;&lt;/li&gt;    &lt;li&gt;Secondly there are classes with definition Sealed (Not Inheritable in Visual Basic) as you can not extend such classes. There is lots of classes in .Net framework with sealed definition which makes almost impossible to add more properties or methods to those classes. E.g. System.String, System.Int32 etc.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Starting with .Net framework 3.0 there is happy news for developers. A new feature added to the framework called “Extension Methods”. Extension methods allow developers to define methods to existing classes, great feature! Right? Now developers can add new methods to existing classes even if the Class is sealed(Not Inheritable). &lt;/p&gt;  &lt;p&gt;I am going to demonstrate how you can make use of Extension method in C#. For the purpose of this demonstration, I am going to add a method to the type “int”. The method name is “IsEven” which will return a Boolean value depending whether the number is even or not. &lt;/p&gt;  &lt;p&gt;By default, when you define an int variable there are certain methods available. Visual studio IntelliSense will display all the available methods. The following is the screenshot of the default ones available with int. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_28AE65C6.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_28AE65C6.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_3227243C.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001" alt="clip_image001" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_3227243C.png" border="0" height="178" width="192"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now I am going to add IsEven to the list of methods available for Int. To create an extension method in C#, you need to create a public static class and define a public static method in it. The first argument for the method should be the type you are extending (int in our case). Also you need to mark the first argument with this keyword to denote that it is an extension method. &lt;/p&gt;  &lt;p&gt;For e.g. consider the following method definition&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;public static bool IsEven(&lt;b&gt;this&lt;/b&gt; &lt;b&gt;int&lt;/b&gt; num){……}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This defines an extension method for the type&lt;b&gt; int&lt;/b&gt; that returns a Boolean value. If you place this method inside a public static class, the framework will understand this as an extension method and will be available for the type you extended. &lt;/p&gt;  &lt;p&gt;See the definition of the Extension class I have created.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_50253230.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_50253230.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_27A6501C.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" alt="clip_image002" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_27A6501C.png" border="0" height="173" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once I create this class, the Visual Studio IntelliSense will identify the method in the available list as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_3433FD38.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_3433FD38.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_45382B1B.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image003" alt="clip_image003" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_45382B1B.png" border="0" height="179" width="185"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;See the sample code that illustrates the use of IsEven method&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_23D8857F.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_23D8857F.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_3066329B.png" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" alt="clip_image004" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_3066329B.png" border="0" height="124" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can add methods to built-in classes and for user defined classes. By using this, you can add more methods to existing types that can be used by your team of developers. Visual Studio IntelliSense is incredible in this as it finds and lists all available methods. As a developer you should make use of extension methods to simplify common tasks.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8822765" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="ASP.Net" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/sreejukg/archive/tags/C_2300_/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/sreejukg/archive/tags/.NET/default.aspx" /><category term="Visual Studio 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2010/default.aspx" /><category term="CLR" scheme="http://weblogs.asp.net/sreejukg/archive/tags/CLR/default.aspx" /><category term=".Net Framework" scheme="http://weblogs.asp.net/sreejukg/archive/tags/.Net+Framework/default.aspx" /></entry><entry><title>Integrate Bing Search API into ASP.Net application</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/07/04/integrate-bing-search-api-to-asp-net-application.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/07/04/integrate-bing-search-api-to-asp-net-application.aspx</id><published>2012-07-04T08:28:00Z</published><updated>2012-07-04T08:28:00Z</updated><content type="html">&lt;p&gt;Couple of months back, I wrote an article about how to integrate Bing Search engine (API 2.0) with ASP.Net website. You can refer the article here&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/sreejukg/archive/2012/04/07/integrate-bing-api-for-search-inside-asp-net-web-application.aspx" mce_href="http://weblogs.asp.net/sreejukg/archive/2012/04/07/integrate-bing-api-for-search-inside-asp-net-web-application.aspx"&gt;http://weblogs.asp.net/sreejukg/archive/2012/04/07/integrate-bing-api-for-search-inside-asp-net-web-application.aspx&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Things are changing rapidly in the tech world and Bing has also changed! The Bing Search API 2.0 will work until August 1, 2012, after that it will not return results. Shocked? Don’t worry the API has moved to Windows Azure market place and available for you to sign up and continue using it and there is a free version available based on your usage.&lt;/p&gt;  &lt;p&gt;In this article, I am going to explain how you can integrate the new Bing API that is available in the Windows Azure market place with your website. &lt;/p&gt;  &lt;p&gt;You can access the Windows Azure market place from the below link&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="https://datamarket.azure.com/" mce_href="https://datamarket.azure.com/"&gt;https://datamarket.azure.com/&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;There is lot of applications available for you to subscribe and use. Bing is one of them. You can find the new Bing Search API from the below link&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44" mce_href="https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44"&gt;https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;To get access to Bing Search API, first you need to register an account with Windows Azure market place. Sign in to the Windows Azure market place site using your windows live account. Once you sign in with your windows live account, you need to register to Windows Azure Market place account. &lt;/p&gt;  &lt;p&gt;From the Windows Azure market place, you will see the sign in button it the top right of the page. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_6F047DF5.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_6F047DF5.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_3C04C7C1.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" alt="clip_image002" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_3C04C7C1.jpg" border="0" height="138" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Clicking on the sign in button will take you to the Windows live ID authentication page. You can enter a windows live ID here to login. Once logged in you will see the Registration page for the Windows Azure market place as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_0F7B97DB.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_0F7B97DB.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_3183F3A1.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" alt="clip_image004" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_3183F3A1.jpg" border="0" height="112" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can agree or disagree for the email address usage by Microsoft. I believe selecting the check box means you will get email about what is happening in Windows Azure market place. Click on continue button once you are done.&lt;/p&gt;  &lt;p&gt;In the next page, you should accept the terms of use, it is not optional, you must agree to terms and conditions. Scroll down to the page and select the I agree checkbox and click on Register Button.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_4458774B.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_4458774B.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_332499A8.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image006" alt="clip_image006" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_332499A8.jpg" border="0" height="69" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you are a registered member of Windows Azure market place. You can subscribe to data applications. In order to use BING API in your application, you must obtain your account Key, in the previous version of Bing you were required an API key, the current version uses Account Key instead.&lt;/p&gt;  &lt;p&gt;Once you logged in to the Windows Azure market place, you can see “My Account” in the top menu, from the Top menu; go to “My Account” Section. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_2D39D042.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_2D39D042.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_24D5FAEB.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image008" alt="clip_image008" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_24D5FAEB.jpg" border="0" height="22" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;From the My Account section, you can manage your subscriptions and Account Keys. Account Keys will be used by your applications to access the subscriptions from the market place.&lt;/p&gt;  &lt;p&gt;Click on My Account link, you can see Account Keys in the left menu and then Add an account key or you can use the default Account key available.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_5FBD2DB4.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_5FBD2DB4.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_769BFF30.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image010" alt="clip_image010" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_769BFF30.jpg" border="0" height="91" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Creating account key is very simple process. Also you can remove the account keys you create if necessary.&lt;/p&gt;  &lt;p&gt;The next step is to subscribe to BING Search API. At this moment, Bing Offers 2 APIs for search. The available options are as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;1. Bing Search API - &lt;a href="https://datamarket.azure.com/dataset/5ba839f1-12ce-4cce-bf57-a49d98d29a44" mce_href="https://datamarket.azure.com/dataset/5ba839f1-12ce-4cce-bf57-a49d98d29a44"&gt;https://datamarket.azure.com/dataset/5ba839f1-12ce-4cce-bf57-a49d98d29a44&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;2. Bing Search API – Web Results only - &lt;a href="https://datamarket.azure.com/dataset/8818f55e-2fe5-4ce3-a617-0b8ba8419f65" mce_href="https://datamarket.azure.com/dataset/8818f55e-2fe5-4ce3-a617-0b8ba8419f65"&gt;https://datamarket.azure.com/dataset/8818f55e-2fe5-4ce3-a617-0b8ba8419f65&lt;/a&gt; &lt;u&gt;&lt;/u&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The difference is that the later will give you only web results where the other you can specify the source type such as image, video, web, news etc. Carefully choose the API based on your application requirements. In this article, I am going to use Web Results Only API, but the steps will be similar to both.&lt;/p&gt;  &lt;p&gt;Go to the API page &lt;a href="https://datamarket.azure.com/dataset/8818f55e-2fe5-4ce3-a617-0b8ba8419f65" mce_href="https://datamarket.azure.com/dataset/8818f55e-2fe5-4ce3-a617-0b8ba8419f65"&gt;https://datamarket.azure.com/dataset/8818f55e-2fe5-4ce3-a617-0b8ba8419f65&lt;/a&gt;, you can see the subscription options in the right side. And in the bottom of the page you can see the free option&lt;u&gt;&lt;/u&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_358D7FCC.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_358D7FCC.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_260A6DFD.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image011" alt="clip_image011" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_260A6DFD.png" border="0" height="244" width="189"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Since I am going to use the free options, just Click the Sign Up link for that.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image013_03D26277.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image013_03D26277.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image013_thumb_10600F93.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image013" alt="clip_image013" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image013_thumb_10600F93.jpg" border="0" height="89" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Just select I agree check box and click on the Sign Up button. You will get a recipt pagethat detail your subscription. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image015_4F51902E.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image015_4F51902E.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image015_thumb_06B7A15D.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image015" alt="clip_image015" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image015_thumb_06B7A15D.jpg" border="0" height="111" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you are ready Bing Search API – Web results. The next step is to integrate the API into your ASP.Net application. Now if you go to the Search API page (as well as in the Receipt page), you can see a .Net C# Class Library link, click on the link, you will get a code file named “BingSearchContainer.cs”. &lt;/p&gt;  &lt;p&gt;In the following sections I am going to demonstrate the use of Bing Search API from an ASP.Net application.&lt;/p&gt;  &lt;p&gt;Create an empty ASP.Net web application. In the solution explorer, the application will looks as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image016_45A921F8.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image016_45A921F8.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image016_thumb_44648919.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image016" alt="clip_image016" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image016_thumb_44648919.png" border="0" height="120" width="219"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now add the downloaded code file (“BingSearchContainer.cs”) to the project. Right click your project in solution explorer, Add -&amp;gt; existing item, then browse to the downloaded location, select the “BingSearchContainer.cs” file and add it to the project.&lt;/p&gt;  &lt;p&gt;To build the code file you need to add reference to the following library.    &lt;br&gt;System.Data.Services.Client&lt;/p&gt;  &lt;p&gt;You can find the library in the .Net tab, when you select Add -&amp;gt; Reference&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image017_7BCA9A47.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image017_7BCA9A47.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image017_thumb_2F929099.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image017" alt="clip_image017" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image017_thumb_2F929099.png" border="0" height="104" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Try to build your project now; it should build without any errors.&lt;/p&gt;  &lt;p&gt;Add an ASP.Net page to the project. I have included a text box and a button, then a Grid View to the page. The idea is to Search the text entered and display the results in the gridview. The page will look in the Visual Studio Designer as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image018_52071F54.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image018_52071F54.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image018_thumb_2C9D2BE6.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image018" alt="clip_image018" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image018_thumb_2C9D2BE6.png" border="0" height="166" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The markup of the page is as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image020_4B076CCF.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image020_4B076CCF.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image020_thumb_206B8BF2.png" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image020" alt="clip_image020" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image020_thumb_206B8BF2.png" border="0" height="182" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In the button click event handler for the search button, I have used the following code. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image022_5EF0D998.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image022_5EF0D998.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image022_thumb_3671F784.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image022" alt="clip_image022" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image022_thumb_3671F784.jpg" border="0" height="64" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now run your project and enter some text in the text box and click the Search button, you will see the results coming from Bing, cool. &lt;/p&gt;  &lt;p&gt;I entered the text “Microsoft” in the textbox and clicked on the button and I got the following results. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image024_74F7452A.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image024_74F7452A.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image024_thumb_0118BF52.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image024" alt="clip_image024" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image024_thumb_0118BF52.jpg" border="0" height="111" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;Searching Specific Websites&lt;/h3&gt;  &lt;p&gt;If you want to search a particular website, you pass the site url with site:&amp;lt;site url name&amp;gt; and if you have more sites, use pipe (|).&lt;/p&gt;  &lt;p&gt;e.g. The following search query &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;&lt;i&gt;site:microsoft.com | site:adobe.com design&lt;/i&gt;&lt;/b&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;will search the word design and return the results from Microsoft.com and Adobe.com&lt;/p&gt;  &lt;p&gt;See the sample code that search only Microsoft.com for the text entered for the above sample. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;i&gt;&lt;b&gt;var webResults = bingContainer.Web("site:www.Microsoft.com " + txtSearch.Text, null, null, null, null, null, null);&lt;/b&gt;&lt;/i&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;Paging the results returned by the API&lt;/h3&gt;  &lt;p&gt;By default the BING API will return 100 results based on your query. The default code file that you downloaded from BING doesn’t include any option for this. You can modify the downloaded code to perform this paging. &lt;/p&gt;  &lt;p&gt;The BING API supports two parameters $top (for number of results to return) and $skip (for number of records to skip). So if you want 3&lt;sup&gt;rd&lt;/sup&gt; page of results with page size = 10, you need to pass $top = 10 and $skip=20.&lt;/p&gt;  &lt;p&gt;Open the BingSearchContainer.cs in the editor. You can see the Web method in it as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;&lt;i&gt;public DataServiceQuery&amp;lt;WebResult&amp;gt; Web(String Query, String Market, String Adult, Double? Latitude, Double? Longitude, String WebFileType, String Options) {&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In the method signature, I have added two more parameters&lt;/p&gt;  &lt;blockquote&gt;&lt;p&gt;&lt;b&gt;&lt;i&gt;public DataServiceQuery&amp;lt;WebResult&amp;gt; Web(String Query, String Market, String Adult, Double? Latitude, Double? Longitude, String WebFileType, String Options, int resultCount, int pageNo) {&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;&lt;/blockquote&gt;  &lt;p&gt;and in the method, you need to pass the parameters to the query variable. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;query = query.AddQueryOption("$top", resultCount);     &lt;br&gt;query = query.AddQueryOption("$skip", (pageNo -1)*resultCount);      &lt;br&gt;return query;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Note that I didn’t perform any validation, but you need to check conditions such as resultCount and pageCount should be greater than or equal to 1. If the parameters are not valid, the Bing Search API will throw the error.&lt;/p&gt;  &lt;p&gt;The modified method is as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/image_37A136F5.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/image_37A136F5.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/image_thumb_77A7A0AF.png" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" alt="image" mce_src="http://weblogs.asp.net/blogs/sreejukg/image_thumb_77A7A0AF.png" border="0" height="244" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The changes are highlighted. Now see the following code in the SearchPage.aspx.cs file&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;&lt;i&gt;protected void btnSearch_Click(object sender, EventArgs e)     &lt;br&gt;{      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var bingContainer = new Bing.BingSearchContainer(new Uri(&lt;a href="https://api.datamarket.azure.com/Bing/SearchWeb/" mce_href="https://api.datamarket.azure.com/Bing/SearchWeb/"&gt;https://api.datamarket.azure.com/Bing/SearchWeb/&lt;/a&gt;));      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // replace this value with your account key      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var accountKey = "your key";      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // the next line configures the bingContainer to use your credentials.      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bingContainer.Credentials = new NetworkCredential(accountKey, accountKey);      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var webResults = bingContainer.Web("site:microsoft.com" +txtSearch.Text , null, null, null, null, null, null,3,2);      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lstResults.DataSource = webResults;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lstResults.DataBind();      &lt;br&gt;}&lt;/i&gt;&lt;/b&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The following code will return 3 results starting from second page (by skipping first 3 results). See the result page as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image028_6CEF7CFB.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image028_6CEF7CFB.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image028_thumb_6B3EB127.jpg" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image028" alt="clip_image028" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image028_thumb_6B3EB127.jpg" border="0" height="137" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Bing provides complete integration to its offerings. When you develop search based applications, you can use the power of Bing to perform the search. Integrating Bing Search API to ASP.Net application is a simple process and without investing much time, you can develop a good search based application. &lt;/p&gt;  &lt;p&gt;Make sure you read the terms of use before designing the application and decide which API usage is suitable for you. &lt;/p&gt;  &lt;h3&gt;Further readings&lt;br&gt;&lt;/h3&gt;  &lt;p&gt;BING API Migration Guide &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=248077" mce_href="http://go.microsoft.com/fwlink/?LinkID=248077"&gt;http://go.microsoft.com/fwlink/?LinkID=248077&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Bing API FAQ&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=252146" mce_href="http://go.microsoft.com/fwlink/?LinkID=252146"&gt;http://go.microsoft.com/fwlink/?LinkID=252146&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Bing API Schema Guide&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=252151" mce_href="http://go.microsoft.com/fwlink/?LinkID=252151"&gt;http://go.microsoft.com/fwlink/?LinkID=252151&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8695065" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="ASP.Net" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net/default.aspx" /><category term="Web Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Web+Development/default.aspx" /><category term="ASP.Net 4" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net+4/default.aspx" /><category term="Windows Azure" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Windows+Azure/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/sreejukg/archive/tags/C_2300_/default.aspx" /><category term="Visual Studio 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2010/default.aspx" /><category term="Web Services" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Web+Services/default.aspx" /><category term="Bing" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Bing/default.aspx" /></entry><entry><title>Integrating Flickr with ASP.Net application</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/06/14/integrating-flickr-with-asp-net-application.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/06/14/integrating-flickr-with-asp-net-application.aspx</id><published>2012-06-13T20:50:00Z</published><updated>2012-06-13T20:50:00Z</updated><content type="html">&lt;p&gt;Flickr is the popular photo management and sharing application offered by yahoo. The services from flicker allow you to store and share photos and videos online. Flicker offers strong API support for almost all services they provide. Using this API, developers can integrate photos to their public website. Since 2005, developers have collaborated on top of Flickr's APIs to build fun, creative, and gorgeous experiences around photos that extend beyond Flickr.&lt;/p&gt;  &lt;p&gt;In this article I am going to demonstrate how easily you can bring the photos stored on flicker to your website. Let me explain the scenario this article is trying to address. I have a flicker account where I upload photos and share in many ways offered by Flickr. Now I have a public website, instead of re-upload the photos again to public website, I want to show this from Flickr. Also I need complete control over what photo to display. So I went and referred the Flickr documentation and there is API support ready to address my scenario (and more… ).&lt;/p&gt;  &lt;h4&gt;FlickerAPI for ASP.Net&lt;/h4&gt;  &lt;p&gt;To Integrate Flicker with ASP.Net applications, there is a library available in CodePlex. You can find it here&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://flickrnet.codeplex.com/" mce_href="http://flickrnet.codeplex.com/"&gt;http://flickrnet.codeplex.com/&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Visit the URL and download the latest version. The download includes a Zip file, when you unzip you will get a number of dlls. Since I am going to use ASP.Net application, I need FlickrNet.dll. See the screenshot of all the dlls, and there is a help file available in the download (.chm) for your reference. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_0671166F.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_0671166F.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_2396BE79.png" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image001" alt="clip_image001" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_2396BE79.png" border="0" height="99" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once you have the dll, you need to use Flickr API from your website. I assume you have a flicker account and you are familiar with Flicker services. &lt;/p&gt;  &lt;h4&gt;Arrange your photos using Sets in Flickr&lt;/h4&gt;  &lt;p&gt;In flicker, you can define sets and add your uploaded photos to sets. You can compare set to photo album. A set is a logical collection of photos, which is an excellent option for you to categorize your photos. Typically you will have a number of sets each set having few photos. You can write application that brings photos from sets to your website. For the purpose of this article I already created a set Flickr and added some photos to it. Once you logged in to Flickr, you can see the Sets under the Menu.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_18A9B764.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_18A9B764.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_3EDBEAEF.png" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image002" alt="clip_image002" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_3EDBEAEF.png" border="0" height="110" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In the Sets page, you will see all the sets you have created. As you notice, you can see certain sample images I have uploaded just to test the functionality. Though I wish I couldn’t create good photos so please bear with me.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_56467953.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_56467953.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_7E2978B2.png" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image003" alt="clip_image003" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_7E2978B2.png" border="0" height="128" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I have created 2 photo sets named Blue Album and Red Album. Click on the image for the set, will take you to the corresponding set page.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_3A25949B.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_3A25949B.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_6E861B49.jpg" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image005" alt="clip_image005" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_6E861B49.jpg" border="0" height="154" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In the set “Red Album” there are 4 photos and the set has a unique ID (highlighted in the URL). You can simply retrieve the photos with the set id from your application. In this article I am going to retrieve the images from Red album in my ASP.Net page. For that First I need to setup FlickrAPI for my usage.&lt;/p&gt;  &lt;h4&gt;Configure Flickr API Key&lt;/h4&gt;  &lt;p&gt;As I mentioned, we are going to use Flickr API to retrieve the photos stored in Flickr. In order to get access to Flickr API, you need an API key. To create an API key, navigate to the URL &lt;a href="http://www.flickr.com/services/apps/create/" mce_href="http://www.flickr.com/services/apps/create/"&gt;http://www.flickr.com/services/apps/create/&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_6F4E5B66.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_6F4E5B66.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_31251AE8.png" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image006" alt="clip_image006" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_31251AE8.png" border="0" height="154" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on Request an API key link, now you need to tell Flickr whether your application in commercial or non-commercial. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_64BD6179.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_64BD6179.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_4A6CD288.jpg" style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image008" alt="clip_image008" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_4A6CD288.jpg" border="0" height="124" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I have selected a non-commercial key. Now you need to enter certain information about your application. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_61B7D6F9.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_61B7D6F9.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_712AC2FB.jpg" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image010" alt="clip_image010" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_712AC2FB.jpg" border="0" height="144" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once you enter the details, Click on the submit button. Now Flickr will create the API key for your application. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_11161FF9.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_11161FF9.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_078D3BB6.png" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image011" alt="clip_image011" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_078D3BB6.png" border="0" height="130" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Generating non-commercial API key is very easy, in couple of steps the key will be generated and you can use the key in your application immediately. &lt;/p&gt;  &lt;h4&gt;ASP.Net application for retrieving photos &lt;/h4&gt;  &lt;p&gt;Now we need write an ASP.Net application that display pictures from Flickr. Create an empty web application (I named this as FlickerIntegration) and add a reference to FlickerNet.dll. Add a web form page to the application where you will retrieve and display photos(I have named this as Gallery.aspx). After doing all these, the solution explorer will look similar to following. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_14C39EFC.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_14C39EFC.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_325579FB.png" style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image012" alt="clip_image012" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_325579FB.png" border="0" height="244" width="146"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I have used the below code in the Gallery.aspx page. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/image_46AB19B9.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/image_46AB19B9.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/image_thumb_621FF5EF.png" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" alt="image" mce_src="http://weblogs.asp.net/blogs/sreejukg/image_thumb_621FF5EF.png" border="0" height="171" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The output for the above code is as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/image_63546901.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/image_63546901.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/image_thumb_4B20D8D9.png" style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" alt="image" mce_src="http://weblogs.asp.net/blogs/sreejukg/image_thumb_4B20D8D9.png" border="0" height="244" width="241"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I am going to explain the code line by line here.&lt;/p&gt;  &lt;p&gt;First it is adding a reference to the FlickrNet namespace. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;using FlickrNet;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Then create a Flickr object by using your API key.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Flickr f = new Flickr("&amp;lt;yourAPIKey&amp;gt;");&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now when you retrieve photos, you can decide what all fields you need to retrieve from Flickr. Every photo in Flickr contains lots of information. Retrieving all will affect the performance. For the demonstration purpose, I have retrieved all the available fields as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;PhotoSearchExtras.All&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;But if you want to specify the fields you can use logical OR operator(|). For e.g. the following statement will retrieve owner name and date taken.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;PhotoSearchExtras extraInfo = PhotoSearchExtras.OwnerName | PhotoSearchExtras.DateTaken;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Then retrieve all the photos from a photo set using PhotoSetsGetPhotos method. I have passed the PhotoSearchExtras object created earlier.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;PhotosetPhotoCollection photos = f.PhotosetsGetPhotos("72157629872940852", extraInfo);&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The PhotoSetsGetPhotos method will return a collection of Photo objects. You can just navigate through the collection using a foreach statement.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;foreach (Photo p in photos)     &lt;br&gt;{      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //access each photo properties      &lt;br&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Photo class have lot of properties that map with the properties from Flickr. The chm documentation comes along with the CodePlex download is a great asset for you to understand the fields. In the above code I just used the following&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;p.LargeUrl – retrieves the large image url for the photo.&lt;/p&gt;    &lt;p&gt;p.ThumbnailUrl – retrieves the thumbnail url for the photo&lt;/p&gt;    &lt;p&gt;p.Title – retrieves the Title of the photo&lt;/p&gt;    &lt;p&gt;p.DateUploaded – retrieves the date of upload&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Visual Studio intellisense will give you all properties, so it is easy, you can just try with Visual Studio intellisense to find the right properties you are looking for. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image015_3DAAA006.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image015_3DAAA006.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image015_thumb_4385439F.png" style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image015" alt="clip_image015" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image015_thumb_4385439F.png" border="0" height="198" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Most of hem are self-explanatory. So you can try retrieving the required properties. &lt;/p&gt;  &lt;p&gt;In the above code, I just pushed the photos to the page. In real time you can use the retrieved photos along with JQuery libraries to create animated photo galleries, slideshows etc. &lt;/p&gt;  &lt;h4&gt;Configuration and Troubleshooting&lt;/h4&gt;  &lt;p&gt;If you get access denied error while executing the code, you need to disable the caching in Flickr API. FlickrNet cache the photos to your local disk when retrieved. You can specify a cache folder where the application need write permission. You can specify the Cache folder in the code as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Flickr.CacheLocation = Server.MapPath("./FlickerCache/");&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If the application doesn’t have have write permission to the cache folder, the application will throw access denied error. If you cannot give write permission to the cache folder, then you must disable the caching. You can do this from code as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Flickr.CacheDisabled = true;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Disabling cache will have an impact on the performance. Take care! Also you can define the Flickr settings in web.config file.You can find the documentation here.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://flickrnet.codeplex.com/wikipage?title=ExampleConfigFile&amp;amp;ProjectName=flickrnet" mce_href="http://flickrnet.codeplex.com/wikipage?title=ExampleConfigFile&amp;amp;ProjectName=flickrnet"&gt;http://flickrnet.codeplex.com/wikipage?title=ExampleConfigFile&amp;amp;ProjectName=flickrnet&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Flickr is a great place for storing and sharing photos. The API access allows developers to do seamless integration with the photos uploaded on Flickr. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8604486" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="ASP.Net" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net/default.aspx" /><category term="Web Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Web+Development/default.aspx" /><category term="ASP.Net 4" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net+4/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/sreejukg/archive/tags/C_2300_/default.aspx" /><category term="Visual Studio 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2010/default.aspx" /><category term="Flickr" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Flickr/default.aspx" /></entry><entry><title>Using custom fonts in your web pages</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/05/23/using-custom-fonts-in-your-web-pages.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/05/23/using-custom-fonts-in-your-web-pages.aspx</id><published>2012-05-23T07:35:00Z</published><updated>2012-05-23T07:35:00Z</updated><content type="html">&lt;p&gt;From the start of web, people were restricted to use standard fonts(those are globally available in all platforms) such as Arial, Times etc,&amp;nbsp; for displaying content in web pages. The main issue was that the browser did not have the capability to read the font from server. Due to this companies were forced to use different font than their branding for the web pages, which created dissatisfaction for the brand owners. Though internet explorer addressed this by allowing embedding font starting from version 4, there was no common method that works universally in all browsers. With HTML 5 specification, things are changing. HTML 5 have a @font-face element, that can be used to link your page with a font that resides in remote location. &lt;/p&gt;  &lt;p&gt;According to W3C, the specification for @font-face element is as follows&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;“The @font-face rule allows for linking to fonts that are automatically activated when needed. This allows authors to select a font that closely matches the design goals for a given page rather than limiting the font choice to a set of fonts available on all platforms. A set of font descriptors define the location of a font resource, either locally or externally, along with the style characteristics of an individual face. Multiple @font-face rules can be used to construct font families with a variety of faces. Using CSS font matching rules, a user agent can selectively download only those faces that are needed for a given piece of text.”&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;Refer &lt;a href="http://www.w3.org/TR/css3-fonts/" mce_href="http://www.w3.org/TR/css3-fonts/"&gt;http://www.w3.org/TR/css3-fonts/&lt;/a&gt; and refer @font-face rule section.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This is definitely very good news for those who are tired of using only certain fonts in the web pages. Now for web designers and developers there are no restrictions on fonts. The @font-face is should be your favorite CSS element that will do the work for you. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://www.microsoft.com/typography/web/embedding/default.aspx" mce_href="http://www.microsoft.com/typography/web/embedding/default.aspx"&gt;http://www.microsoft.com/typography/web/embedding/default.aspx&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;Browser Compatibility Issues&lt;/h3&gt;  &lt;p&gt;When defining custom fonts in your website, you should be aware of the browser compatibility issues. The non-HTML5 browsers will not support @font-face attribute. Internet explorer supports this from version 4.0, but you need to specify eot font in the @font-face attribute. Internet explorer 9 supports WOFF fonts. Most of the other browsers support ttf(true type) or otf(open type) fonts. So you need to address these and should provide a standard font as an alternative to use in case if the browser failed to load the font you specify.&lt;/p&gt;  &lt;p&gt;To link a font from external source, you need to use @font-face in your style sheet. With @font-face you need to define two attributes(descriptors) - the font-family and src.&lt;/p&gt;  &lt;p&gt;The font-family descriptor will define the name that will be used in your css document to refer the embedded font. You can use any name to represent the embedded font in the font-family element in your stylesheet.&lt;/p&gt;  &lt;p&gt;The src descriptor will refer the file that needs to be embedded. You can refer multiple src attributes in one @font-face element, the first successful will be used by the browser to read the font. As we mentioned earlier you need to provide different types of font files for different browsers. This can be achieved by multiple src descriptors in the @font-face. When specifying src, you can optionally place a format element that specifies the type of font. &lt;/p&gt;  &lt;h4&gt;example.&lt;/h4&gt;  &lt;blockquote&gt;   &lt;p&gt;@font-face     &lt;br&gt;{      &lt;br&gt;font-family: The Name given to your font;      &lt;br&gt;src: url(url to eot font);      &lt;br&gt;src: url(url to woff font) format(“woff”);      &lt;br&gt;src: url(url to ttf font) format(“truetype”) ;      &lt;br&gt;} &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;Note – The format attribute will tell the browser the format of the linked font, and if browser will not support the format, it will not download that font and will skip to the next src attribute. Also you can have multiple urls under one src attribute, separated by commas. When specifying eot font for internet explorer 8 or prior, you should not specify the format attribute as it will not work.&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;Implementation&lt;/h3&gt;  &lt;p&gt;Now let us see this in action. I am going to demonstrate how you can make this to work in a simple HTML page where I have embedded the stylesheet in the document itself. I have a fonts folder in my I have a font folder in my website where I placed fonts with extension ttf and eot. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Note – if you have ttf font, You can convert to eot or woff format by using WEFT tool from Microsoft. Refer the below urls:      &lt;br&gt;&lt;a href="http://www.microsoft.com/typography/WEFT.mspx" mce_href="http://www.microsoft.com/typography/WEFT.mspx"&gt;http://www.microsoft.com/typography/WEFT.mspx&lt;/a&gt;      &lt;br&gt;&lt;a href="http://www.microsoft.com/typography/web/embedding/weft3/download.aspx" mce_href="http://www.microsoft.com/typography/web/embedding/weft3/download.aspx"&gt;http://www.microsoft.com/typography/web/embedding/weft3/download.aspx&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Also there are some online websites that allows you to convert the font to other formats. Refer the below that I have used to create all variants of fonts.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://www.font2web.com/" mce_href="http://www.font2web.com/"&gt;http://www.font2web.com/&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;h5&gt;     &lt;/h5&gt;&lt;h3&gt;The markup&lt;/h3&gt;    &lt;p&gt;&amp;nbsp;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;lt;!DOCTYPE html&amp;gt;     &lt;br&gt;&amp;lt;html&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;head&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;title&amp;gt;Testing Font&amp;lt;/title&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;style&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @font-face      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-family: MyFont;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; src:url('fonts/acmesa.eot');/* this will be applied from IE 9 compatibility mode*/      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; src: url('fonts/acmesa.eot?') format('embedded-opentype'), /* IE prior versions */      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; url('fonts/acmesa.woff') format('woff'), /* modern browser that support web open font */      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; url('fonts/acmesa.ttf') format('truetype'); /* browsers that support true type */      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Title      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-family: MyFont, Arial;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-weight: bold;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-size: 16px;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; color: #0094ff;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Text      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-family: MyFont, Arial;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-size: 12px;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/style&amp;gt;      &lt;br&gt;&amp;lt;/head&amp;gt;      &lt;br&gt;&amp;lt;body&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div style='width: 300px; border: 1px solid #dfdfdf; padding: 4px;'&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div class="Title"&amp;gt;Font Face Test&amp;lt;/div&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div class="Text"&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; This font style is applied by embedding a font from server. If the browser failed to retrieve the font, this will be displayed using Arial.      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;      &lt;br&gt;&amp;lt;/body&amp;gt;      &lt;br&gt;&amp;lt;/html&amp;gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;Output&lt;/h3&gt;  &lt;p&gt;Now find the output of the above markup in various browsers. I have used Adobe Browser labs to generate the output in&amp;nbsp; various browsers. (&lt;a href="https://browserlab.adobe.com/en-us/index.html" title="https://browserlab.adobe.com/en-us/index.html" mce_href="https://browserlab.adobe.com/en-us/index.html"&gt;https://browserlab.adobe.com/en-us/index.html&lt;/a&gt;)&lt;/p&gt;  &lt;p&gt;IE 9&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_7F25B45E.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_7F25B45E.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_17A52BE2.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image001" alt="clip_image001" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_17A52BE2.png" border="0" height="114" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;IE 8&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_68070D55.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image002_68070D55.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_6D094B04.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image002" alt="clip_image002" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image002_thumb_6D094B04.png" border="0" height="108" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;IE 7&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_6B587F30.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_6B587F30.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_09568D25.png" style="border-width: 0px; border-style: none; border-color: -moz-use-text-color; display: inline;" title="clip_image003" alt="clip_image003" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_09568D25.png" border="0" height="121" width="244"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;IE 6     &lt;br&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_40BC9E53.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image004_40BC9E53.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_1EF0C5C2.png" style="border-width: 0px; border-style: none; border-color: -moz-use-text-color; display: inline;" title="clip_image004" alt="clip_image004" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image004_thumb_1EF0C5C2.png" border="0" height="121" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;    &lt;/blockquote&gt;  &lt;p&gt;Firefox&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_3D5B06AB.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_3D5B06AB.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_692B5A9A.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image005" alt="clip_image005" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_692B5A9A.png" border="0" height="112" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Google Chrome&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_0729688F.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_0729688F.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_110E59FA.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image006" alt="clip_image006" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_110E59FA.png" border="0" height="115" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Safari&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_6B383396.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_6B383396.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_14CBFECA.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image007" alt="clip_image007" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_14CBFECA.png" border="0" height="115" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can embed fonts in your website and it will work in almost all browsers. This will work in almost all browsers. For unsupported browsers, make sure you define another font name in the font-family element. &lt;/p&gt;&lt;h3&gt;Further References&lt;/h3&gt;&lt;p&gt;&lt;a href="http://www.fontspring.com/blog/further-hardening-of-the-bulletproof-syntax" mce_href="http://www.fontspring.com/blog/further-hardening-of-the-bulletproof-syntax"&gt;http://www.fontspring.com/blog/further-hardening-of-the-bulletproof-syntax &lt;/a&gt;&lt;br&gt;&lt;a href="http://webfonts.info/wiki/index.php?title=WOFF" mce_href="http://webfonts.info/wiki/index.php?title=WOFF"&gt;http://webfonts.info/wiki/index.php?title=WOFF&lt;/a&gt;&lt;br&gt;&lt;a href="http://www.w3.org/Fonts/WOFF-FAQ.html" mce_href="http://www.w3.org/Fonts/WOFF-FAQ.html"&gt;http://www.w3.org/Fonts/WOFF-FAQ.html&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8523341" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="Web Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Web+Development/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term="HTML 5" scheme="http://weblogs.asp.net/sreejukg/archive/tags/HTML+5/default.aspx" /><category term="HTML" scheme="http://weblogs.asp.net/sreejukg/archive/tags/HTML/default.aspx" /></entry><entry><title>Configure Email notifications on SharePoint 2010 list</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/05/15/configure-email-notifications-on-sharepoint-2010-list.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/05/15/configure-email-notifications-on-sharepoint-2010-list.aspx</id><published>2012-05-15T19:58:00Z</published><updated>2012-05-15T19:58:00Z</updated><content type="html">&lt;p&gt;In this article I am going to demonstrate how you can configure email notification feature on SharePoint List. For the purpose of demonstration I chose the default tasks list that is coming with almost all default SharePoint sites. Tasks list have one column “Assigned To”. When an item is created in the task list, I would like to send an email to the user to whom the task is assigned. The scenario is very simple and straight forward. &lt;/p&gt;  &lt;p&gt;In order to perform certain action when an Item is created in a list, you can make use of Workflow. To understand more about workflows in SharePoint 2010, refer the link &lt;a href="http://technet.microsoft.com/en-us/sharepoint/ff819861" mce_href="http://technet.microsoft.com/en-us/sharepoint/ff819861"&gt;http://technet.microsoft.com/en-us/sharepoint/ff819861&lt;/a&gt; . &lt;/p&gt;  &lt;p&gt;So What I need to do is to create a list workflow that is associated with my Tasks list. The workflow should be initiated automatically whenever an item is added to the tasks list. I am going to use SharePoint Designer as the workflow authoring tool. &lt;/p&gt;  &lt;p&gt;Open SharePoint designer and open the site where your tasks list resides. Click on File menu, then select Add Item from the Menu. Under the workflow section, select List Workflow &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_1ACC4236.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_1ACC4236.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_5A56532E.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image001" alt="clip_image001" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_5A56532E.png" border="0" height="241" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now SharePoint designer will ask you to enter a name for your workflow. Also select a list to which the workflow will be applied. Since I am going to create a workflow on task list, I have selected it and for the purpose of this demonstration I have named the workflow as “MyTaskFlow”. Click on create button once you are done.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_58C5114D.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_58C5114D.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_6CAE7E16.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image003" alt="clip_image003" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_6CAE7E16.jpg" border="0" height="121" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;SharePoint Designer will open the Workflow in the workflow editor. The default workflow screen will look similar to the following. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_24148F45.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_24148F45.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_71810C05.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image005" alt="clip_image005" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_71810C05.jpg" border="0" height="117" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In our case the workflow is simple; we just need to add a step that will send email. In real life you may need to check certain condition, for e.g. if the task priority is high, then send email etc. When sending email, the workflow should access the data from the created item such as who created it and to whom it is assigned etc. You can add conditions and actions to workflow. In our case, it is just one action. Click on the Action Icon in the top and select send email. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_2BFC0BDA.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image006_2BFC0BDA.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_4EDCCD8A.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image006" alt="clip_image006" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image006_thumb_4EDCCD8A.png" border="0" height="86" width="145"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;When you click on Action icon, it will pop up all the available actions that you can choose from. There are many actions available and we need send an Email Action.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_4E0467A0.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_4E0467A0.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_36991795.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image007" alt="clip_image007" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_36991795.png" border="0" height="244" width="149"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;When you choose the Action, it will be inserted in the Step. Also you can simply type in the Step where underline is there to pick the right action/condition. This is another way of authoring if you don’t want to use mouse and menu to pick the actions/conditions. The default Send Email action will look similar to following. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_40DA1628.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_40DA1628.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_3E50E46A.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image008" alt="clip_image008" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_3E50E46A.png" border="0" height="76" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on users link, it will bring Define email dialog. Here you need to select address, subject and a body for the email. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_71ACA7C6.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image009_71ACA7C6.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_3DD48BA8.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image009" alt="clip_image009" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image009_thumb_3DD48BA8.png" border="0" height="225" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;First you need to enter the To address. Click on the browser button next to To: text box. Here you can add a static email address or you can pick it from SharePoint objects. As our requirement is to send to the user in the Assigned To field, you have an option to pick this data from the current Item property. First select Workflow lookup for a user, click on the Add button.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;nbsp;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_0EC22A04.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_0EC22A04.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_4A7E705F.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image010" alt="clip_image010" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_4A7E705F.png" border="0" height="225" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This will bring the lookup dialog to select the item and field. Also make sure you select return field as Email Address. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_25510026.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_25510026.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_02F8A906.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image011" alt="clip_image011" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_02F8A906.png" border="0" height="224" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click OK twice so the select users dialog will be closed. Now in the subject box, enter some text. You can even pick the data from current item such as showing the task title in the subject. In the body part, you need to tell the user “the task is created for you at &amp;lt;time of the task&amp;gt; by &amp;lt;created user&amp;gt;. So you need to access the item properties in the body too. You can see Add/change lookup button in the bottom of the dialog to pick the necessary fields. You can write custom message and include the fields in between the message as necessary. Below is the screenshot of the email body I have configured.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;nbsp;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_64120F5A.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_64120F5A.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_799C222A.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image012" alt="clip_image012" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_799C222A.png" border="0" height="224" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click OK once you are done. Now you can see the start options for the workflow as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image013_791FC968.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image013_791FC968.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image013_thumb_57C023CC.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image013" alt="clip_image013" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image013_thumb_57C023CC.png" border="0" height="65" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Since I want the workflow to start automatically when an Item is created I selected the second option. Now I need to publish it. To publish the workflow, press on the publish button in the top.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image014_411DD585.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image014_411DD585.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image014_thumb_4CD31CB7.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image014" alt="clip_image014" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image014_thumb_4CD31CB7.png" border="0" height="129" width="243"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now when you go to your list, you will see the workflow is available under the list you configured the workflow, in our case under the Tasks list. From the browser, go to the tasks list, then open list tab.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image016_138C8FF5.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image016_138C8FF5.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image016_thumb_5D5AF1D8.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image016" alt="clip_image016" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image016_thumb_5D5AF1D8.jpg" border="0" height="103" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;On the right corner, you can see workflow settings link&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image017_30D1C1F2.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image017_30D1C1F2.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image017_thumb_77F76824.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image017" alt="clip_image017" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image017_thumb_77F76824.png" border="0" height="63" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;Click on the Workflow Settings link, this will open the workflow settings for the tasks list and you can find our workflow is available in the list. &lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image019_22EF562A.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image019_22EF562A.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image019_thumb_31D68544.jpg" style="border-width: 0px; border-style: none; border-color: -moz-use-text-color; display: inline;" title="clip_image019" alt="clip_image019" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image019_thumb_31D68544.jpg" border="0" height="77" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now go and add a new list item and you will see the workflow will be executed automatically and will send email. Designing such business processes is simple and straight forward with SharePoint 2010 and SharePoint Designer. Without writing single line of code you can achieve your day to day business requirements. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8482567" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="Sharepoint" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Sharepoint/default.aspx" /><category term="SharePoint 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/SharePoint+2010/default.aspx" /><category term="Sharepoint Designer" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Sharepoint+Designer/default.aspx" /></entry><entry><title>Getting started with LINQ to SharePoint</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/04/23/getting-started-with-linq-to-sharepoint.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/04/23/getting-started-with-linq-to-sharepoint.aspx</id><published>2012-04-23T05:27:00Z</published><updated>2012-04-23T05:27:00Z</updated><content type="html">&lt;p&gt;One of the major advantages of SharePoint 2010 is the support for LINQ. If you are new to LINQ, I would recommend you to read the below article from MSDN.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb397926.aspx" mce_href="http://msdn.microsoft.com/en-us/library/bb397926.aspx"&gt;http://msdn.microsoft.com/en-us/library/bb397926.aspx&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;With the support of LINQ to SharePoint, in SharePoint 2010 you can apply LINQ queries to your SharePoint objects, a great feature that helps developers who struggle to write CAML queries. In this article I am going to demonstrate how you can do the LINQ to SharePoint. When executing the runtime will convert LINQ queries to corresponding CAML queries and then execute against SharePoint. &lt;/p&gt;  &lt;p&gt;For the purpose of demonstration, I am going to query tasks list that comes up with almost all SharePoint site definitions. The tasks list has fields such as Title, Description, Priority, Assigned to etc. IN this demonstration I am going to list all the high priority tasks from the Tasks list. Using LINQ it is easy to extract data using the Object model. I have entered certain tasks in my task list. The data available for the tasks list is as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0021_5B699710.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0021_5B699710.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0021_thumb_3FE4950D.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image002[1]" alt="clip_image002[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0021_thumb_3FE4950D.jpg" width="244" border="0" height="72"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;As you can see, there are 2 high priority tasks. So What I am going to do is to list them in the user’s home page using a custom web part. &lt;/p&gt;  &lt;p&gt;In order to access any list using LINQ to SharePoint, first you need to create the entity class for the list. SharePoint 2010 shipped with SPMetal.exe that will generate entity class for you. You can find SPMetal.exe in the following location&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\BIN&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The 14 folder under web server extensions is referred as “14 hive” and you may find this term in the remaining part of this article and you need to translate this to the correct folder. &lt;/p&gt;  &lt;p&gt;To read more about SPMetal, refer the following MSDN article.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ee538255.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ee538255.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee538255.aspx&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;To generate code file for your site, just navigate to the Bin folder under 14 hive from command prompt and execute SPMetal Command with the necessary options. I have executed SPMetal command as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0041_6C8D4EE6.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0041_6C8D4EE6.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0041_thumb_2B129C8D.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image004[1]" alt="clip_image004[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0041_thumb_2B129C8D.jpg" width="244" border="0" height="44"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once the command executed, MyCode.cs is generated in the specified location, c: in my case. &lt;/p&gt;  &lt;p&gt;Now create a new SharePoint visual web part project. If you want to know how to create a visual web part you can refer the following article. &lt;/p&gt;  &lt;blockquote&gt;&lt;p&gt;&lt;a href="http://weblogs.asp.net/sreejukg/archive/2011/03/26/create-a-visual-web-part-using-visual-studio-2010.aspx" mce_href="http://weblogs.asp.net/sreejukg/archive/2011/03/26/create-a-visual-web-part-using-visual-studio-2010.aspx"&gt;http://weblogs.asp.net/sreejukg/archive/2011/03/26/create-a-visual-web-part-using-visual-studio-2010.aspx&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;  &lt;p&gt;I have created a Visual Web part and named it as LinqTest. I have deleted the default web part and added a new visual web part with name LinqTestWebPart. In the solution explorer, the project looks as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0051_7BE0B0F5.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0051_7BE0B0F5.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0051_thumb_4FC3B404.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image005[1]" alt="clip_image005[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0051_thumb_4FC3B404.png" width="200" border="0" height="135"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now we need to add the entity class created early to this project. Right click the project, select add existing item then select MyCode.cs (or the name you selected for your class file). After added the generated class, the solution explorer will looks similar to following snapshot.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0061_32DA8F2F.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0061_32DA8F2F.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0061_thumb_06BD923E.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image006[1]" alt="clip_image006[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0061_thumb_06BD923E.png" width="189" border="0" height="176"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In order to use LINQ to SharePoint in your code, your project needs to refer the following dll.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Microsoft.SharePoint.Linq.dll&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This dll can be found in the ISAPI folder under 14 hive. Right click your project, click on add reference. In the add reference dialog, select Browse tab, Browse to the ISAPI folder and select Microsoft.SharePoint.Linq.dll&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0071_377099E9.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0071_377099E9.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0071_thumb_3CDF0A8D.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image007[1]" alt="clip_image007[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0071_thumb_3CDF0A8D.png" width="244" border="0" height="201"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click OK so that the reference will be added to the project. &lt;/p&gt;  &lt;p&gt;In the Visual web part user control, I placed a panel control, where I am going to display high priority tasks. The source of the usercontrol is as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0091_7AF8253E.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0091_7AF8253E.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0091_thumb_5279432A.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image009[1]" alt="clip_image009[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0091_thumb_5279432A.jpg" width="244" border="0" height="49"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;As you can see, there is just a panel control with ID pnlTasks. &lt;/p&gt;  &lt;p&gt;Now we can start writing our code. Basically you need to create a data context object by passing the site url. Once you have the data context object, you can directly query the lists using the object model. I have entered the following code.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;DataContext thisSite = new DataContext(SPContext.Current.Web.Url);     &lt;br&gt;EntityList&amp;lt;Task&amp;gt; tasks = thisSite.GetList&amp;lt;Task&amp;gt;("Tasks");      &lt;br&gt;var highPriorityTasks = from t in tasks      &lt;br&gt;where t.Priority == Priority._1High       &lt;br&gt;select t;      &lt;br&gt;foreach (Task highPriorityTask in highPriorityTasks)      &lt;br&gt;{      &lt;br&gt;&amp;nbsp;&amp;nbsp; pnlTasks.Controls.Add(new LiteralControl("&amp;lt;b&amp;gt;" + highPriorityTask.Title + "&amp;lt;/b&amp;gt;&amp;lt;br/&amp;gt;"));      &lt;br&gt;}&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Make sure you included the following using statements in the top of the code file.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;using System.Linq;     &lt;br&gt;using Microsoft.SharePoint;      &lt;br&gt;using Microsoft.SharePoint.Linq;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The snap shot for the entire code is given below .&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0111_459EED0C.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0111_459EED0C.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0111_thumb_03B807BE.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image011[1]" alt="clip_image011[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0111_thumb_03B807BE.jpg" width="244" border="0" height="141"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I have deployed the web part to my SharePoint farm. In the home page, I inserted the LinqTestWebpart in the page. The output of the page is as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0121_42A98859.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0121_42A98859.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0121_thumb_20717CD3.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image012[1]" alt="clip_image012[1]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0121_thumb_20717CD3.png" width="244" border="0" height="179"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;As you have seen, with couple of lines of code, we can do complex tasks. In real time you will have some data bound control such as grid view /list view and bind the results gained from LINQ to the control directly. With LINQ to SharePoint, you will get access to the lists as native objects, the possibilities for developers are seamless and you are not supposed to worry about the CAML syntax.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8403171" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="Sharepoint" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Sharepoint/default.aspx" /><category term="SharePoint 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/SharePoint+2010/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/sreejukg/archive/tags/C_2300_/default.aspx" /><category term="Visual Studio 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2010/default.aspx" /><category term="User Controls" scheme="http://weblogs.asp.net/sreejukg/archive/tags/User+Controls/default.aspx" /></entry><entry><title>Display weather information in your site using jQuery and Yahoo services</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/04/17/display-weather-information-in-your-site-using-jquery-using-yahoo-services.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/04/17/display-weather-information-in-your-site-using-jquery-using-yahoo-services.aspx</id><published>2012-04-17T08:34:00Z</published><updated>2012-04-17T08:34:00Z</updated><content type="html">&lt;p&gt;Few months back, I wrote an article about how to retrieve weather information from &lt;a href="http://www.weather.com" mce_href="http://www.weather.com"&gt;www.weather.com&lt;/a&gt; using XOAP services. In that article I was subscribing the data from server side, caching data to SQL server database and then retrieving the information from SQL to display on the page. You can read that article from the link &lt;a href="http://weblogs.asp.net/sreejukg/archive/2011/02/21/include-weather-information-to-your-site-using-weather-com-xmloap-service.aspx" mce_href="http://weblogs.asp.net/sreejukg/archive/2011/02/21/include-weather-information-to-your-site-using-weather-com-xmloap-service.aspx"&gt;http://weblogs.asp.net/sreejukg/archive/2011/02/21/include-weather-information-to-your-site-using-weather-com-xmloap-service.aspx&lt;/a&gt; . After published the article, I received certain queries about retrieving the weather information without using any server side technology, so I decided to write this.&lt;/p&gt;  &lt;p&gt;In this article I am going to explain how you can retrieve weather information from Yahoo services using jQuery and JSONP. Yahoo provides real time weather data for the location of your choice. Yahoo provides lot of options for developers by providing the data in various formats such as RSS, JSON, JSONP etc. To know more about weather services from Yahoo, you can refer the below link. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://developer.yahoo.com/weather/" mce_href="http://developer.yahoo.com/weather/"&gt;http://developer.yahoo.com/weather/&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;To retrieve weather for a particular location, you need to pass two parameters as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;w – WOEID, this parameter refers to the location for weather you are looking for&lt;/p&gt;    &lt;p&gt;u – Unit of weather you would like to receive. This can be either Celsius or Fahrenheit. You can specify c or f for Celsius and Fahrenheit respectively. This parameter is optional and if you didn’t specify any the unit will be Fahrenheit. &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you would like to retrieve the value for w parameter. I am going to explain how you can get this. Just follow the steps, it is easy. Just go to the below url&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weather.yahoo.com/" mce_href="http://weather.yahoo.com/"&gt;http://weather.yahoo.com/&lt;/a&gt; &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0016_255534E2.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0016_255534E2.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0016_thumb_47E94D90.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image001[6]" alt="clip_image001[6]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0016_thumb_47E94D90.png" width="244" border="0" height="159"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt; &lt;code&gt;&lt;/code&gt;  &lt;p&gt;Enter the city name or zip code for the location you are looking for. For ex. for finding weather for Manama, Bahrain, just enter Manama in the text box and press Go.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0026_657B288F.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0026_657B288F.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0026_thumb_7D325FF5.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image002[6]" alt="clip_image002[6]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0026_thumb_7D325FF5.png" width="244" border="0" height="181"&gt;&lt;/a&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This will show all the similar locations available. Click on the location you are looking for. It will show the weather forecast for the location. In the url, you can find the value for the WOEID parameter. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0036_08E7A728.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0036_08E7A728.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0036_thumb_6A4DB67E.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image003[6]" alt="clip_image003[6]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0036_thumb_6A4DB67E.png" width="244" border="0" height="154"&gt;&lt;/a&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The WOEID value for Manama, Bahrain is 1967057. &lt;/p&gt;  &lt;p&gt;Now let us try getting the RSS feed for your location, try the below url, make sure you update the correct value for w parameter. &lt;a href="http://weather.yahooapis.com/forecastrss?w=1967057&amp;amp;u=c" mce_href="http://weather.yahooapis.com/forecastrss?w=1967057&amp;amp;u=c"&gt;http://weather.yahooapis.com/forecastrss?w=1967057&amp;amp;u=c&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The output of the page is as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0046_766F30A5.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0046_766F30A5.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0046_thumb_0C759C38.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image004[6]" alt="clip_image004[6]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0046_thumb_0C759C38.png" width="208" border="0" height="244"&gt;&lt;/a&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The RSS response is based on RSS 2.0 specification and you can refer the &lt;a href="http://developer.yahoo.com/weather/" mce_href="http://developer.yahoo.com/weather/"&gt;http://developer.yahoo.com/weather/&lt;/a&gt; for what fields included in the response. &lt;/p&gt;  &lt;p&gt;Now you know how to get the information using Yahoo services. In order to show the weather information you need to access the data provided by Yahoo from your website. The biggest challenge here is the same origin policy of browsers, by default browser will not allow you to issue a cross domain request. There are workarounds but to achieve across browsers is always a pain. Due to the same origin policy you cannot make a cross domain request to Yahoo site. There is a workaround using JSONP and Yahoo supports this!. Using JSONP, it is possible to make cross domain requests. You can refer this here&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;code&gt;&lt;a href="http://en.wikipedia.org/wiki/JSONP" mce_href="http://en.wikipedia.org/wiki/JSONP"&gt;http://en.wikipedia.org/wiki/JSONP&lt;/a&gt; &lt;/code&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Yahoo offers YQL (Yahoo query language, using this you can retrieve weather compatible with JSONP. YQL allows developers to query the object similar to SQL like syntax. You can read more about YQL here.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;code&gt;&lt;a href="http://developer.yahoo.com/yql/" mce_href="http://developer.yahoo.com/yql/"&gt;http://developer.yahoo.com/yql/&lt;/a&gt; &lt;/code&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The following is the YQL equivalent for getting temperature for Manama using JSON format.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20weather.forecast%20where%20woeid=1967057%20and%20u=%27c%27&amp;amp;format=json&amp;amp;callback=func"&gt;http://query.yahooapis.com/v1/public/yql?q=select * from weather.forecast where woeid=1967057 and u='c'&amp;amp;format=json&amp;amp;callback=func&lt;/a&gt; &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Notice the callback attribute, this is for JSONP padding. You can send the above url to jQuery method getJSON so that it will retrieve the weather data. Make sure you define callback=?, instead of specifying a name for call back, so that jQuery will define the function name for you. &lt;/p&gt;  &lt;p&gt;I have created the below HTML page. The page is very simple and in the body I included a div with id weather. When weather is retrieved, I am going to update this div with the weather information. See my HTML markup&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0066_63F6BA23.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0066_63F6BA23.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0066_thumb_7E56AD3A.jpg" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image006[6]" alt="clip_image006[6]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0066_thumb_7E56AD3A.jpg" width="244" border="0" height="103"&gt;&lt;/a&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;When I browse the page, I can see the weather in my page as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image0076_4805852B.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image0076_4805852B.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image0076_thumb_5426FF52.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image007[6]" alt="clip_image007[6]" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image0076_thumb_5426FF52.png" width="244" border="0" height="203"&gt;&lt;/a&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once you get the data as JSON, you can access any property available in the JSON response. &lt;/p&gt;  &lt;p&gt;For example, if you want to retrieve Current temperature, you can use&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;data.query.results.channel.item.condition.temp&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;To retrieve date &amp;amp; time of the weather data you can use&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;data.query.results.channel.item.condition.date&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;To retrieve the current condition code you can refer &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;data.query.results.channel.item.condition.code&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;It is easy to customize the output as you require. I recommend you to read Yahoo usage policy to make sure you comply with the terms of use. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8393893" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="General Software Development" scheme="http://weblogs.asp.net/sreejukg/archive/tags/General+Software+Development/default.aspx" /><category term="weather" scheme="http://weblogs.asp.net/sreejukg/archive/tags/weather/default.aspx" /><category term="Web Services" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Web+Services/default.aspx" /><category term="AJAX" scheme="http://weblogs.asp.net/sreejukg/archive/tags/AJAX/default.aspx" /><category term="jQuery" scheme="http://weblogs.asp.net/sreejukg/archive/tags/jQuery/default.aspx" /></entry><entry><title>Integrate BING API for Search inside ASP.Net web application</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/sreejukg/archive/2012/04/07/integrate-bing-api-for-search-inside-asp-net-web-application.aspx" /><id>http://weblogs.asp.net/sreejukg/archive/2012/04/07/integrate-bing-api-for-search-inside-asp-net-web-application.aspx</id><published>2012-04-07T13:51:00Z</published><updated>2012-04-07T13:51:00Z</updated><content type="html">&lt;p&gt;&lt;b&gt;Update:&amp;nbsp; Since Bing has moved Search API to Windows Azure Market place, I wrote a new article about the new Bing Search API. You can read this from the below link&lt;br&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;a href="http://weblogs.asp.net/sreejukg/archive/2012/07/04/integrate-bing-search-api-to-asp-net-application.aspx" mce_href="http://weblogs.asp.net/sreejukg/archive/2012/07/04/integrate-bing-search-api-to-asp-net-application.aspx"&gt;&amp;nbsp;http://weblogs.asp.net/sreejukg/archive/2012/07/04/integrate-bing-search-api-to-asp-net-application.aspx&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;As you might already know, Bing is the Microsoft Search engine and is getting popular day by day. Bing offers APIs that can be integrated into your website to increase your website functionality. At this moment, there are two important APIs available. They are&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Bing Search API &lt;/li&gt;    &lt;li&gt;Bing Maps &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The Search API enables you to build applications that utilize Bing’s technology. The API allows you to search multiple source types such as web; images, video etc. and supports various output prototypes such as JSON, XML, and SOAP. Also you will be able to customize the search results as you wish for your public facing website. &lt;/p&gt;  &lt;p&gt;Bing Maps API allows you to build robust applications that use Bing Maps. &lt;/p&gt;  &lt;p&gt;In this article I am going to describe, how you can integrate Bing search into your website. In order to start using Bing, First you need to sign in to &lt;a href="http://www.bing.com/toolbox/bingdeveloper/" mce_href="http://www.bing.com/toolbox/bingdeveloper/"&gt;http://www.bing.com/toolbox/bingdeveloper/&lt;/a&gt; using your windows live credentials. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_2D922734.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image001_2D922734.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_566D1670.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image001" alt="clip_image001" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image001_thumb_566D1670.png" border="0" height="163" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on the Sign in button, you will be asked to enter your windows live credentials. Once signed in you will be redirected to the Developer page. Here you can create applications and get AppID for each application. Since I am a first time user, I don’t have any applications added. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_3E19FC55.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image003_3E19FC55.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_104C3390.jpg" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image003" alt="clip_image003" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image003_thumb_104C3390.jpg" border="0" height="122" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Click on the Add button to add a new application. You will be asked to enter certain details about your application. The fields are straight forward, only thing you need to note is the website field, here you need to enter the website address from where you are going to use this application, and this field is optional too. Of course you need to agree on the terms and conditions and then click Save. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_0E9B67BC.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image005_0E9B67BC.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_1D1663E1.jpg" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image005" alt="clip_image005" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image005_thumb_1D1663E1.jpg" border="0" height="180" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_1B65980D.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image007_1B65980D.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_26AEAC4A.jpg" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image007" alt="clip_image007" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image007_thumb_26AEAC4A.jpg" border="0" height="34" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Once you click on save, the application will be created and application ID will be available for your use. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_7DC39740.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image008_7DC39740.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_02C5D4F0.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image008" alt="clip_image008" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image008_thumb_02C5D4F0.png" border="0" height="145" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now we got the APP Id. Basically Bing supports three protocols. They are JSON, XML and SOAP. JSON is useful if you want to call the search requests directly from the browser and use JavaScript to parse the results, thus JSON is the favorite choice for AJAX application. XML is the alternative for applications that does not support SOAP, e.g. flash/ Silverlight etc. SOAP is ideal for strongly typed languages and gives a request/response object model. In this article I am going to demonstrate how to search BING API using SOAP protocol from an ASP.Net application. &lt;/p&gt;  &lt;p&gt;For the purpose of this demonstration, I am going to create an ASP.Net project and implement the search functionality in an aspx page. &lt;/p&gt;  &lt;p&gt;Open Visual Studio, navigate to File-&amp;gt; New Project, select ASP.Net empty web application, I named the project as “BingSearchSample”. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_798999AE.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image010_798999AE.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_67E98916.jpg" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image010" alt="clip_image010" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image010_thumb_67E98916.jpg" border="0" height="149" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Add a Search.aspx page to the project, once added the solution explorer will looks similar to the following.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_14260FFB.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image011_14260FFB.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_4B8C2129.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image011" alt="clip_image011" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image011_thumb_4B8C2129.png" border="0" height="167" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now you need to add a web reference to the SOAP service available from Bing. To do this, from the solution explorer, right click your project, select Add Service Reference.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_50FA91CD.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image012_50FA91CD.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_5CAFD8FF.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image012" alt="clip_image012" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image012_thumb_5CAFD8FF.png" border="0" height="120" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now the new service reference dialog will appear. In the left bottom of the dialog, you can find advanced button, click on it. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image013_45A157C3.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image013_45A157C3.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image013_thumb_2224B35E.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image013" alt="clip_image013" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image013_thumb_2224B35E.png" border="0" height="198" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now the service reference settings dialog will appear. In the bottom left, you can find Add Web Reference button, click on it. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image014_2E462D85.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image014_2E462D85.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image014_thumb_182F9C26.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image014" alt="clip_image014" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image014_thumb_182F9C26.png" border="0" height="226" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The add web reference dialog will appear now. Enter the URL as &lt;a href="http://api.bing.net/search.wsdl?AppID=%3cYourAppIDHere%3e&amp;amp;version=2.2" mce_href="http://api.bing.net/search.wsdl?AppID=%3cYourAppIDHere%3e&amp;amp;version=2.2"&gt;http://api.bing.net/search.wsdl?AppID=&amp;lt;YourAppIDHere&amp;gt;&amp;amp;version=2.2&lt;/a&gt; (replace &amp;lt;yourAppIDHere&amp;gt; with the appID you have generated previously) and click on the &lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image015_213C27A7.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image015_213C27A7.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image015_thumb_590E6BCA.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image015" alt="clip_image015" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image015_thumb_590E6BCA.png" border="0" height="27" width="27"&gt;&lt;/a&gt; button next to it. This will find the web service methods available. You can change the namespace suggested by Bing, but for the purpose of this demonstration I have accepted all the default settings. Click on the Add reference button once you are done. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image017_770C79BE.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image017_770C79BE.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image017_thumb_673CBEED.jpg" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image017" alt="clip_image017" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image017_thumb_673CBEED.jpg" border="0" height="196" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now the web reference to Search service will be added your project. You can find this under solution explorer of your project.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image018_64475A3A.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image018_64475A3A.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image018_thumb_732E8954.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image018" alt="clip_image018" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image018_thumb_732E8954.png" border="0" height="237" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now in the Search.aspx, that you previously created, place one textbox, button and a grid view. For the purpose of this demonstration, I have given the identifiers (ID) as txtSearch, btnSearch, gvSearch respectively. The idea is to search the text entered in the text box using Bing service and show the results in the grid view. In the design view, the search.aspx looks as follows. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image019_730E3DBA.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image019_730E3DBA.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image019_thumb_3FDE161F.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image019" alt="clip_image019" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image019_thumb_3FDE161F.png" border="0" height="244" width="237"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In the search.aspx.cs page, add a using statement that points to net.bing.api. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image020_6FA89213.png" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image020_6FA89213.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image020_thumb_06F39685.png" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image020" alt="clip_image020" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image020_thumb_06F39685.png" border="0" height="102" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I have added the following code for button click event handler.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/image_184485C8.png"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/image_thumb_4B23F062.png" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" alt="image" border="0" height="157" width="244"&gt;&lt;/a&gt; &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The code is very straight forward. It just calls the service with your AppID, a query to search and a source for searching. Let us run this page and see the output when I enter Microsoft in my textbox. &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image023_3AAB6709.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image023_3AAB6709.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image023_thumb_69ADA2E0.jpg" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image023" alt="clip_image023" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image023_thumb_69ADA2E0.jpg" border="0" height="97" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If you want to search a specific site, you can include the site name in the query parameter. For e.g. the following query will search the word Microsoft from &lt;a href="http://www.microsoft.com" mce_href="http://www.microsoft.com"&gt;www.microsoft.com&lt;/a&gt; website.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;searchRequest.Query = “site:www.microsoft.com Microsoft”; &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The output of this query is as follows.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/sreejukg/clip_image025_6149CD89.jpg" mce_href="http://weblogs.asp.net/blogs/sreejukg/clip_image025_6149CD89.jpg"&gt;&lt;img src="http://weblogs.asp.net/blogs/sreejukg/clip_image025_thumb_0CADEE84.jpg" style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image025" alt="clip_image025" mce_src="http://weblogs.asp.net/blogs/sreejukg/clip_image025_thumb_0CADEE84.jpg" border="0" height="66" width="244"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Integrating BING search API to your website is easy and there is no limit on the customization of the interface you can do. There is no Bing branding required so I believe this is a great option for web developers when they plan for site search. &lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=8379362" width="1" height="1"&gt;</content><author><name>sreejukg</name><uri>http://weblogs.asp.net/members/sreejukg.aspx</uri></author><category term="ASP.Net" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net/default.aspx" /><category term="ASP.Net 4" scheme="http://weblogs.asp.net/sreejukg/archive/tags/ASP.Net+4/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio/default.aspx" /><category term="C#" scheme="http://weblogs.asp.net/sreejukg/archive/tags/C_2300_/default.aspx" /><category term="Visual Studio 2010" scheme="http://weblogs.asp.net/sreejukg/archive/tags/Visual+Studio+2010/default.aspx" /></entry></feed>