<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>bits and bytes &#187; bytes</title>
	<atom:link href="http://bitsnbytesblog.com/?feed=rss2&#038;cat=6" rel="self" type="application/rss+xml" />
	<link>http://bitsnbytesblog.com</link>
	<description>a little peek inside my head</description>
	<lastBuildDate>Thu, 10 May 2012 04:08:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Perfect Gift for Mom</title>
		<link>http://bitsnbytesblog.com/2012/05/perfect-gift-for-mom/</link>
		<comments>http://bitsnbytesblog.com/2012/05/perfect-gift-for-mom/#comments</comments>
		<pubDate>Thu, 10 May 2012 03:57:42 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bits]]></category>
		<category><![CDATA[bytes]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[gift]]></category>
		<category><![CDATA[mom]]></category>
		<category><![CDATA[mothers day]]></category>

		<guid isPermaLink="false">http://bitsnbytesblog.com/?p=2931</guid>
		<description><![CDATA[Mothers&#8217; Day is fast approaching &#8211; I hope you have a lovely gift picked out already! If you are getting mom something techie like a new laptop or windows phone, or finally friending her on Facebook, this might be the perfect little addon. Mique from Thirty Handmade Days has come up with this printable &#8216;Guide &#8230;]]></description>
			<content:encoded><![CDATA[<p><a href="http://bitsnbytesblog.com/wp-content/uploads/2012/05/137219119866691603_yjlbWE7g_c.jpg"><img src="http://bitsnbytesblog.com/wp-content/uploads/2012/05/137219119866691603_yjlbWE7g_c-319x400.jpg" alt="" title="Awwh.. Mom!" width="190" class="alignright size-medium wp-image-2934 colorbox-2931" style="margin-right: 50px; margin-left: 20px;" /></a></p>
<p>Mothers&#8217; Day is fast approaching &#8211; I hope you have a lovely gift picked out already!</p>
<p>If you are getting mom something techie like a new laptop or windows phone, or finally friending her on Facebook, this might be the perfect little addon.  </p>
<p>Mique from <a href="http://thirtyhandmadedays.com/2012/05/technology/" class="colorbox-link">Thirty Handmade Days</a> has come up with this printable &#8216;Guide to Technology&#8217; that you can slip into mom&#8217;s card this weekend.</p>
<p>It covers the basics of Facebook, Twitter, Pinterest and Instagram in mom-friendly language.  Now Mom can pin, post and tweet with confidence!<br />
<br/></p>
<div class="wp-caption aligncenter" style="width: 460px"><a href="http://thirtyhandmadedays.com/2012/05/technology/" class="colorbox-link"><img class="colorbox-2931"  alt="Ultimate Mom&#039;s Guide to Technology" src="http://thirtyhandmadedays.com/wp-content/uploads/2012/04/ultimatemomsguide.png" title="Ultimate Mom&#039;s Guide to Technology" width="450" height="613" /></a><p class="wp-caption-text">Ultimate Mom&#039;s Guide to Technology</p></div>
<p>So <a href="http://thirtyhandmadedays.com/2012/05/technology/?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=Feed%3A+30handmadedays+%2830days%29" class="colorbox-link">head over there</a> and download a copy! You&#8217;re so thoughtful! (Don&#8217;t forget a card to put it in!)</p>
<p>
<span style="color: white;">.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2012/05/perfect-gift-for-mom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Combined RSS feeds in Outlook 2010</title>
		<link>http://bitsnbytesblog.com/2012/04/combined-rss-feeds-in-outlook-2010/</link>
		<comments>http://bitsnbytesblog.com/2012/04/combined-rss-feeds-in-outlook-2010/#comments</comments>
		<pubDate>Tue, 24 Apr 2012 19:59:35 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bytes]]></category>
		<category><![CDATA[MS Office]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Web Stuff]]></category>
		<category><![CDATA[feedburner]]></category>
		<category><![CDATA[feeds]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[outlook]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://bitsnbytesblog.com/?p=2850</guid>
		<description><![CDATA[I received a comment from a reader the other day, asking: What is &#8220;the simplest way I can be warned whenever a fresh article has been made?&#8221; - Nidia It actually came at a pretty good time, because this is something that had been bugging me for awhile too &#8211; I have a number of &#8230;]]></description>
			<content:encoded><![CDATA[<p>I received a <a href="http://bitsnbytesblog.com/2011/09/a-sql-tip-string-concatenate/#comment-349" target="_new">comment</a> from a reader the other day, asking:</p>
<div class="roundedDiv" style="margin-left: 100px; font-family: 'Jayne Print'; font-size: 16px; padding: 20px;"><span style="font-color: #C55D65;"><span style="font-color: #C55D65;">What is &#8220;the simplest way I can be warned whenever a fresh article has been made?&#8221;</p>
<p></span></span></p>
<div style="text-align: right; margin-bottom: -20px;">- Nidia</div>
</div>
<p>It actually came at a pretty good time, because this is something that had been bugging me for awhile too &#8211; I have a number of blogs that I like to read, but really don&#8217;t have time to browse all of them on a daily basis and see if there is anything new. Plus, sometimes a site will cover a range of topics, and I might not be interested in every post. Some blogs post daily (or twice daily!) and sometimes bloggers take 6 months off since their last post <img src='http://bitsnbytesblog.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley colorbox-2850' /> </p>
<p>So what is the best way to be alerted whenever there is new content available?</p>
<p>If the sites post updates to Twitter or Facebook, you can always subscribe to their feeds there, though some people prefer to keep their Facebook just for friends. Other sites might offer to email you when they have a new post &#8211; but who like giving out their email address? I find that the best solution is with RSS.</p>
<h2 class="pinkband">Outlook to the Rescue!</h2>
<div class="sideNote" style="width: 225px;">
<h4>RSS</h4>
<p>Really Simple Syndication: an XML-based standard and format used to distribute recent news and other frequently updated content appearing on a Web site.</p>
<p>In other words, a way to subscribe anonymously to a website and recive their new posts in a stripped-down, simple format.</p>
<div style="text-align: right;"><a href="http://windows.microsoft.com/en-US/windows-vista/Using-feeds-RSS" target="_new">More about RSS</a></div>
</div>
<p>I&#8217;ve been playing around with this for a little while, and I think I&#8217;ve finally come up with a solution that I like.</p>
<p>I use Outlook to manage all my different email addresses (yes, I actually have 5 or 6, all for different purposes), and my different calendars and tasks, so I am in Outlook at least a handful of times a day. This makes it a perfect place to find out about new content from my favourite sites.</p>
<p>If you&#8217;ve ever toyed around with RSS feeds, you probably are getting a lightbulb here that says they must be involved. If you add an RSS subscription to Outlook, it will generate a folder for you for each site, and let you know when there are new articles. To really use this effectivly though, I suggest modifying your subscriptions to show up by <em>category</em>. Most likely, you like sites with certain types of content, maybe a handful of groups. Wouldn&#8217;t it be more useful to see what is new and available based on the <em>type</em> of post?</p>
<h2 class="pinkband">My Solution</h2>
<p><a href="http://bitsnbytesblog.com/wp-content/uploads/2012/04/feeds.png"><img class="alignright size-medium wp-image-2868 shadowImage colorbox-2850" title="Outlook Feeds" src="http://bitsnbytesblog.com/wp-content/uploads/2012/04/feeds-219x400.png" alt="" width="219" height="400" /></a>First, take a moment to think about how you want things to show up in Outlook. For me, I keep a list of my inboxes in my &#8216;Favourites&#8217; sidebar, and I wanted my feeds &#8211; grouped by category &#8211; to appear just underneath. I came up with a handful of categories that the sites I visit tend to fall in to: Recipes, Crafts, Tech, Home Decor, etc.</p>
<p>The first thing to do is to scroll down to your &#8216;Outlook Data File&#8217; section in the left sidebar (should appear below your various email accounts), find the RSS Feeds section, and add these folders. This will be the home for all the new posts that are published. I added each of these folders to my Favourites section so they would appear at the top &#8211; but you don&#8217;t have to do this.</p>
<p>Next, start visiting your favourite sites. Look for an RSS icon <img class="alignnone size-full wp-image-2870 colorbox-2850" style="vertical-align: middle;" title="RSS icon" src="http://bitsnbytesblog.com/wp-content/uploads/2012/04/rss_icon-150x150.png" alt="" width="20" height="20" /> somewhere on the site where you can access the site&#8217;s RSS feed. In Internet Explorer, the browser may detect the available feeds for you and light up an RSS icon in the top right of your tool bar. Click the icon, and you will navigate to a page displaying the rss feed (the url include words like &#8216;/feeds/&#8217; or &#8216;rss&#8217; or &#8216;feedburner&#8217;). As an example, here is a link to this blog&#8217;s <a href="http://feeds.feedburner.com/bitsnbytesblog" target="_new">main rss feed</a>.</p>
<p><a href="http://bitsnbytesblog.com/wp-content/uploads/2012/04/addrsstooutlook.png"><img class="alignleft size-thumbnail wp-image-2851 colorbox-2850" title="Add Rss Feed to Outlook" src="http://bitsnbytesblog.com/wp-content/uploads/2012/04/addrsstooutlook-150x136.png" alt="" width="150" height="136" /></a><br />
Copy the feed url, and return to Outlook. Right-click on the &#8216;Rss Feeds&#8217; section, and select &#8216;Add a new RSS Feed&#8217;.</p>
<p>Next, paste the copied feed URL and press OK. Here is where we get fancy: press the &#8216;Advanced&#8230;&#8217; button to bring up the advanced settings dialog, and find the Delivery Location section. Here you can see that the default settings are to create a new folder for the posts from each feed you add. Instead, you can redirect the incoming posts to the custom folders we just created. <a href="http://bitsnbytesblog.com/wp-content/uploads/2012/04/advanceddialog.png"><img class="alignright size-thumbnail wp-image-2852 colorbox-2850" title="Advanced Settings Dialog" src="http://bitsnbytesblog.com/wp-content/uploads/2012/04/advanceddialog-150x150.png" alt="" width="150" height="150" /></a>Multiple feeds will be filtered in to your different folders, regardless of which site they are coming from. Cool!</p>
<p>Once youve added all your feeds, select one of the folders you created and see the posts come rolling in! You can now preview all the newest articles from your favourite sties without having to leave Outlook. Find something good? Use the &#8216;View Article&#8217; button at the bottom for a direct link back to the site to leave your comments or to view the full article formatted as it was intended.</p>
<div class="pinkShadow">
<h3>Can&#8217;t Choose a Category?</h3>
<p>Sometimes a site offers posts on multiple topics &#8211; take this site for example! If you subscribe to the main feed, you will see every article regardless of its category. Check to see if the site offers category-specifc feeds (that is, a different feed for each post category). You can find a list of specific feeds available for bits &#8216;n bytes blog on the right-hand sidebar.</p>
<p>Are you a wordpress blogger? Check out <a class="colorbox-link" href="http://www.peachpit.com/articles/article.aspx?p=707909">this article</a> from <a class="colorbox-link" href="http://www.peachpit.com/authors/bio.aspx?a=9fd68625-8109-4abe-9f5e-1dc087264408">Maria Langer</a> on how to generate category or tag-specific rss links!</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2012/04/combined-rss-feeds-in-outlook-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The New And Improved Facebook</title>
		<link>http://bitsnbytesblog.com/2011/09/the-new-and-improved-facebook/</link>
		<comments>http://bitsnbytesblog.com/2011/09/the-new-and-improved-facebook/#comments</comments>
		<pubDate>Mon, 26 Sep 2011 07:59:55 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bytes]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[permissions]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[timeline]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=2065</guid>
		<description><![CDATA[The New Timeline! Control How you Share Control What you See The main thing that Google+ had going for it was a unique way to manage your &#8216;groups&#8217; (or &#8216;circles&#8217;, they called them) of friends. The idea is so simple, yet totally opens up the amount of information we are willing, (and want,) to share. &#8230;]]></description>
			<content:encoded><![CDATA[<ul>
<li style="float: left; margin-left: 25px;"><a href="#Timeline">The New Timeline!</a>
<li style="float: left; margin-left: 25px;"><a href="#WhatYouShare">Control How you Share</a>
<li style="float: left; margin-left: 25px;"><a href="#WhatYouSee">Control What you See</a>
</ul>
<p> <br/></p>
<p>The main thing that Google+ had going for it was a unique way to manage your &#8216;groups&#8217; (or <a href="http://www.google.com/support/plus/bin/static.py?hl=en&#038;guide=1257347&#038;page=guide.cs&#038;rd=1" class="colorbox-link">&#8216;circles&#8217;</a>, they called them) of friends. The idea is so simple, yet totally opens up the amount of information we are willing, (and want,) to share.  By organizing your friends in to groups &#8211; a group for close friends, a group for acquaintances, a group for your book club, church group or sports team &#8211; you can choose to share certain information with some friends, and not with others.</p>
<p>It is such a compelling idea that some people, (myself included,) made our way over to Google+ to try it out.  Fortunately for those of us who were dreading migrating our whole online life from Facebook to Google, Facebook has changed their model to give us the same kind of freedom.</p>
<p>On Thursday&#8217;s <a href="http://www.facebook.com/f8" target="_new">f8 conference</a>, Mark Zuckerberg <a href="http://www.msnbc.msn.com/id/21134540/vp/44628888#44628888" target="_new">announced</a> the new Facebook profile called &#8216;Timeline&#8217; which will be rolling out next week.  I took a look at the developer preview of &#8216;Timeline&#8217;, and the first thing that came to mind was that while this is an amazing way to share information with SOME of my friends, how to I hide this information from others?  Here is a quick peek at the developer preview for you, so that you can see what I&#8217;m talking about.<br />
<br/></p>
<div class="pinkShadow">
<a name="Timeline"></a></p>
<h2 class="pinkband">The New Timeline!</h2>
<p><center><br />
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/311.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/1-400x276.png" alt="" title="My Timeline" width="400" height="276" class="aligncenter size-medium wp-image-2091 shadowpic colorbox-2065" /></a><br />
</center><br />
If you were looking for evidence that you spend entirely to much time online, here it is.  Some people may be repulsed by the idea that they have shared this much of their life online, and others will rejoice in this fact.  I am of the opinion that as long as you only share things that you don&#8217;t care if people know, then share, share away.  I just want to make sure that I can control who gets to see it &#8211; well them and &#8216;big brother facebook&#8217; anyways.</p>
<p>
One thing that does make me ponder a little is that with this new timeline, you can jump from posts from today to posts from 10 years ago, with the click of a button.  Before timeline, you could count on the fact that no one is going to hit &#8216;Show Earlier Posts&#8217; enough times to go back more than a year, so the silly things you posted back in Highschool/College/January would never be seen again.   I will tell you, one of the first things I did when I got my hands on the developer preview of Timeline was to delete a WHOOOLE lot of older posts.  As if my family needs more material to make fun of me for.</p>
<p>Once that was under control, I really started to like Timeline.  It is beautifully put together, with large images, creative views, and wonderful ajax-loaded content.  There are a few things that I really like:<br />
<br/></p>
<p style="margin-left: 20px; margin-right: 15px"><strong>Types for Updates -</strong> Updates now have more character: you can use special types of updates to post that you started a new job, graduated from school, bought a house, traveled, or even broke a bone.  These updates are noted as being more important than your run of the mill status updates, and get special post formats like this one, for when I went on a trip to Italy:<?p></p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/3.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/3.png" alt="" title="Special Status Updates" class="alignleft size-medium wp-image-2093 shadowpic colorbox-2065" style="margin-left: 10px;" /></a> </p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/4.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/4-150x150.png" alt="" title="Travel Update" height="125"  class="alignleft size-thumbnail wp-image-2094 colorbox-2065" /></a><br />
<br/></p>
<p style="margin-left: 20px; margin-right: 15px"><strong>The Cover Image -</strong> I think it is great that they gave users the ability to display a Cover Image as well as a profile picture.  Parents will no longer have to sacrifice their profile picture to post a picture of their kids!  It is a great way for people to express themselves, and it can be changed every day if you want.</p>
<p><br/> </p>
<p style="margin-left: 20px; margin-right: 15px"><strong>Map View -</strong> This is probably my favourite new feature.  Hitting the map button on your profile will  display your timeline on a map &#8211; any posts or pictures that have a location associated with them will appear on the map at that location:</p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/5.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/5-150x150.png" alt="" title="Map View" width="150" height="150" class="alignleft size-thumbnail wp-image-2095 colorbox-2065" /></a></p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/6.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/6-150x150.png" alt="" title="Map View" width="150" height="150" class="alignleft size-thumbnail wp-image-2096 colorbox-2065" /></a></p>
<p>I&#8217;m not a huge fan of &#8220;Checking In&#8221; &#8211; I really don&#8217;t think my 100 closest friends need to know that I&#8217;m at Macys.  But I do like my vacation photos to have locations (but not until I get back home… why not just invite people to come rob my house, right Mom?) especially with this neat new way to view them.</p>
<p>You can zoom in and see the posts, check ins and pictures by clicking on one of the pink locations, choose locations by date, or just scroll through them randomly.  I haven&#8217;t traveled that much, but I imagine some people would have some very interesting maps!</p>
</div>
<p></br></p>
<div class="sideNote" style="width:350px;">
<h4>Adding Locations:</h4>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/7.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/7-150x150.png" alt="" title="Adding a Location" width="125"  class="alignleft size-thumbnail wp-image-2097 colorbox-2065" /></a></p>
<p>So how do you associate a location with a photo? It is actually very easy &#8211; just like how you can tag another person in your photo, you can use the &#8220;Add Location&#8221; button and type in the location&#8217;s name.  By default, it will start searching nearby, but you can change that by finding the spot that says &#8220;Searching places near…&#8221; and pressing Change.  You can mark a location as a City, Restaurant, Park, Airport &#8211; you name it!
</p></div>
<p>Now that you&#8217;ve seen all the details of your life that are available to see on the new Timeline, you might be thinking it is time to up your privacy settings.</p>
<p>If you have been on Facebook for more than a few years, chances are there are people on your list of &#8216;friends&#8217; with whom you are no longer that friendly.  You fall out of touch, or maybe you were never that good of friends to begin with.  For whatever reason, it seems a little harsh to hit that &#8216;unfriend&#8217; button, so you carry on receiving each others unwanted updates.  </p>
<p>Now with Timeline, you may feel that giving someone like this access to your life&#8217;s &#8220;scrapbook&#8221; invades a little too much on your privacy.  Luckily, with a little configuration here and there, you can change how much access to grant to each person.</p>
<p><br/></p>
<div class="pinkShadow">
<a name="WhatYouShare"></a></p>
<h2 class="pinkband">Control How You Share</h2>
<p>In order to give you more flexible control over which people you share your information with, facebook has made their friend &#8216;Lists&#8217; features more predominant.   You can control exactly which people see what information by organizing your contacts in to groups, and giving specific permissions to each group.</p>
<h3>Friend Lists</h3>
<p>You may have already noticed a &#8220;Lists&#8221; section to the left of your newsfeed with list of friends generated for you.  Hit the &#8220;MORE&#8221; button to view all the  friend lists you currently have.</p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/9.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/9-400x271.png" alt="" title="Friend Lists" width="400" height="271" class="alignright size-medium wp-image-2099 shadowpic colorbox-2065" /></a></p>
<p>There are a few types of lists here.<br />
<br/><br />
Everyone will have the following three lists:  &#8220;Close Friends&#8221; list, the &#8220;Acquaintances&#8221; list, and the &#8220;Restricted&#8221; list.  Contacts will only end up on these lists by you manually putting them there.<br />
<br/><br />
Next there are some &#8220;Smart Lists&#8221; generated for you, based on information you have listed in your profile.   Smart lists are updated automatically &#8211; for example, if you put in your profile that you went to XYZ University, Facebook will generate a list for you called XYZ University.  All of your contacts who also said they went there will be on this list, and the list will change as people update their profiles.  You can tell if a list is a smart list by the lightning bolt beside the name:<br />
<center><br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/10.png" alt="" title="Smart Lists" class="aligncenter size-full wp-image-2100 shadowpic  colorbox-2065" /><br />
 </center></p>
<p>Lists that you create yourself will show up here as well.  You can create lists for groups of friends with common interests, in order to share information with only the relevant people (more on this <a href="#YourPosts">below</a>).</p>
<p>For now, the first thing to do is go through your contact list and add some of them to one of the  &#8220;Close Friends&#8221; list, the &#8220;Acquaintances&#8221; list, and the &#8220;Restricted&#8221; list. </p>
<ul style="padding: 0px 40px 0px 40px; font-size: 11pt/12pt; ">
<li style="margin-bottom: 10px;">Add people to your <span style="color: #8A4E52">&#8216;Close Friends&#8217;</span> list with whom you would like to share the most, and see the most of their updates in your newsfeed.</li>
<li style="margin-bottom: 10px;">Add people to your <span style="color: #8A4E52">&#8216;Acquaintances&#8217;</span> list whom you would like to share less with, and see less of their updates in your newsfeed.</li>
<li style="margin-bottom: 10px;">Add people to your <span style="color: #8A4E52">&#8216;Restricted&#8217;</span> list whom you don&#8217;t really want to share anything personal, and you don&#8217;t want them to show up in your newsfeed.</li>
<li>If someone doesn&#8217;t fit any of these requirements, just leave them out of all of the groups.</li>
</ul>
<p>Facebook will use these groups to determine which information to show in your news feed.  Posts from people in your &#8216;Close Friends&#8217; group will be considered more important to you, and will appear closer to the top.  Posts from people in your &#8216;Acquaintances&#8217; group will be considered less important, and will appear farther down your newsfeed.  </p>
<p><br/></p>
<h3>Protect your Profile</h3>
<p>	Your profile can potentially have a lot of personal information on it &#8211; which is fine for some of your contacts to see, but not necessarily all of them.  Luckily, you can now configure exactly which information is available for which people.<br />
	<br/></p>
<p>	Enter the &#8216;Edit Profile&#8217; area, and note the small dropdowns at the end of each line.   You can use this dropdown to set who can see the information on this line.<br />
<center><br />
	<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/14.png" alt="" title="New Profile"  class="aligncenter wp-image-2104 shadowpic colorbox-2065" /><br />
</center></p>
<ul style="padding: 0px 40px 0px 40px;">
<li style="margin-bottom: 10px;"> <span style="color: #8A4E52">&#8216;Public&#8217; </span>means anyone on Facebook can see this information while visiting your profile.
<li style="margin-bottom: 10px;"> <span style="color: #8A4E52">&#8216;Friends&#8217;</span> means everyone on your friend&#8217;s list (except those on the restricted list) can see this information.
<li style="margin-bottom: 10px;"> <span style="color: #8A4E52">&#8216;Friends except Acquaintances&#8217; </span>means everyone on your list except those on the Acquaintances and Restricted lists can see this information.
<li style="margin-bottom: 10px;"> <span style="color: #8A4E52">&#8216;Only Me&#8217;</span> means, well, only you can see it.
<li style="margin-bottom: 10px;">You can also choose one of the groups you have created, such as &#8220;Book Group&#8221; or &#8220;Baseball team&#8221;
	</ul>
<p>	If you want to be a little more specific about who sees this information, select the &#8216;Custom &#8216; Setting.  This will bring up a dialog box where you can allow multiple networks, people or groups, and exclude multiple people or groups<br />
<center><br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/12.png" alt="" title="Advanced Permissions" class="aligncenter wp-image-2102 shadowpic colorbox-2065" /><br />
	</center>	 </p>
<p><a name="YourPosts"></a></p>
<h3>Consider how You Share</h3>
<p>Sometimes, you might want to post information that may only be relevant to a small group of your friends.  You may even decide not to share it, because you don&#8217;t want to bother everyone else with this information that is not relevant to them.
<div class="sideNote" style="width:250px;">
<h4>Lists are Private:</h4>
<p>The lists you create are only for you to see.  Adding someone to a list does not mean that they can see the list, or see who else is on it, or even know it exists.  It does not show up anywhere for them to see.  </p>
<p>In the same way, you will have no idea which lists your friends have put you on &#8211; unless all of a sudden you can only see public posts and public information from someone&#8230; try not to let it break your facebook-heart.</p>
</div>
<p>Now, by defining additional friend lists for contacts with common interests, you can share all the information you want, with exactly the people you want to share it with.</p>
<p>You can also create your own lists by hitting the &#8216;Create List&#8217; button, under Lists -> &#8220;MORE&#8221;. <a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/32.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/32-150x150.png" alt="" title="Make a Group" width="150" height="150" class="alignleft size-thumbnail wp-image-2229 colorbox-2065" /></a> Here you can give the list a name and manually select the people on this list.  </p>
<p>It can be useful to create lists for groups of friends with common interests &#8211; for example your baseball team, running group, or church group.   These lists, as well as the smart lists that are generated for you,  will make it easier to share information with only the relevant people .</p>
<p>The next time you go to post something, take a look for the new button beside the &#8220;Post&#8221; button. If you click it, it will drop down to give you the option of who you want to share with.  </p>
<p><center><br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/15.png" alt="" title="Post Permissions"  class="aligncenter  wp-image-2105 shadowpic colorbox-2065" /></a><br />
 </center><br />
You can select from the main lists &#8211; Public (which will be visible to everyone &#8211; your friends, people who aren&#8217;t your friends, and people on your restricted list), Friends, Friends except Acquaintances, or Close Friends lists.  Lists that you have created and use often will also appear here, as in &#8220;Baseball Team&#8221; above.
<div class="sideNote" style="width: 250px;">
<h4>Facebook Remembers:</h4>
<p>Currently, Facebook will remember the last setting you used when posting an update.  The next time you go to post something, it will use this setting automatically &#8211; so make sure to check what it is set to before you hit post!
</p></div>
<p>If you want to be even more specific, or if you want to share with multiple groups, choose the &#8220;Custom&#8221; option, and you will get a popup dialog where you can choose to include specific networks, groups and people, and to restrict specific groups and people.</p>
<h3>Default Settings</h3>
<p>You also should take a minute to set your Default privacy setting.  This setting will be used for times when you post something where there is no place to set the privacy on an individual-post level.  For example, when you are using a Facebook for mobile app, or posting from an external site like Twitter:<br />
<center><br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/16.png" alt="" title="Default Permissions" width="527" height="97" class="aligncenter size-full wp-image-2106 shadowpic colorbox-2065" /><br />
</center><br />
You can set your default privacy setting under the Privacy Settings section.   I use the setting of Friends, except Restricted list.  Look for the following icons to manage your Default setting:<br />
<center><br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/17.png" alt="" title="Default Settings Icon"class="aligncenter size-medium wp-image-2107 shadowpic colorbox-2065" /><br />
</center><br />
While you are here, you may want to check out the minor privacy tweaks available in the sections after these icons, such as &#8220;How you Connect&#8221;, and &#8220;Limit the Audience for Past Posts&#8221;.</p>
<p><Br/><br />
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/18.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/18-150x150.png" alt="" title="Changing Permissions" width="150" height="150" class="alignright size-thumbnail wp-image-2108 colorbox-2065" /></a><br />
<h3>What If I Make a Mistake?</h3>
<p>You can always change your mind about the level of privacy for one of your posts.  If you set the wrong privacy level by mistake, or if you just change your mind, locate the post on your profile, and click the privacy icon, next to the date.  You can choose a new privacy level for any post, at any time.</p>
<p><br/></p>
<h3>Yours or Mine?</h3>
<p>Posts you make to your own profile, (by updating your status,) will inherit your privacy settings &#8211; but the same is not true for posts you leave elsewhere.  If you post something on someone else&#8217;s profile, THEIR default privacy setting will be used. For example, take a look at this post I left on my husband&#8217;s wall when I found out Ben Flajnik was chosen as the next Bachelor:</p>
<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/19.png" alt="" title="The Bachelor" class="aligncenter wp-image-2109  colorbox-2065" /></p>
<p>Even though this is something that I posted, it isn&#8217;t even visible to all of my friends.  Since it is on his profile, it is visible according to his default setting &#8211; Kevin&#8217;s friends of friends.  You might want to save your sensitive information for a private message, incase the person you are posting to has a public profile.  Luckily, I&#8217;m happy to have everyone know about Ben!</p>
<p><br/></p>
<h3>A little bit about Subscriptions</h3>
<p>Are subscriptions the end of Twitter? Probably not.</p>
<p>If you are a frequent tweeter, you might be interested to know that facebook has introduced a public &#8220;Subscribers&#8221; feature.  If you enable this feature,  people don&#8217;t have to be your &#8220;friend&#8221; in order to see your public posts and public profile information. <img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/20.png" alt="" title="Subscriptions" width="137" height="138" class="alignright size-full wp-image-2110 colorbox-2065" /> Subscribing to someone&#8217;s public posts works the same as with twitter, but lacking the keywords and tagging.</p>
<p>Subscribers fall in the same privacy pool as people on your Restricted list &#8211; they can only see your public posts, and can only view the information you mark Public on your profile.</p>
<p>You can enable subscriptions by hitting the &#8220;Allow Subscribers&#8221; button under &#8220;Subscriptions&#8221; below.  You will be prompted with a dialog to fine tune your subscription privacy settings.<br />
<center><br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/211.png" alt="" title="Allow Subscriptions Panel" class="aligncenter wp-image-2112 shadowpic colorbox-2065" /><br />
</center><br />
  Alternatively,  find the &#8220;How you Connect&#8221; section under Privacy Settings.    Editing your &#8220;How you Connect&#8221; settings will bring up this dialog.  Notice at the very top, you can edit your subscriber settings in the Subscribers Tab. Click this link to continue on.<br />
<center> <img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/22.png" alt="" title="Subscribers Tab"   class="aligncenter  size-thumbnail wp-image-2113 shadowpic colorbox-2065" /><br />
</center><br />
Here you can turn on the setting to allow subscribers.</p>
</div>
<p><br/><br />
<a name="UpdatePhotos"></a></p>
<div class="postUpdateLong" >
<h6>Update: Sharing your Photos</h6>
<p>Thanks to reader Maria for asking a question about photo permissions.  You now have a lot more control over how you share your photos on Facebook.  Previously your options were to share photos with &#8216;Friends&#8217; or &#8216;Friends of Friends&#8217;, but now you can share an album with any number of friends lists, or even make it public.</p>
<p style="margin-left: 20px; margin-right: 15px"><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/36.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/36-150x150.png" alt="" title="Create Album" width="150" height="150" class="alignright size-thumbnail wp-image-2324 colorbox-2065" /></a><br />
<strong>Your Albums -</strong> When you create an album, you get to select a privacy setting for the whole album.  This makes it easy to share photos from a trip or event with just the people who attended.  All photos in the album will inherit the privacy setting from the album itself &#8211; you cannot set a different privacy level for each photo.  By default, Facebook will use the privacy setting from the last post that you posted, for your album.  To change this setting, find the &#8216;Share Album With&#8217; section on the Upload Photos dialog, and choose a new setting:
 </p>
<p style="margin-left: 20px; margin-right: 15px">Changing the privacy setting on an existing album is just as easy.  Locate the album in list of albums (Photos -> Albums -> See All) and note the privacy drop down beside the album name.  Alternatively, you could edit the album information and change the permissions there.
</p>
<p style="margin-left: 20px; margin-right: 15px"><strong>Single Pictures -</strong> When you post a single picture to your wall, you can set a different privacy level for each photo same way you would set it if you were posting text or a link (just use the button next to the &#8216;Post&#8217; button).<br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/33-400x237.png" alt="" title="Post Photo" width="400" height="237" class="aligncenter size-medium wp-image-2325 shadowpic colorbox-2065" /></p>
<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/34.png" alt="" title="Update Wall Photo" width="273" height="277" class="alignright size-full wp-image-2322 shadowpic colorbox-2065" />Even though all these photos belong to your &#8220;Wall Photos&#8221; album, they do not need to have the same privacy level.  Once a photo is posted, you can always go back and change the setting by viewing the photo, and selecting another option from the privacy dropdown.<br/><br/> </p>
<p>And don&#8217;t forget: a photo you post on someone else&#8217;s profile will inherit THEIR privacy settings!
 </p>
</p>
</div>
<p><br/><br />
<br/><br />
<br/></p>
<p>Now that your privacy settings are beefed up, lets take a look at how to limit incoming information &#8211; posts from your friends, your subscriptions, and your fan pages.<br />
<br/></p>
<div class="pinkShadow">
<a name="WhatYouSee"></a></p>
<h2 class="pinkband">Control What You See</h2>
<p><br/></p>
<h3>News Feeds</h3>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/24.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/24.png" alt="" title="Favourites" width="241" height="276" class="alignright size-full wp-image-2115 shadowpic colorbox-2065" /></a>If you have been creating groups as you went along with this article, you will now have a bunch of friends lists and you might have noticed that those lists appear to the left hand side of your main newsfeed.  There may be times when you want to see what is new with just one of your lists of friends, instead of your main Newsfeed.  Just click on one of those lists, and your main newsfeed will be filtered to only show posts from people on that list.  You can even bookmark your favorite of these lists, and they will always appear near the top, under &#8220;Favorites&#8221;.<br />
<Br/></p>
<h3>Fine tune Friend&#8217;s Updates:</h3>
<p>You want to hear about what is new with your friends, but not every update is interesting to you.  With friend lists you can now decide exactly which types of activity you want to see from each person.  This feature has been around for awhile, but it is now much easier to configure, right down to the individual person. </p>
<p>This can also be configured for each group, so you might want to start with that.  Select a friend list, and then hit the Manage List button at the top right hand corner, and select &#8216;Choose Update Types…&#8217; .<br />
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/26.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/26.png" alt="" title="Manage Update Typtes" width="154" height="223" class="alignright size-full wp-image-2117 shadowpic colorbox-2065" /></a><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/25.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/25.png" alt="" title="Manage Update Types" width="177" height="137" class="alignright size-full wp-image-2116 shadowpic colorbox-2065" /></a><br />
Here you can choose, (by checking and unchecking,) which types of updates you want to receive from people in this group.</p>
<p>Next, you can fine tune these settings on a per-person level.  You can change these settings almost everywhere that the person&#8217;s name appears as a link &#8211; on a post, in your friends list, or on your profile. Just hover over their name, and adjust the check marks in the same way you did for the group.</p>
<p>You can also make these changes by finding the Subscribed button on their profile, and hovering over it to bring out the drop down list<br />
<center><br />
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/28.png" alt="" title="Settings Buttons" width="319" height="43" class="aligncenter size-full wp-image-2119 shadowpic colorbox-2065" /></center></p>
<h3>Fan Pages</h3>
<p>You have considerably  less choice when it comes to the visibility of fan page page posts.  By choosing to mark them as Top Stories in your newsfeed, you will see more of them.  Otherwise, you can select to Hide all their posts.  Those are the only options you have for Fan Pages.</p>
<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/09/29.png" alt="" title="Fan Pages - Top Story"   class="shadowpic wp-image-2120 colorbox-2065" />
</div>
<p><Br/></p>
<p>Whew! Thats it!  I hope you feel more informed about the new privacy features on Facebook.  If there is something you are curious about that I haven&#8217;t covered, feel free to leave a comment and I&#8217;ll try to cover it for you!<br />
<br/><br />
<br/></p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/09/the-new-and-improved-facebook/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>A SQL Tip: String Concatenate</title>
		<link>http://bitsnbytesblog.com/2011/09/a-sql-tip-string-concatenate/</link>
		<comments>http://bitsnbytesblog.com/2011/09/a-sql-tip-string-concatenate/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 06:08:12 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bytes]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Concatenate]]></category>
		<category><![CDATA[Grouping]]></category>
		<category><![CDATA[String]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=1965</guid>
		<description><![CDATA[SQL Server has a lot of useful built-in aggregate functions, but for some reason there is nothing built-in (that I know of,) to concatenate strings. This drives me batty. I have this problem over and over again, and have been looking for an elegant solution for a while now. The problem is always the same: &#8230;]]></description>
			<content:encoded><![CDATA[<p><br/></p>
<p>SQL Server has a lot of useful built-in <a class="colorbox-link" href="http://msdn.microsoft.com/en-us/library/ms173454.aspx">aggregate functions</a>, but for some reason there is nothing built-in (that I know of,) to concatenate strings. This drives me batty. I have this problem over and over again, and have been looking for an elegant solution for a while now. The problem is always the same:</p>
<p>I have data like this:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p><strong>Table:</strong> Cars<br />
<br/></p>
<table style="width: 300px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; border: 1px dashed black;">
<tbody>
<tr>
<td style="border: 0px; border-bottom: 1px solid black; background-color: #eeeeee; font-family: 'Courier New'; font-weight: 800; font-size: 10pt;">Make</td>
<td style="border: 0px; border-bottom: 1px solid black; font-weight: 800; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Model</td>
</tr>
<tr>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Toyota</td>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Camry</td>
</tr>
<tr>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Ford</td>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Focus</td>
</tr>
<tr>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Toyota</td>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Corolla</td>
</tr>
<tr>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Toyota</td>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Prius</td>
</tr>
<tr>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Jeep</td>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Cherokee</td>
</tr>
<tr>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Ford</td>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Explorer</td>
</tr>
</tbody>
</table>
</div>
<p>and I want to get the results, for example, with all the models for Toyota, like this:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px; ">
<table style="width: 300px; border: 1px dashed black;">
<tbody>
<tr>
<td style="border: 0px; border-bottom: 1px solid black; font-weight: 800; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Make</td>
<td style="width: 25px; border: 0px; border-bottom: 1px solid black; background-color: #eeeeee;"></td>
<td style="border: 0px; border-bottom: 1px solid black; font-weight: 800; background-color: #eeeeee; font-family: 'Courier New'; text-align: left; font-size: 10pt;">Models</td>
</tr>
<tr>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt;">Toyota</td>
<td style="width: 25px; border: 0px; background-color: #eeeeee;"></td>
<td style="border: 0px; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; text-align: left;">Camry, Corolla, Prius</td>
</tr>
</tbody>
</table>
</div>
<p>It seems like it should be easy &#8211; it seems like it should be as simple as <a class="colorbox-link" href="http://msdn.microsoft.com/en-us/library/ms177673.aspx">Grouping By</a> the Car&#8217;s Make column. I&#8217;ve seen solutions where you <a class="colorbox-link" href="http://stackoverflow.com/questions/273238/how-to-use-group-by-to-concatenate-strings-in-sql-server">Create and Drop tables</a>, and even methods where you would <a class="colorbox-link" href="http://www.eggheadcafe.com/software/aspnet/28523243/concatenate-string-using-group-by.aspx">create and parse xml</a> from your results. It just seems like there should be an easier way.</p>
<p>Well there is.</p>
<p>Finally I have stumbled upon it, and I wanted to share in case anyone else runs in to this problem as much as I do:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p>declare @result varchar(50);<br />
select @result = coalesce(@result + &#8216;, &#8216;, &#8221;) + [COLUMNNAME]<br />
from [Table]</p>
</div>
<p>In our car example above, this becomes</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p>declare @models varchar(50);<br />
select @models = coalesce(@models + &#8216;, &#8216;, &#8221;) + MODEL<br />
from CARS<br />
WHERE MAKE = &#8216;Toyota&#8217;;
</p></div>
<p>Tah-Dah!</p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/09/a-sql-tip-string-concatenate/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Why I Bing (and Decide)</title>
		<link>http://bitsnbytesblog.com/2011/08/why-i-bing-and-decide/</link>
		<comments>http://bitsnbytesblog.com/2011/08/why-i-bing-and-decide/#comments</comments>
		<pubDate>Thu, 11 Aug 2011 22:47:40 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bytes]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Bing]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=1778</guid>
		<description><![CDATA[I was a loyal Googler for many years. When it came out, I loved it, cherished it, and promised never to stray. (And honestly, as an upgrade from Webcrawler, it was like night and day ). For close to 10 years I kept that promise, telling everyone who would listen about how great Google was &#8230;]]></description>
			<content:encoded><![CDATA[<p>I was a loyal Googler for many years. When it came out, I loved it, cherished it, and promised never to stray. (And honestly, as an upgrade from Webcrawler, it was like night and day <img src='http://bitsnbytesblog.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley colorbox-1778' />  ).  For close to 10 years I kept that promise, telling everyone who would listen about how great Google was and how they should use it too. Then one day a friend of mine introduced me to Bing. &#8220;No way&#8221; I thought, &#8220;It could never be as good as Google&#8221;. Unfortunately for Google, he was my boyfriend so I had to smile and tell him I would try it out. In an attempt to win his heart I even set my home computer&#8217;s default search engine to Bing, so when he used my computer he would think I used it all the time.  My work computer, however, stayed loyally to google search.</p>
<p>So on from there I went, Googling by day, and Binging by night until I realized that I was using Bing at work. I would type my question in to Google, scan the initial results, then head over to Bing to find what I really wanted. I laughed to myself, shook my head, and changed my default search engine &#8211; and I&#8217;ve never looked back.<br />
<br/></p>
<h2>The &#8220;Decision Engine&#8221;</h2>
<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bing_logo.png" alt="" title="Bing!" width="275" class="alignright size-full wp-image-1918 colorbox-1778" />With time, our requirements for a &#8216;good&#8217; search engine have changed. A search engine is no longer about giving you a list of relevant <em>page results</em>, but now needs to give you the relevant <em>information</em>. There is a very big difference here. I don&#8217;t want to hunt around through even the top 2 or 3 sites to find what I&#8217;m looking for. I want my search engine to do the leg work and show me the information that I want to know. Get in, get the info, get back to what I was doing. This is why I love Bing &#8211; it actually takes the relevant information out of the search results and shows it to me, so I don&#8217;t have to load a second page to get what I want.</p>
<p>While Google and Bing compete for market share, they really aren&#8217;t building the same product. Google is indeed a Search Engine &#8211; it searches for the best pages for you, and gives you a list of those pages. In my opinion, this isn&#8217;t what Bing does. Bing reads those pages for you, and gives you the information you want.</p>
<p><a href="http://battellemedia.com/archives/2009/06/but_its_not_google" class="colorbox-link">John Battelle</a> says it best: <br/></p>
<div class="postUpdateLong" >
<p>&#8220;I actually don&#8217;t think Microsoft is trying to out-Google Google with Bing. I think it&#8217;s trying to build a different kind of search application, one that &#8230; helps people make decisions in a new way. &#8230; this totally breaks the AdWords model that has driven search so far. To me, that is a very big step in a new direction, and one that Google cannot afford to make.&#8221; </p>
</div>
<p>My thoughts exactly.</p>
<p><br/></p>
<h2>Google Plays Catchup</h2>
<p>You may have noticed that, since their <a href="http://www.businessinsider.com/google-redesign-actually-mimicks-bing-2010-5" class="colorbox-link">2010 redesign</a>, Google is looking more and more like Bing. They have <a href="http://technorati.com/technology/article/googles-new-sidebar-looks-like-bings/" class="colorbox-link">adapted the Bing sidebar</a>, and updated their <a href="http://www.wired.com/epicenter/2010/07/google-chases-bin/" class="colorbox-link">image search</a> to be more like Bing, and bloggers are  <a href="http://www.zdnet.com/blog/seo/google-copies-bing-there-i-said-it/982" class="colorbox-link">screaming</a> for the general public to notice.</p>
<p>But enough of all that, because I know that you are thinking I am bias and that you can find proof of <a href="http://www.catswhothrowupgrass.com/kill.php" target="_new" class="colorbox-link">anything</a> on the internet if you look hard enough. So what I want to do, is show you.  I want to introduce you Bing and all of its features that you never knew about. I want to show you a side-by-side comparison of why I think you should Bing instead of Google.  I want you to see that Bing gives you more information instead of page results, with less clicks, in a cleaner, prettier, and just plain better way &#8211; So how about an example?<br/><br />
<br/></p>
<div class="pinkShadow">
<h2 class="pinkband">Show me the City</h2>
<p>Whenever we travel, we want to know everything about where we are going before we even get on the plane. We want to know what the weather will be like, what events are going on, and where the best hotels are. You probably throw the name of the city in your search engine, and hit 3 or 4 different sites to find all the information.  Why not let Bing do the work? With Bing Places, you get all the information without leaving the page. Google has Places too, so check out the side-by-side comparison:</p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_places.png" target="_new"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_places-395x400.png" alt="" title="Compare Places" width="395" height="400" class="aligncenter size-medium wp-image-1889 colorbox-1778" /></a><br />
<center>(Links: <a href="http://www.bing.com/places/search?q=Seattle%2c+Washington&#038;upgid=30170&#038;qpvt=Seattle+WA&#038;FORM=Z7FD" class="colorbox-link">Bing</a> | <a href="http://www.google.com/#q=Seattle+WA&#038;hl=en&#038;prmd=ivnsbmr&#038;source=lnms&#038;tbm=plcs&#038;ei=mDpETr6UA7HUiAKq4MHMAQ&#038;sa=X&#038;oi=mode_link&#038;ct=mode&#038;cd=7&#038;ved=0CBoQ_AUoBg&#038;prmdo=1&#038;bav=on.2,or.r_gc.r_pw.r_cp.&#038;fp=38af8d32352cc942&#038;biw=1680&#038;bih=853" class="colorbox-link">Google</a> )<br />
</center><br />
<em>To get to Places, type the place (&#8220;Seattle WA&#8221;) into the search engine, then hit the places tab (Bing) or places sidebar icon (Google).</em></p>
<p>Bing creates a small presentation for you on the city, giving you get clear information on a silver platter &#8211; the weather forecast, upcoming events, popular hotels and attractions. With Google, you get some generic pictures, some related searches and a bunch of links.  Google makes you do the legwork.<br />
 <br/></p>
<h4>Attractions and Events</h4>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_attractionsFiltered.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_attractionsFiltered-150x150.png" alt="" title="Bing Attractions - Filtered to Wineries" width="150" height="150" class="alignright size-thumbnail wp-image-1879 colorbox-1778" /></a>Bing&#8217;s Places overview is only the beginning. When you want specific information, Bing can present that to you too.  If you click on one of the events listed, you can actually browse and choose your <a href='http://www.bing.com/events/search?q=Les Miserables&#038;p1=[Events+source="vertical"+qzeventid="f617404"]&#038;FORM=DTPPLO' class="colorbox-link">tickets</a> without even leaving Bing.  Click on &#8216;All Attractions&#8217; or &#8216;All Events&#8217;, and you will get a sortable, filterable and again, beautiful list of <a href="http://www.bing.com/attractions/search?q=seattle%20washington%20attractions&#038;qpvt=Seattle%2c+Washington&#038;FORM=DTPPLO" class="colorbox-link">attractions</a> or <a href="http://www.bing.com/events/search?q=seattle%20washington%20events&#038;FORM=DTPPLO" class="colorbox-link">events</a>.  You can narrow your results by which part of the city they are in or the type of event, and read the Trip Advisor reviews that are right at your fingertips.  Click any event for more information &#8211; not links &#8211; about that event.
<p>Finding attractions on Google is possible, but requires considerably more legwork. To find the Les Miserables show above, we can change our google search to say &#8220;<a href="http://www.google.com/search?hl=en&#038;prmdo=1&#038;bav=on.2,or.r_gc.r_pw.r_cp.&#038;biw=1680&#038;bih=881&#038;wrapid=tlif131309603736510&#038;um=1&#038;ie=UTF-8&#038;q=Seattle+wa+shows&#038;fb=1&#038;gl=us&#038;resnum=6&#038;sa=N&#038;tab=lw" class="colorbox-link">Seattle WA Shows</a>&#8221; and scroll down to the 5th Ave theater (because, though we&#8217;ve never been to Seattle, we just so happen to know that&#8217;s the place to look), then we click on the obscure right hand side link that says &#8220;Place page&#8221; &#8211; NOT the main &#8220;5th Ave Theater&#8221; title &#8211; a we end up <a href="http://maps.google.com/maps/place?hl=en&#038;prmdo=1&#038;gl=us&#038;bav=on.2,or.r_gc.r_pw.r_cp.&#038;biw=1680&#038;bih=881&#038;wrapid=tlif131309603736510&#038;um=1&#038;ie=UTF-8&#038;q=Seattle+wa+shows&#038;fb=1&#038;gl=us&#038;hq=shows&#038;hnear=0x5490102c93e83355:0x102565466944d59a,Seattle,+WA&#038;cid=14800425353492837045&#038;ei=WUFETqv0JePUiAKx6-3fAQ&#038;sa=X&#038;oi=local_result&#038;ct=placepage-link&#038;resnum=6&#038;ved=0CHoQ4gkwBQ" class="colorbox-link">here</a>, on the google page about the 5th Ave Theater. Whew! Now, if we actually want to buy tickets we have to click on the show, and then get re-directed to the show website, where there is a &#8216;Buy Tickets&#8217; button, and that will redirect us to Ticket Master. It&#8217;s as easy as that! All we needed was to already know what was showing and where it was playing!</p>
<p> <br/></p>
<h4>Put me on a Plane</h4>
<p>Seattle looks like a great place to visit so far! Well I guess you are going to need a plane ticket to get here &#8211; don&#8217;t worry, Bing&#8217;s got you covered. Bing can show you rates from different providers &#8211; all on one page of course &#8211; and even tell you when is the right time to buy.  Let&#8217;s say you&#8217;re flying from Toronto to Seattle.  Head over to the Bing <a href="http://www.bing.com/travel/ext/home/air?tvl_t=r&#038;cid=IA_FlightBooking&#038;q=flights+seattle+washington&#038;ve1=Seattle%2c+WA+(SEA)+-+Seattle%2fTacoma+International+Airport&#038;dm1=09%2f02%2f2011&#038;dm2=09%2f04%2f2011&#038;qpvt=flights+Seattle%2c+Washington&#038;FORM=Z7FD" class="colorbox-link">Flights</a> page, pop in your origin and when you are thinking of traveling, and let Bing present you with <a href="http://www.bing.com/travel/flight/flightSearch?form=TRFSAS&#038;q=flights+from+YTO+to+SEA+leave+09%2F02%2F2011+return+09%2F04%2F2011+adults%3A1+class%3ACOACH&#038;shl=fly+YTO%3ESEA+%289%2F2-9%2F4%29&#038;stoc=0&#038;vo1=Toronto%2C+ON+%28YTO%29+-+All+airports&#038;o=YTO&#038;ve1=Seattle%2C+WA+%28SEA%29+-+Seattle%2FTacoma+International+Airport&#038;e=SEA&#038;d1=09%2F02%2F2011&#038;r1=09%2F04%2F2011&#038;p=1&#038;b=COACH&#038;baf=true" class="colorbox-link">flight information</a>.</p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_BingTravelPredictor.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_BingTravelPredictor-150x150.png" alt="" title="Flight Price Predictor" width="150" height="150" class="alignleft size-thumbnail wp-image-1882 colorbox-1778" /></a>Here, you can filter the flights by things like price, duration, and airline.  My favourite feature of Bing Flights is that, using a history of price information, Bing will tell you if prices are expected to rise, fall, or stay the same. Check it out! Click the &#8216;Flight Information&#8217; link above, and check out the &#8220;Price Predictor&#8221; section.</p>
<p>Bing has a similar page for <a href="http://www.bing.com/travel/hotel/hotelSearch?form=TRHRRL&#038;q=Seattle%2C+WA+leave+08%2F12%2F2011+return+08%2F14%2F2011+adults%3A2+rooms%3A1&#038;shl=stay+Seattle+%288%2F12-8%2F14%29&#038;stoc=0&#038;datelimit=08%2F11%2F2011&#038;destPortText1=Seattle%2C+WA&#038;e=SEATTLE_WA_US&#038;useQuery=false&#038;cim=08%2F12%2F2011&#038;com=08%2F14%2F2011&#038;a=2&#038;r=1&#038;bah=true&#038;bah%2CHTW-HP%2CHotelsHomepage=on" class="colorbox-link"> Hotels</a>, where you can compare rates from different providers, and filter based on rating, amenities, and neighbourhood.</p>
<p>Does Google do this? Not that I&#8217;ve seen.  However, if you search &#8220;<a href="http://www.google.com/search?hl=en&#038;prmdo=1&#038;bav=on.2,or.r_gc.r_pw.r_cp.&#038;biw=1680&#038;bih=881&#038;wrapid=tlif131309603736510&#038;um=1&#038;ie=UTF-8&#038;q=Seattle+wa+shows&#038;fb=1&#038;gl=us&#038;resnum=6&#038;sa=N&#038;tab=lw#sclient=psy&#038;hl=en&#038;prmdo=1&#038;gl=us&#038;source=hp&#038;q=flights+from+YTO+to+SEA&#038;aq=0&#038;aqi=g1&#038;aql=&#038;oq=&#038;pbx=1&#038;bav=on.2,or.r_gc.r_pw.r_cp.&#038;fp=7512599086c5bd64&#038;biw=1680&#038;bih=881" class="colorbox-link">flights from YTO to SEA</a>&#8221; you can see a static list of flight numbers from major airlines, and of course, a huge list of links.  Other than that, I&#8217;m sure Google could pass you a link to <a href="http://www.orbitz.com/" class="colorbox-link">Orbitz</a>.</p>
<p> <br/></p>
<h3>The Comparison:</h3>
<ul>
<li><strong>Shows me an overview of the city:</strong> Bing&#8217;s got it, Google falls short.
<li><strong>Lets me find something to do, and grab tickets quickly:</strong> Bing&#8217;s got it, Google can give you a link to tickets if you find out whats showing (and where) by yourself
<li><strong>Get me there:</strong> Bing&#8217;s got flights and hotels, Google&#8217;s got links.
 </ul>
</div>
<p> <br/></p>
<p>And that is only the Places &#038; Travel sections! Have you seen the <a href="http://www.bing.com/finance/?FORM=L8SP37" class="colorbox-link">Finance &#038; Stocks</a> section? <a href="http://www.bing.com/tv?FORM=L8SP46" class="colorbox-link">Tv &#038; Entertainment</a> section?  How about the <a href="http://www.bing.com/recipe/search?domain=recipe&#038;type=listing&#038;q=Cheesecake+recipe&#038;FORM=L8SP49" class="colorbox-link">Recipes</a> section?</p>
<p>Are you convinced yet? If not, I just want to share with you a couple more of my favourite parts of Bing: </p>
<p> <br/></p>
<div class="pinkShadow">
<h2 class="pinkband">It&#8217;s the Little Things&#8230;</h2>
<h4>Landmark Driving</h4>
<p>This point may be lost on men, but women know that we drive by landmarks. If you ask me how to get to the gas station from my house, I&#8217;d tell you &#8220;go out my driveway and turn right at the mailbox, then left at the T in the road. Drive past the park and down the hill till you get to the main drag and turn right. The Shell is right after the Library.&#8221;  Notice that there is not a single street name in that sentence.</p>
<p>Women drivers (and I&#8217;m sure, some men,) are more comfortable when we have something other than a street name to go by, and Bing gives that to us. If I ask Bing for directions from St. Chateau Michelle Winery to Redmond WA, here is what I get:<br />
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/winerydirections.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/winerydirections-400x178.png" alt="" title="Directions from Chateau St. Michelle" width="400" height="178" class="aligncenter size-medium wp-image-1909 colorbox-1778" /></a><br />
<center><br />
Links: <a href="http://www.bing.com/maps/default.aspx?q=st.+michelle+winery+woodinville+wa&#038;mkt=en-US&#038;FORM=BYFD#Y3A9NDcuNzA1Njc2NDA5NTQ3OH4tMTIyLjE0MDk0NDQ5OTk5OTk5Jmx2bD0xMyZzdHk9ciZydHA9cG9zLjQ3LjczMjlfLTEyMi4xNTA4OTFfQ2hhdGVhdSUyMFNhaW50ZSUyME1pY2hlbGxlJTIwV2luZXJ5JTJDJTIwV0FfX19lX35wb3MuNDcuNjc4NTYwOTk5OTk5OTk1Xy0xMjIuMTMwOTkzMDAwMDAwMDJfUmVkbW9uZCUyQyUyMFdBX19fZV8mbW9kZT1EJnJ0b3A9MH4wfjB+" class="colorbox-link">Bing</a> | <a href="http://maps.google.com/maps?saddr=chateau+st+michelle+winery,+woodinville+wa&#038;daddr=redmond+wa&#038;hl=en&#038;ll=47.709762,-122.142563&#038;spn=0.106268,0.196037&#038;sll=47.728839,-122.150095&#038;sspn=0.009252,0.012639&#038;geocode=FcdI2AIdMSO4-CG1RMxmMpAH1ymHQDj-sA2QVDG4-lQNeVDDwQ%3BFYRy1wId2JK4-Ckj7gAgrQyQVDHyBNjF6pADXg&#038;mra=ls&#038;z=12" class="colorbox-link">Google</a><br />
</center></p>
<p>Notice Bing&#8217;s direction #2: There is a Chevron on the Corner. Bing gives me street directions, but also landmark directions to use in case that is more helpful to me.  And it is &#8211; personally, I can spot a Chevron more easily than a street sign that says &#8220;85th St.&#8221;.</p>
<p> <br/></p>
<h4>A More Beautiful Web</h4>
<p>Everything about Bing is prettier than Google. It has a cleaner, less cluttered look, and shows you a beautiful image every morning when you open your browser: </p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_home.png"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/bgCompare_home-400x184.png" alt="" title="Homepage Comparison" width="400" height="184" class="aligncenter size-medium wp-image-1885 colorbox-1778" /></a></p>
<p><center><br />
Links: <a href="http://www.bing.com" class="colorbox-link">Bing</a> | <a href="http://www.google.com" class="colorbox-link">Google</a><br />
</center></p>
<p>Google has added the ability for you to personally set the background of the google page, but I&#8217;d rather have Bing show me a different, beautiful and interesting image every morning &#8211; and maybe even learn something from the image <a href="http://blog.search-mojo.com/2009/08/19/bing-hotspots/" class="colorbox-link">hotspots</a>.<br />
 <br/></p>
<h4>Bing with your Friends</h4>
<p>And last but not least, since you could never, ever, (ever.) get enough Facebook, why not <a href="http://www.bing.com/videos/watch/video/bing-and-facebook-search-more-social/qm3ghmzh?" class="colorbox-link">bring your Facebook friends</a> along with you while you search, so they can suggest things you might like?</p>
<p>Turns out, my friends like Bing:</p>
<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/08/myfriendsLIkeBing.png" alt="" title="My Friends Like Bing" width="602" height="196" class="aligncenter size-full wp-image-1914 colorbox-1778" /></p>
</div>
<p><br/><br />
<br/></p>
<p>What do you think? Are you a Googler? Or do you Bing? I want your opinion!</p>
<p><br/><br />
<br/></p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/08/why-i-bing-and-decide/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Excel &#8211; It&#8217;s Not Just for Nerds&#8230;</title>
		<link>http://bitsnbytesblog.com/2011/07/excel-its-not-just-for-nerds/</link>
		<comments>http://bitsnbytesblog.com/2011/07/excel-its-not-just-for-nerds/#comments</comments>
		<pubDate>Sun, 17 Jul 2011 02:01:36 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bytes]]></category>
		<category><![CDATA[MS Office]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Diet Chart]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Spreadsheet]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=978</guid>
		<description><![CDATA[&#8230;it&#8217;s for students, coaches, parents, collectors &#8211; and calorie counters like me! I&#8217;ve been so happy to hear all the positive feedback for my Low Cholesterol Diet Chart. It is great to know that it is helping people manage their diets, and I hope it also inspires you to use Excel for your own personal &#8230;]]></description>
			<content:encoded><![CDATA[<h4 style="line-height: 20pt; width: 600px;">&#8230;it&#8217;s for students, coaches, parents, collectors &#8211; and calorie counters like me! </h4>
<p><br/></p>
<p>I&#8217;ve been so happy to hear all the positive feedback for my Low Cholesterol Diet Chart. It is great to know that it is helping people manage their diets, and I hope it also inspires you to use Excel for your own personal projects. </p>
<div style="float: right; clear: none; margin: 20px;">
<div style="text-align: left; padding-left: 10px; ">
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/spreadsheet.png" style="border-width: 0px;" title="Low Cholesterol Diet Chart"  ><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/spreadsheet-150x150.png" alt="" title="Low Cholesterol Diet Sheet" width="150" height="150" class="size-thumbnail wp-image-230 colorbox-978"  /></a> <a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/DailyFood_Sample.png" style="border-width: 0px;" title="Everyday Diet Cards" ><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/DailyFood_Sample-150x150.png" alt="" title="Daily Food Card Sample" width="150" height="150" class="size-thumbnail wp-image-1190 colorbox-978" /></a>
</div>
<div class="fileDownload">
<h4 style="color: #7F414D; margin-bottom: 20px;">Get the Charts:</h4>
<p>Original Diet Chart(<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/bitsnbytes-LowCholesterolDiet_WeeklyFoodChart.xlsx" target="_new">.xlsx</a>)  ( <a href="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/bitsnbytes-LowCholesterolDiet_WeeklyFoodChart.pdf" target="_new">.pdf</a>)<br />
System Fonts Only (<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/bitsnbytes-LowCholesterolDiet_WeeklyFoodChart_SystemFonts.xlsx" target="_new">.xlsx</a>)</p>
<p>Daily Food Cards (<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/bitsnbytes-LowCholesterolDiet_DailyFoodCards.xlsx" target="_new">.xlsx</a>) (<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/bitsnbytes-LowCholesterolDiet_DailyFoodCards.pdf" target="_new">.pdf</a>)<br />
System Fonts Only (<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2010/11/bitsnbytes-LowCholesterolDiet_DailyFoodCards_SystemFonts.xlsx" target="_new">.xlsx</a>)  </p>
<p><span style="font-size: x-small; width: 75px;">To use the original sheet, you will need to have <a href="http://www.dafont.com/smilly.font" class="colorbox-link"  target="_new">Smilly font</a> installed</span>
</div>
</div>
<p>Although Excel was originally developed more for <a href="http://en.wikipedia.org/wiki/Microsoft_Excel" class="colorbox-link"  target="_new">analyzing data</a> &#8211; for budgets, reports, and various statistical tasks &#8211; it has many features that can be used to create simple, everyday projects that will help keep you organized.</p>
<p>To read more about lowering your cholesterol, check out <a href="http://www.bitsnbytesblog.com/2011/07/lower-your-cholesterol/" title="Lower Your Cholesterol" target="_blank">this post</a>.</p>
<p>The idea behind my diet chart was that goals are easier to achieve when you can see the finish line, but also measure your progress in increments. I thought of the cells in an Excel sheet as pieces of progress.  You can make a similar chart to track any goals you like &#8211; exercise, homework or video game achievements <img src='http://bitsnbytesblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley colorbox-978' /> </p>
<p>Excel makes it easy to lay out text and pictures how you imagine them in your head, because you can use the cells to place text on any part of the page.  You can style an Excel sheet as easily as a Word doc or a Publisher file &#8211; it even has <a  href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_Themes.png" class="colorbox-link"   title="Excel Themes"  >themes</a><br />
that you can apply to your whole sheet. </p>
<p>To get you started, lets walk through some of the features that I used in my diet chart. Or, skip to a section to find the information you want:</p>
<p><UL style="font-size: 13pt;"></p>
<li><strong>Layout Features</strong></li>
<ul>
<li><a href="#cellmerging">Cell Merging</a></li>
</ul>
<ul>
<li><a href="#textwrapalignment">Text Wrapping and Alignment</a></li>
</ul>
<li><strong>Artistic Features</strong></li>
<ul>
<li><a href="#customfonts">Custom Fonts</a></li>
</ul>
<ul>
<li><a href="#colouredcells">Coloured Cells</a></li>
</ul>
<ul>
<li><a href="#tableborders">Table Borders</a></li>
</ul>
<p><Br/><br />
<Br/></p>
</ul>
<p><br/></p>
<h3 class="pinkband">Layout Features:</h3>
<p> These features can be used to change the way the text is laid out on the page</p>
<p><br/><br />
<a name="cellmerging" ></a></p>
<div class="pinkShadow">
<h4 style="color: #7F414D">Cell Merging</h4>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_MergedCells.png" target="_new"  title="Excel - Merged Cells Example"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_MergedCells-400x187.png" alt="" title="Excel_MergedCells" width="300" class="alignright size-medium wp-image-981 shadowpic colorbox-978" /></a></p>
<ul   style="width: 75%;">
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">What is it?</h6>
<p>  Cell merging is when you take a selection of touching cells and make them in to one big cell<br />
.</li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">How do I do it?</h6>
<p>  To merge a group of cells, select a rectangle of touching cells and press <img class="colorbox-978"  src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/excel_megeandcenter.png" style="vertical-align:middle;" /></li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">Why I Used It:</h6>
<p>  In my example below, one serving of bread/grains can be substituted for a serving of potatoes or a serving of dessert. By merging the cells, it shows that they are all equal &#8211; one serving can be used for any category.</li>
</ul>
<p><br/></p>
<h6 style="display: inline; clear: none;">Example:</h6>
<p><br/></p>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgMergeExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_MergeCellsExample_ScreenShot.png';" value='End Result' />
</div>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgMergeExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_MergeCellsExample_AcutalCells.png';" value='Actual Cells' />
</div>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgMergeExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_MergeCellsExample_MergedCells.png';" value='Merged Cells' />
</div>
<div style="background-color: #999999; padding: 5px; clear:both; margin-bottom: 5px; width: 650px;" >
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_MergeCellsExample_ScreenShot.png" ID="imgMergeExample" Name="imgMergeExample"  alt="" title="Excel - Merge Example - ScreenShot" class="alignnone size-medium wp-image-987 colorbox-978" style="width: 635px; border: 1px solid black;  margin: 5px;"  /></div>
<p><br/></p>
<p>For more information on merging cells, check out <a href="http://office.microsoft.com/en-us/excel-help/merge-and-unmerge-cells-HP005251021.aspx" target="_new" class="colorbox-link" >this article</a></p>
</div>
<p><br/><br />
<a name="textwrapalignment"></a></p>
<div class="pinkShadow">
<h4 style="color: #7F414D">Text Wrapping and Alignment</h4>
<ul style="width: 95%;">
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">What is it?</h6>
<p>   Text Wrapping is when you allow multiple lines of text in one cell; Instead of the text being too long for the cell and getting cut off, it wraps around to the next line. Text Alignment refers to the position of the text in the wrapped cell &#8211; is it aligned to the right? center? top or bottom?</li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">How do I do it?</h6>
<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/CellAlignmentRibbon.png" alt="" title="CellAlignmentRibbon" width="262" height="92" class="alignright size-full wp-image-1154 colorbox-978" /><br />
  To change the wrapping and alignment properties of a cell, highlight the cells you want to change. Next, find the alignment section of the Ribbon (right).  Use the &#8216;Wrap Text&#8217; button to toggle wrapping the text of the highlighted cells. Use the horizontal (left, center, right) and vertical (top, middle, bottom) buttons to change the text alignment in the highlighted cells.  Alternatively, you can right-click on one of the highlighted cells and choose &#8220;Format Cells&#8230;&#8221;,  which will bring up the Format Cells dialog box. Here, you can check the box for &#8216;Wrap Text&#8217;, or choose instead to shrink the text to fit the space, using the &#8216;Shrink to Fit&#8217; option. </li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">Why I Used It:</h6>
<p>  I had a lot of extra information that I wanted to have on my chart, for example how big a serving is supposed to be, or examples of items in each category.  I took advantage of all the empty cells I had, merged them, and filled them with text. Wrapping the text let me fit a lot of information in a small space. </li>
</ul>
<p><br/></p>
<h6 style="display: inline; clear: none;">Example:</h6>
<p><br/></p>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgFormatCellExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_Wrapping_Default.png';" value='Default Cell' />
</div>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgFormatCellExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_Wrapping_withWrap.png';" value='Wrapped Cell' />
</div>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgFormatCellExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_Wrapping_withWrapAndCenter.png';" value='Wrapped and Aligned Cell' />
</div>
<div style="background-color: #999999; padding: 5px; clear:both; width: 525px; text-align: center;" >
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_Wrapping_Default.png" ID="imgFormatCellExample" Name="imgFormatCellExample"  alt="" title="Excel - Cell Formatting - ScreenShot" class="alignnone size-medium wp-image-987  colorbox-978" style="height:100px; border: 1px solid black; margin: 5px;" /></div>
<p><br/><br />
For more information on cell formatting, check out <a href="http://office.microsoft.com/en-us/excel-help/rotate-or-reposition-data-in-a-cell-HP001216442.aspx" target="_new" class="colorbox-link" >this article</a></p>
</div>
<p><br/><br/></p>
<h3  class="pinkband">Artistic Features:</h3>
<p>These are features you can use to add colour and style to your text and cells.</p>
<p><br/></p>
<p><a name="customfonts" ></a></p>
<div class="pinkShadow">
<h4 style="color: #7F414D">Custom Fonts</h4>
<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/excel_customFontsDropdown.png" alt="" title="Excel - Custom Fonts" width="304" height="309" class="alignright size-full wp-image-1163 colorbox-978" /></p>
<ul style="width: 75%;">
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">What is it?</h6>
<p> Any font that you have installed on your computer can be used in Excel &#8211; so if the hundreds of fonts that come with Windows aren&#8217;t enough for you, don&#8217;t worry, you can use custom fonts here!  </li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">How do I do it?</h6>
<p>  You can use them just like any system fonts.  Custom fonts are available all over the web, for a small price or for free from sites like <a href="http://1001freefonts.com/" class="colorbox-link"  target="_new">1001 Free Fonts</a>. Just download the <a href="http://en.wikipedia.org/wiki/TrueType" class="colorbox-link"  target="_new">.ttf file</a>, open and install it and you can use it in Excel. Just select the cell you want to change, and use the font dropdown to choose something new (right).</li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">Why I Used It:</h6>
<p> Custom fonts make your spreadsheets more personal and interesting. </li>
</ul>
<p><br/></p>
<h6 style="display: inline; clear: none;">Example:</h6>
<p><br/></p>
<div style="background-color: #999999; padding: 5px; width: 99%; text-align: center;" ><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_customFonts.png" alt="" title="Excel - Custom Fonts" width="550" class="size-medium wp-image-1131 colorbox-978" /></div>
</div>
<p><br/><br />
<br/><br />
<a name="colouredcells" ></a></p>
<div class="pinkShadow">
<h4 style="color: #7F414D">Coloured Cells</h4>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_CellColours_Example.png" title="Excel - Cell Colours Example"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_CellColours_Example.png" alt="" title="Excel - Cell Colours and Styles" width="250" class="alignright size-full wp-image-1031 shadowpic colorbox-978" /></a></p>
<ul style="width: 75%;">
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">What is it?</h6>
<p>  You can change the background colour and font colour of any cell in your worksheet to give it some visual interest. There are also a bunch of pre-set cell styles that you can use with the click of a button.</li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">How do I do it?</h6>
<p> To choose from a pre-defined style, select the cells you want to change, then find the &#8216;Cell Styles&#8217; button (right), and choose from the list.  To choose your own colours, select the cells you want to change and find the background/font colour buttons to select your colours: <img class="colorbox-978"  src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_BackGroundFontColour_Example.png" style="vertical-align: middle;" /> </li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">Why I Used It:</h6>
<p> Adding Font and Background colours helps draw your eyes to the important information.  You can tell which servings are required (bright green), good (green) and bad (red) with just a glance.  </li>
</ul>
<p><br/></p>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgBgColorExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_backgroundColor_noColor.png';" value='Without Colour' />
</div>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgBgColorExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_backgroundColor_withColor.png';" value='With Colour' />
</div>
<div style="background-color: #999999; padding: 5px; clear:both; width: 550; text-align: center;" >
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_backgroundColor_noColor.png" ID="imgBgColorExample" Name="imgBgColorExample"  alt="" title="Excel - Cell Colours - ScreenShot" class="alignnone size-medium wp-image-987  colorbox-978" style="width: 630px; border: 1px solid black; margin: 5px;" /></div>
<p><br/></p>
<p>For more information on changing font colours, check out <a href="http://office.microsoft.com/en-us/excel-help/change-the-color-of-text-HP010342238.aspx?CTT=1" target="_new" class="colorbox-link" >this article</a>
</div>
<p><br/><br />
<br/><br />
<a name="tableborders" ></a>
<div class="pinkShadow">
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_BordersDropdown.png" alt="" title="Excel - Borders Dropdown" width="200" class="alignright size-full wp-image-1184 colorbox-978" /></p>
<h4 style="color: #7F414D">Table Borders</h4>
<ul style="width: 75%;">
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">What is it?</h6>
<p> For each cell on your spreadsheet, you can adjust the thickness and colour of the border on each of the cell&#8217;s four sides. You can remove borders completely or change the style of the lines to dotted or dashed.</li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">How do I do it?</h6>
<p> You can choose from a list of pre-defined borders by selecting the cells you wish to change, and making ia selection from the Borders dropdown (right).  Use the &#8216;Line Color&#8217; and &#8216;Line Style&#8217; menus at the bottom to choose different colours and line patterns.  For a more complex borders, select the &#8216;More Borders&#8217; option at this bottom to bring up the &#8216;Format Cells &#8211; Borders&#8217; dialog box. </li>
<li style="margin-bottom: 10px;">
<h6 style="display: inline; clear: none;">Why I Used It:</h6>
<p>  I defined the borders in my sheet to clearly show the food categories (bold lines) and the serving allowances (thin lines) for the week.  Use the example below to see how adding these lines makes the sheet more clear.  </li>
</ul>
<p><br/><br />
<br/></p>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgTableLinesExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_tableLines_none.png';" value='No Border Lines' />
</div>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgTableLinesExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_tableLines_thick.png';" value='Thick Lines Only'/>
</div>
<div style="float: left; clear: none; margin-right: 10px; padding: 4px; background-color: #999999">
<input type='button' onclick="document.getElementById('imgTableLinesExample').src='http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_tableLines_final.png';" value='Thick and Thin Lines'/>
</div>
<div style="background-color: #999999; padding: 5px; clear:both; width: 99%; text-align: center;" >
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Excel_tableLines_none.png" ID="imgTableLinesExample" Name="imgTableLinesExample"  alt="" title="Excel - Cell Formatting - ScreenShot" class="alignnone size-medium wp-image-987  colorbox-978" style="width: 98%; border: 1px solid black; margin: 5px;" /></div>
<p><br/></p>
<p>For more information on cell borders, check out <a href="http://office.microsoft.com/en-us/excel-help/apply-or-remove-cell-borders-on-a-worksheet-HP001216433.aspx" class="colorbox-link"  target="_new">this article</a></p>
</div>
<p><br/><br />
<br/></p>
<h3 class="pinkband">Other Features:</h3>
<p><br/></p>
<p>There are tons of other features in Excel that you can use &#8211; far too many to describe in this article.  You can find information on how to <a href="http://office.microsoft.com/en-us/excel-help/insert-a-picture-or-clip-art-HA010079409.aspx?pid=CH100675631033" target="_new" class="colorbox-link" >add an image</a>, perform simple <a href="http://office.microsoft.com/en-us/excel-help/sum-function-HP010062464.aspx" target="_new" class="colorbox-link" >math functions</a> for your data,  or even create <a href="http://office.microsoft.com/en-us/excel-help/about-charts-HP005241303.aspx" class="colorbox-link"  target="_new">charts</a>, by visiting the Office <a href="http://office.microsoft.com/en-us/excel-help/excel-help-and-how-to-FX101814052.aspx?CTT=97" target="_new" class="colorbox-link" >Help and How-to</a> section for Excel.  </p>
<p><br/><br />
<br/></p>
<hr style="width: 75%" />
<br/></p>
<p>Was this article helpful? Is there something else you wish I had covered? Let me know! I&#8217;d love to hear from you.</p>
<p><br/><br />
<br/></p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/07/excel-its-not-just-for-nerds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>You Can Build a WP7 App!</title>
		<link>http://bitsnbytesblog.com/2011/07/you-can-build-a-wp7-app/</link>
		<comments>http://bitsnbytesblog.com/2011/07/you-can-build-a-wp7-app/#comments</comments>
		<pubDate>Sat, 09 Jul 2011 04:59:17 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[bytes]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[Web Services]]></category>
		<category><![CDATA[WP7]]></category>
		<category><![CDATA[.Net]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Web Service]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Phone]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=619</guid>
		<description><![CDATA[Whenever I think of a way that computers can make my life easier, I generally grab it with both hands. I maintain a number of small web applications for my own use, to help me save money, organize my time, or keep my sanity. Some of them I keep private, and some of them I &#8230;]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/wp7.png" alt="" title="wp7" width="256" height="403" class="alignright size-full wp-image-713  colorbox-619" style="margin: 20px;"  />Whenever I think of a way that computers can make my life easier, I generally grab it with both hands. I maintain a number of small web applications for my own use, to help me save money, organize my time, or keep my sanity. Some of them I keep private, and some of them I open to other users (like my <a title="my Recipe Box : New Features!" href="http://www.bitsnbytesblog.com/2011/06/my-recipe-box-new-features/" target="_new">Recipe app</a>) if I think they might find it useful to. Problem is, there&#8217;s no app for that.</p>
<p>So I made one. And you can too!</p>
<p>I use a Windows Phone 7 (LG Quantum), and have worked in C# and XAML for a few years now so I felt like I had a bit of a running start. Unfortunately, when you get all excited about building something like a phone app you just want it to work. You don&#8217;t want to learn all about it, you want to press a button, Hello World, and pat yourself on the back. I got very frustrated at the lack of samples out there that would help me get going, so I decided to put one together.</p>
<p><br/></p>
<h3>scenario:</h3>
<p>My scenario for this app is as follows:</p>
<ul>
<li>I have Windows 7 Phone</li>
<li>I have a web application written in C#/asp.Net</li>
<ul>
<li>my website uses built-in asp.Net forms authentication</li>
</ul>
<ul>
<li>I want to be able to access the data from my web app, on my phone</li>
</ul>
<li>I have a vague idea about what a web service is</li>
<li>I could fight my way out of a paper bag, if that bag was made out of XAML</li>
</ul>
<p>Does this sound like you? GREAT! Even YOU can make a WP7 App!</p>
<p><br/></p>
<p>I am going to break this tutorial down into a few parts, so you can find specific help if you need it.</p>
<ul>
<li><a href="#toolsYouNeed">Tools you need to start</a></li>
<li><a href="#buildWebservice">Building a Webservice</a></li>
<li><a href="#helloWP">Saying Hello World! On your WP7.</a></li>
<li><a href="#authentication">Authenticating your Users (with a webservice)</a></li>
<li><a href="#passCookies">Pass the Cookies</a></li>
<li><a href="#publishApp">Publishing Your App</a></li>
</ul>
<p><br/></p>
<h2><span style="color: green;"> $$ </span>Before you Start<span style="color: green;"> $$ </span></h2>
<p>A word of caution before you begin. The way to get your app on to your phone is through <a href="http://create.msdn.com/en-US/" class="colorbox-link" target="_new"> AppHub</a>. Much like for iPhone, you have to officially become an app developer in order to get your app on your phone. I agree that this is dumb that to make a personal app for your personal use you have to sign up. And yes, it is another way for them to make money off you with the annual fee of $99. I suggest that you build an app or two before you sign up, to make sure it is really worth it for you. Luckily, you don&#8217;t need to sign up to get all the tools you need to start dabbling, you can put that decision off until you have a sparkling new app ready to go.</p>
<p>Once you are signed up and verified, you can then unlock your phone for development and load on your apps in &#8216;developer mode&#8217;, or you can submit them for certification and put them in the AppStore. Remember, students can join for free as always through the <a href="https://www.dreamspark.com/default.aspx" target="_new" class="colorbox-link">Dreamspark</a> program.</p>
<p><a name="toolsYouNeed"></a><br />
<br/></p>
<h2>Tools You Need to Start</h2>
<p>If you visited the AppHub site, you probably stumbled across the section about <a href="http://create.msdn.com/en-us/home/getting_started" class="colorbox-link" target="_new">the tools you need</a> to get going. If you already have an asp.Net site, then you most likely have <a href="http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-web-developer-express" class="colorbox-link" target="_new">Visual Web Developer Express</a>. You will also need the Windows Phone SDK, Windows Visual Studio 2010 for Windows Phone, and the Emulator. These should all be available at the AppHub for you to download and install.</p>
<p><br/></p>
<h2>Overview of the Pieces</h2>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/wp7diagram.png" target="_new" title="WP7 App Flow Diagram"><img class="aligncenter size-medium wp-image-630 colorbox-619" title="WP7 Workflow" src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/wp7diagram.png" alt="" width="600" /></a></p>
<p>Here is a simplified workflow diagram to explain how this works.</p>
<div style="margin-left: 25px; margin-right: 25px; margin-bottom: 10px;">1. the user&#8217;s credentials are sent to the Forms Authentication service, much as they would be when you go to the login form on your website. Since it is using the same service, you use the same credentials.</div>
<div style="margin-left: 25px; margin-right: 25px; margin-bottom: 10px;">2. The service authenticates the users, and gives you a token to use to identify yourself as an authenticated users on your subsequent calls.</div>
<div style="margin-left: 25px; margin-right: 25px; margin-bottom: 10px;">3. You use that token to access the service for your app. You provide the same token, the service sees that you are authenticated, which leads to&#8230;</div>
<div style="margin-left: 25px; margin-right: 25px; margin-bottom: 10px;">4. You get the data you asked for. Now you can use that data to populate the forms on your app!</div>
</p>
<p><br/><br />
<strong> OK! Lets get coding already!</strong><br />
</p>
<div class="fileDownload" >
Download the completed sample code here <a href="http://bitsnbytesblog.com/public_downloads/YouCanBuildAWPApp_CodeSample.rar"  target="_new">(.rar)</a><br />
<span style="font-size: small;">Includes server and wp7 projects, and instructions to get running.</span >
</div>
<p><a name="buildWebservice"></a><br />
<br/></p>
<h2>Building a Webservice</h2>
<p>The reason you should start here, is because if you can&#8217;t access your data, there is no point in making an app on your phone.  Most likely the data you are trying to access is stored on the internet, and you need the data to make it useful.</p>
<p><img class="alignright size-medium wp-image-642 colorbox-619" title="WCF Service" src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/wfcservice.png" alt="" />Adding a webservice to an existing website is simple. Really! First make a directory and update the web.config to give access to unknown and unauthenticated users. Right click -> &#8216;Add New&#8230;&#8217; then Choose &#8220;WFC Service&#8221; and give it a name (I&#8217;m going to call it &#8216;HelloWorldService.svc&#8217;). Notice that Visual Studio will add two code files for you in your App_Code folder: <em>ServiceName.cs </em>and <em>IServiceName.cs</em>. Your three files works as follows:</p>
<ul>
<li><em>ServiceName.svc</em> : this is the gateway to your web service. Clients (like your phone app) will use this url to access your service.</li>
<li><em>IServiceName.cs </em>: This file is an interface for your service, and it will define the &#8216;Contract&#8217;. In other words, it will tell the client which methods they can call, what data they have to provide, and what to expect in return.</li>
<li><em>ServiceName.cs </em>: This is the implementation of the contract. The code that actually does anything will go in here.</li>
</ul>
<p>Now open up your ServiceName.svc file and take a look. As expected, there isn&#8217;t really anything in there. All it does is reference the implementation of the service, and we don&#8217;t have to make any changes:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p><span style="font-family: Consolas; font-size: small;">&lt;%</span> <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">@</span></span></span><span style="color: #800000; font-family: Consolas; font-size: small;"><span style="color: #800000; font-family: Consolas; font-size: small;"><span style="color: #800000; font-family: Consolas; font-size: small;">ServiceHost </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">Language</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;C#&#8221; </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">Debug</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;true&#8221; </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">Service</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;HelloWorldService&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> CodeBehind</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;~/App_Code/HelloWorldService.cs&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> %&gt;</span></span></p>
</div>
<p>Ok, let&#8217;s move on to the Contract. Open up the IServiceName.cs File, in your App_Code directory</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p>[<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">ServiceContract</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">]</span></span><br />
public <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">interface </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">IHelloWorldService</span></span></span><br />
{<br />
[<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">OperationContract</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">]</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">        void</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> DoWork();</span></span><br />
}</p>
</div>
<p>As you can see, the interface is marked with the words &#8216;ServiceContract&#8217; to indicate that these are the rules for using the service. Methods inside that are marked with &#8216;Operation Contract&#8217; indicate that these methods (or, operations) are available to be called. If you add a method and leave the &#8216;Operation Contract&#8217; tag off, it will not be visible to clients of your service. I am going to change the default method:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p>[<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">ServiceContract</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">]</span></span><br />
public <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">interface </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">IHelloWorldService</span></span></span><br />
{<br />
[<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">OperationContract</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">]</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">        </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">string</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> SayHello();</span></span></p>
<p>}</p>
</div>
<p>I bet you can guess what it is going to do <img src='http://bitsnbytesblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley colorbox-619' /> </p>
<p>Open up the ServiceName.cs file now, and update your method to match the interface. Add the functionality for your Hello function, or copy mine from below. One other thing to note: Because our service lives in an asp.Net application, we have to add a tag above our implementation about Compatibility Requirements. (For more information about this, you can visit <a href="http://msdn.microsoft.com/en-us/library/aa702682.aspx" class="colorbox-link" target="_new">MSDN:Hosting WCF Side-by-Side with ASP.NET </a>)</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p>[<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">AspNetCompatibilityRequirements</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">(RequirementsMode = </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">AspNetCompatibilityRequirementsMode</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.Required)]</span></span><br />
public <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">class </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HelloWorldService</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> : </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">IHelloWorldService</span></span></span><br />
{<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">public </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">string</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> SayHello(</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">string</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> userName)</span></span><br />
{<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">if</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> (!</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">string</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.IsNullOrEmpty(userName))</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">return </span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;Hello &#8220;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> + userName + </span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;!&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">;</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">else</span></span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">return </span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;Hello World&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">;</span></span><br />
}<br />
}</p>
</div>
<p>
Last but not least, you have to add the following to your web.config file to configure the webservices
</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">
<p>&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">system.serviceModel</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">service </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">Wp7AspNetMembership.HelloWorldService</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">endpoint</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">contract</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">Wp7AspNetMembership.IHelloWorldService</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8221; </span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> binding</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">basicHttpBinding</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">/&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">service</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">services</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">serviceHostingEnvironment </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">aspNetCompatibilityEnabled</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">true</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8221; </span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">multipleSiteBindingsEnabled</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">true</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"> /&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">behaviors</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">serviceBehaviors</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">behavior </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;&#8221;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">serviceMetadata </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">httpGetEnabled</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">true</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"> /&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">serviceDebug </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">includeExceptionDetailInFaults</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">false</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"> /&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">behavior</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">serviceBehaviors</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">behaviors</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">system.serviceModel</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">system.web.extensions</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">scripting</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">webServices</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">authenticationService </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">enabled</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">true</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8221; </span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">requireSSL</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">false</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">/&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">webServices</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">scripting</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">system.web.extensions</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span>
</div>
<p>We have now defined a method in our web service. If you run your application and browse to the ServiceName.svc file, you should see the default web service information page, as well as a link to the wsdl for your service. (What is a <a href="http://en.wikipedia.org/wiki/Web_Services_Description_Language" class="colorbox-link"  target="_new">WSDL</a>?)</p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/wsdlHellowWorld1.png" target="_new"  title="Web Service Default Page"><img class="aligncenter size-medium wp-image-641 colorbox-619" title="wsdlHellowWorld" src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/wsdlHellowWorld1.png" alt="" width="500" /></a></p>
<p>And you&#8217;re done! You have a webservice that will say hello &#8211; so lets say hello to your WP7.</p>
<p><a name="helloWP"></a><br />
<br/></p>
<h3>Saying Hello World! On your WP7</h3>
<p><img class="alignright size-full wp-image-653 colorbox-619" title="WP7 App Types" src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/wp7appTypes.png" alt="" width="396" height="85" />Open up Visual Studio 2010 Express for Windows Phone and create a new project. You will want to choose either a Panorama or Pivot application &#8211; all this really refers to is the base control that it will place for you in your generated MainPage.xaml page. (For more information about Pivot vs. Panorama and which is right for your application, check out this blog post by <a href="http://www.jeff.wilcox.name/2010/08/looking-ahead-at-panorama-and-pivot/" class="colorbox-link" target="_new">Jeff Wilcox</a>). Let&#8217;s choose a Pivot application. I am going to name mine <em>HelloWorldApplication</em>. As you will notice, generating the project also created some ViewModel and Data files and folders for you, and you can keep or delete them. Just don&#8217;t delete App.xaml, MainPage.xaml, or the image files.</p>
<p>Here is where your XAML skills come in handy, although you don&#8217;t need to be an Expression Blend expert. Windows phone interfaces are generally pretty slick &#8211; no fancy do-dads or graphics, just sleek, lighting fast data. (was that a plug? probably.) Let&#8217;s remove the default code that was generated for us, and create a form with just a Name textbox and a button:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee !important; font-family: 'Courier New' !important; font-size: small !important; padding: 20px; margin: 20px;">
<p><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&lt;phone</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">:</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">PhoneApplicationPage &#8230;&#8230; &gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">controls</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">:</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">Pivot</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Title</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;HELLO WORLD!&#8221;&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">controls</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">:</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">PivotItem</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Header</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Say Hello&#8221;&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">Grid</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">TextBlock</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Height</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;30&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> HorizontalAlignment</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Left&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Margin</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;17,23,0,0&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;textBlock1&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Text</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;my name is: &#8220;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> VerticalAlignment</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Top&#8221; /&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">TextBox</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Height</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;72&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> HorizontalAlignment</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Left&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Margin</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;8,56,0,0&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;tbName&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> VerticalAlignment</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Top&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Width</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;436&#8243; /&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">Button</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Content</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Say Hello&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Height</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;72&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> HorizontalAlignment</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Left&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Margin</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;31,188,0,0&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;btnSayHello&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> VerticalAlignment</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;Top&#8221;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Width</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;391&#8243;</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> Click</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;btnSayHello_Click&#8221; /&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;/</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">Grid</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">/</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">controls</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">:</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">PivotItem</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&lt;/</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">controls</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">:</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">Pivot</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><br />
</span></span></span>&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">phone</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">:</span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">PhoneApplicationPage</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span>
</div>
<p> <a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/SayHelloScreenshot.png" target="_new"  title="Hello World Screenshot"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/SayHelloScreenshot-300x288.png" alt="" title="Hello World!" width="300" height="288" class="alignright size-medium wp-image-664 colorbox-619" /></a> &#8230; and you should end up with a nice little hello world form!  We are going to use this form to put in our name, and then call our HelloWorld web service. I have already added in the button click handler, but now, lets hook up the web service.
</p>
<p><a name="addReference"></a><br />
<br/></p>
<h4>Adding Service References</h4>
<p>In order for your application to subscribe to a service, it needs to be able to see it in action.  If the service is running when you add it, visual studio will generate all the classes you need to call the contract methods. At this point, you should have both Visual Web Developer and Visual Studio for WP open. Go back to Visual Web Devloper and click run. Internet Explorer should start and show your website (which the webservice is a part of). Do you remember when we navigated to the wsdl page for your web service? Do you remember the url? Mine was http://localhost:627&#8230;/svc/HelloWorldService.svc</p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Image1.png" target="_new"  title="Find WCF Service References"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/Image1-300x243.png" alt="" title="Service Reference" width="300" height="243" class="alignleft size-medium wp-image-669 colorbox-619" /></a>Once you figure out your service address, minimize IE and Visual Web Developer, and return to your windows phone application. In Solution Explorer, find the References folder and right click -> Add Service Reference&#8230;  This will bring up a dialog.  In the address bar, enter the address of your service and press Go. It will find your service, and display it below. You can click on the contract (interface) to view the available methods.  Enter a namespace for this reference, and hit OK.</p>
<p>Notice that a new folder called &#8216;Service References&#8217; has been generated for you, and a reference to the HelloWorld service has been added.  Also, your project now contains a ServiceReferences.Config file.  Open it up and you can see that your HelloWorld service has been defined in the config file.</p>
<p>An important thing to know about web service calls is that they are asynchronous.  Because of that, we have to wire up an eventhandler for when the service method returns, then send off our request.  Head back to your code-behind file (MainPage.xaml.cs) and add a static reference to your service, using the namespace that you specified when the reference was created. In our button click method, we want to wire everything up and send off the request.  In the request completed method, we want to say hello to the user.  Your code file should look something like this:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee !important; font-family: 'Courier New' !important; font-size: small !important; padding: 20px; margin: 20px;">
<p><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">namespace HelloWorldApplication</span></span><br />
{</p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">public </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">partial </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">class </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">MainPage </span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> : </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">PhoneApplicationPage </span></span></span><br />
{</p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">private </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">static</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HelloWorldServiceClient</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> helloService;</span></span></p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">public</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> MainPage()</span></span><br />
{<br />
InitializeComponent();<br />
<span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;">// initialize our service.</span></span></span><br />
helloService = <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">new</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HelloWorldServiceClient</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">();</span></span><br />
}</p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">private </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">void</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> btnSayHello_Click(</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">object</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> sender, </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">RoutedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> e)</span></span><br />
{</p>
<p><span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;">// wire up an eventhandler</span></span></span><br />
helloService.SayHelloCompleted +=<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">new</span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">EventHandler</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&lt;HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">SayHelloCompletedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&gt;(helloService_sayHelloCompleted);</span></span><br />
<span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;">// make the async call</span></span></span><br />
<span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;"><br />
</span></span></span>helloService.SayHelloAsync(tbName.Text);<br />
}</p>
<p><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">void</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> helloService_sayHelloCompleted(</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">object</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> sender, HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">SayHelloCompletedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> args)</span></span><br />
{<br />
<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">MessageBox</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.Show(args.Result);</span></span><br />
}<br />
}<br />
}</p>
</div>
<p> <a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/helloworldfinal.png" target="_new"  title="Phone App Final"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/helloworldfinal-284x300.png" alt="" title="Hi Terrah!" width="284" height="300" class="alignright size-medium wp-image-679 colorbox-619" /></a>And we are ready to run!  Is your webservice still running? If not, go back and run visual web developer to get it going. You can put a breakpoint in your SayHello method to verify that it gets hit. Once everything is up and running, head back to your phone application and run that too. The emulator will start up and start your app automatically. Try it out! Put in your name and click &#8216;Say Hello&#8217;.  Hi!</p>
<p>&nbsp;<br />
<a name="authentication"></a><br />
<br/></p>
<h3>Enter Forms Authentication</h3>
<p>So now have the basics down, so it is time to figure out how to authenticate your users. You don&#8217;t want just anyone getting your data. We want to use the same Forms Authentication that we used for our web app, so our users can use the same username/password combinations.  Head back to visual web developer where your hello service is located, and add a new WCF service.  Give it a name (like, AuthenticationService.svc) and save.  We don&#8217;t want to implement a new authentication service, we want to reference the existing one &#8211; so go ahead and delete the IAuthenticationService.cs and AuthenticationService.cs files that were generated for you.  In the AuthenticationService.svc file you created, replace the text with the following:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee !important; font-family: 'Courier New' !important; font-size: small !important; padding: 20px; margin: 20px;">
<p><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&lt;%<span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">@</span></span></span><span style="color: #800000; font-family: Consolas; font-size: small;"><span style="color: #800000; font-family: Consolas; font-size: small;"><span style="color: #800000; font-family: Consolas; font-size: small;">ServiceHost </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">Language</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;C#&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">    </span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">Service</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=&#8221;System.Web.ApplicationServices.AuthenticationService&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> %&gt;</span></span></p>
</div>
<p>This will reference the actual FormsAuthentication service. Neat-o! Remember to configure this service by adding to your web.config file:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee !important; font-family: 'Courier New' !important; font-size: small !important; padding: 20px; margin: 20px;">
<p>( in the system.serviceModel services node:)<br />
<br/></p>
<p>&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">service </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">System.Web.ApplicationServices.AuthenticationService</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8221; </span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> behaviorConfiguration</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">AuthenticationServiceBehaviors</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">endpoint </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">contract</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">System.Web.ApplicationServices.AuthenticationService</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> binding</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">basicHttpBinding</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"> /&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">service</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span></p>
<p><br/><br />
(in the behaviors servicebehaviors node:)<br />
<br/><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">behavior </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">AuthenticationServiceBehaviors</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">serviceMetadata </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">httpGetEnabled</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">true</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"> /&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">behavior</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span>
</div>
<p>  Now that we are going to have authentication, we don&#8217;t want just anyone using our HelloWorld Service. We can now update our service function to deny access to unauthorized users.  And because our user will be authenticated, we know their username, and our webservice no longer needs to take their name as a parameter. Make sure you update the <em>IServiceName </em>Contract as well!</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee !important; font-family: 'Courier New' !important; font-size: small !important; padding: 20px; margin: 20px;">
[<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">AspNetCompatibilityRequirements</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">(RequirementsMode = </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">AspNetCompatibilityRequirementsMode</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.Required)]</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">public </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">class </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HelloWorldService</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> : </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">IHelloWorldService</span></span></span><br />
{<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">public </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">string</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> SayHello()</span></span><br />
{<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">if</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> (</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HttpContext</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.Current.User.Identity.IsAuthenticated)</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">return </span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;Hello Authorized User, &#8220;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> + </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HttpContext</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.Current.User.Identity.Name + </span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;!&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">;</span></span><br />
else<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">return </span></span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;Not Authorized&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">;</span></span><br />
}<br />
}</p>
</div>
<p>
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/updateServiceRef.png" target="_new"  title"Update Service References"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/updateServiceRef-300x168.png" alt="" title="Update Service Reference" width="300" height="168" class="alignleft size-medium wp-image-690 colorbox-619" /></a><br />
Now lets hook up our app to use Authentication. We will need to update our application to get the new contract for our HelloWorldService.  Right click on the HelloWorldService, and select &#8216;Update Service Reference&#8217;.  Once that is complete, you will need to add a service reference to the AuthenticationService. Do this the same way we added one for the HelloService, <a href="#addReference">above</a>.</p>
<p>
Our form still needs a password box where the user can enter their password, so add that to the form.  Now that we have an authentication service and a username/pass combo, we can authenticate our users. Go to the buttonClick method for our &#8216;Say Hello&#8217; button so that it calls the authentication service (with the username/pass) instead of the HelloWorldService.  Only once they are authenticated we will call the HelloWorldService.  But how will the HelloWorldService know we have already been authenticated?  We will obviously need some piece of proof from the AuthenticationService to show to the HelloWorldService &#8211; and we store it in our cookieContainer.
</p>
<p><a name="passCookies"></a><br />
<br/></p>
<h3>Pass the Cookies</h3>
<p>
We will hold a reference to the CookieContainer in our application that we can pass along with our service requests.  Since we pass the same container on all of our requests &#8211; both to the AuthenticationService AND the HelloWorldService &#8211; all the services will know we are an authenticated user.
</p>
<p>The first thing we have to do is update the ServiceReferences.ClientConfig file to indicate that our services should expect a CookieContainer to be included. Open the config file and add the enableHttpCookieContainer=&#8221;true&#8221; attribute  to <strong>each </strong>of the bindings that will use it:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee !important; font-family: 'Courier New' !important; font-size: small !important; padding: 20px; margin: 20px;">
<p>&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">binding </span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">name</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">BasicHttpBinding_IHelloWorldService</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8221; </span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">maxBufferSize</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">2147483647</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8221; </span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;">maxReceivedMessageSize</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">2147483647</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><strong><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> enableHttpCookieContainer</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">true</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span></strong><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span><br />
&lt;<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">Security</span></span></span><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"><span style="color: #ff0000; font-family: Consolas; font-size: small;"> mode</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">=</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">None</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&#8220;</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"> /&gt;</span></span></span><br />
&lt;/<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">binding</span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">&gt;</span></span></span></p>
</div>
<p>The last thing to do is to update your service calls to each pass a reference to the cookie container. Here is our final code-behind file:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee !important; font-family: 'Courier New' !important; font-size: small !important; padding: 20px; margin: 20px;">
namespace <span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">HelloWorldApplication</span></span><br />
{<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">public </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">partial </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">class </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">MainPage</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> : </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">PhoneApplicationPage</span></span></span><br />
{<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">private </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">static </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">CookieContainer</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> cc;</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">private </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">static</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HelloWorldServiceClient</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> helloService;</span></span><br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">public</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> MainPage()</span></span><br />
{<br />
InitializeComponent();<br />
}<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">private </span></span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">void</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> btnSayHello_Click(</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">object</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> sender, </span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">RoutedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> e)</span></span><br />
{<br />
AuthServiceRef.<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">AuthenticationServiceClient</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> authService = </span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">new</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> AuthServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">AuthenticationServiceClient</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">();</span></span><br />
cc = <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">new </span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">CookieContainer</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">();</span></span><br />
<span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;">// pass the cookies to the auth service</span></span></span><br />
authService.CookieContainer = cc;<br />
authService.LoginCompleted += <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">new</span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">EventHandler</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&lt;AuthServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">LoginCompletedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&gt;(authService_LoginCompleted);</span></span><br />
authService.LoginAsync(tbName.Text, pwPass.Password,<span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">, </span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">true</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">);</span></span><br />
}<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">void</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> authService_LoginCompleted(</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">object</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> sender, AuthServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">LoginCompletedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> args)</span></span><br />
{<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">if</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> (args.Error != </span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">null</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> || args.Result == </span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">false</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> )</span></span><br />
{<br />
<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">MessageBox</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.Show(</span></span><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;"><span style="color: #a31515; font-family: Consolas; font-size: small;">&#8220;Login failed, please check credentials and try again.&#8221;</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">); </span></span><br />
}<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">else</span></span></span><br />
{<br />
helloService = <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">new</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">HelloWorldServiceClient</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">();</span></span><br />
<span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;"><span style="color: #008000; font-family: Consolas; font-size: small;">// pass the cookies to the helloservice</span></span></span><br />
helloService.CookieContainer = cc;<br />
helloService.SayHelloCompleted += <span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">new</span></span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">EventHandler</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&lt;HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">SayHelloCompletedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">&gt;(helloService_sayHelloCompleted);</span></span><br />
helloService.SayHelloAsync(tbName.Text);<br />
}<br />
}<br />
<span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">void</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> helloService_sayHelloCompleted(</span></span><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;"><span style="color: #0000ff; font-family: Consolas; font-size: small;">object</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> sender, HelloWorldServiceRef.</span></span><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">SayHelloCompletedEventArgs</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;"> args)</span></span><br />
{<br />
<span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;"><span style="color: #2b91af; font-family: Consolas; font-size: small;">MessageBox</span></span></span><span style="font-family: Consolas; font-size: small;"><span style="font-family: Consolas; font-size: small;">.Show(args.Result);</span></span><br />
}<br />
}<br />
}</p>
<p>&nbsp;
</p></div>
<p>So go try it out already!  Make sure your webservice is running and put in some breakpoints</p>
<p><a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/authenticateduser.png" target="_new"  title="Authenticated User"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/authenticateduser.png" alt="" title="Step In To Webservice" width="700"   class="alignleft size-medium wp-image-705 colorbox-619" /></a></p>
<p>
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/helloauthorized.png" target="_new"   title="Hello Authenticated User!"><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/helloauthorized-267x300.png" alt="" title="Hello Authorized User!" width="267" height="300" class="alignleft size-medium wp-image-704 colorbox-619" /></a></p>
<p>I hope that this tutorial gave you a running start at developing apps for Windows Phone 7. Getting all the setup and services running is usually the hardest part (for me anyways), and once that is done you tend to fly through the rest.  If you want to take a look at some sample apps (with code) to get inspired, you can visit the <a href="http://msdn.microsoft.com/en-us/library/ff431744(v=VS.92).aspx" class="colorbox-link" target="_new">App Gallery</a>.
</p>
<p><a name="publishApp"></a><br />
<br/></p>
<h3>Publishing Your App</h3>
<p>
Ready to publish? Visit the  <a href="http://create.msdn.com/en-US/" class="colorbox-link" target="_new">AppHub</a> to sign up for your app developer account. The <a href="http://create.msdn.com/en-US/home/faq" class="colorbox-link" target="_new">FAQ</a> section has tons of information on specific questions regarding the <a href="http://msdn.microsoft.com/library/hh202930(VS.92).aspx" target="_new">submission process</a>, app <a href="http://msdn.microsoft.com/library/hh202930(VS.92).aspx" class="colorbox-link" target="_new">certification</a>, and forums for support.
</p>
<p> <strong>Happy Coding!</strong></p>
<p><br/></p>
<div style="border: 1px solid pink; margin: 10px; padding: 100px; padding-top: 10px; padding-bottom: 10px;">
<a href="http://bitsnbytesblog.com/public_downloads/YouCanBuildAWPApp_CodeSample.rar"  target="_new"><img class="colorbox-619"  src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/07/rar.png" style="width: 30px; vertical-align: middle; "/> Download the Sample Code for the finished projects Here!</a>
</div>
<p><br/></p>
<hr style="width: 75%" />
<p>Was this article helpful for you? Missing something? Questions or feedback? Let me know!</p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/07/you-can-build-a-wp7-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Talk•fool•ery Tuesday</title>
		<link>http://bitsnbytesblog.com/2011/06/talk-foolery-tuesday/</link>
		<comments>http://bitsnbytesblog.com/2011/06/talk-foolery-tuesday/#comments</comments>
		<pubDate>Tue, 28 Jun 2011 22:51:44 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bits]]></category>
		<category><![CDATA[bytes]]></category>
		<category><![CDATA[time well wasted]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[podcast]]></category>
		<category><![CDATA[recommended]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=485</guid>
		<description><![CDATA[It&#8217;s Time to Talk•fool•ery! &#60;Shameless Promotion&#62; Just finished listening to the latest Talk•fool•ery podcast on Zune marketplace. I&#8217;m glad you guys feel the pressure of the sample ladies too &#8211; I always feel so guilty for not buying-after-trying no matter what they are selling! So much that most of the time I avoid taking a &#8230;]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/06/261914_237647032917569_212244958791110_1224512_4712878_n-300x300.jpg" alt="" title="talkfoolery" width="260"  class="alignleft size-medium wp-image-490 colorbox-485" style="margin-bottom: 25px;" /> </p>
<h4>It&#8217;s Time to Talk•fool•ery!</h4>
<p><span style="color: #339966; font-family: 'Courier New';">&lt;Shameless Promotion&gt;</span></p>
<p>Just finished listening to the latest Talk•fool•ery podcast on <a href="http://feeds.feedburner.com/talkfoolery" class="colorbox-link" target="_new">Zune </a>marketplace.  I&#8217;m glad you guys feel the pressure of the sample ladies too &#8211; I always feel so guilty for not buying-after-trying no matter what they are selling! So much that most of the time I avoid taking a sample or even making eye contact!</p>
<p>You should be checking out this <strong>FREE</strong> podcast available to you through Zune marketplace or <a href="http://itunes.apple.com/ca/podcast/talkfoolery/id427330597" class="colorbox-link"  target="_new" >iTunes </a>(if anyone really uses bloated iTunes anymore). It goes great with an afternoon coffee! See you next Tuesday!</p>
<p><span style="color: #339966; font-family: 'Courier New' ">&lt;/Shameless Promotion&gt;</span></p>
<div style=" border: 1px solid pink; margin: 75px; padding: 10px;">
<strong>This week on Talk•fool•ery:</strong><br />
<a href="http://www.talkfoolery.com/post/7005702599/ep-16-anjelica-huston-likes-it" target="_new" class="colorbox-link">Ep. 16: Anjelica Huston likes it…</a></p>
<p>Iris realizes how her friends really feel about her, Corey admits to wearing dirty pants to dances, and we delve into the complexities of blind porno.</p></div>
<div style="background-color: #EEEEEE;margin: 25px;padding: 10px;">
<img src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/06/261914_237647032917569_212244958791110_1224512_4712878_n-150x150.jpg" alt="" title="talkfoolery" width="140"  class="alignleft size-thumbnail wp-image-490 colorbox-485" style="margin: 5px; margin-top: 0px; padding-top: 0px; margin-right: 15px; /><br />
<a href="http://www.talkfoolery.com/post/7005702599/ep-16-anjelica-huston-likes-it" class="colorbox-link"  target="_new" >Talk•fool•ery</a> is a free podcast created by Corey Fischer and Iris Dias, chalk full of sarcasm, foolishness, and frank discussions about life&#8217;s shenanigans.  Plus, visit their <a href="http://www.facebook.com/talkfoolery" target="_new" >facebook fan page </a>to see one-of-a-kind animated videos from last week&#8217;s episode.<br />
<br />
Category: Comedy<br />
Language: English<br />
<img class="margin: 4px;" title="explicit" src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/06/explicit.png" alt=""  /> </div>
<p><br/><br />
<br/></p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/06/talk-foolery-tuesday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DDay.iCal C# library</title>
		<link>http://bitsnbytesblog.com/2011/06/dday-ical-c-library/</link>
		<comments>http://bitsnbytesblog.com/2011/06/dday-ical-c-library/#comments</comments>
		<pubDate>Sun, 26 Jun 2011 18:12:49 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[bytes]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[Cool Libraries]]></category>
		<category><![CDATA[general programming]]></category>
		<category><![CDATA[calendar]]></category>
		<category><![CDATA[integration]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=166</guid>
		<description><![CDATA[Whenever I can think of a way that software can make my life easier, I end up writing a little app. One of my most successful apps to date is the My Recipe Box app I created to store and view my recipes, share recipes with friends, and make a meal plan and grocery list. &#8230;]]></description>
			<content:encoded><![CDATA[<p>Whenever I can think of a way that software can make my life easier, I end up writing a little app. One of my most successful apps to date is the My Recipe Box app I created to store and view my recipes, share recipes with friends, and make a meal plan and grocery list.  The one thing I have been struggling with is how to integrate it into my every day browsing and emailing &#8211; to make it easier to get feedback and see what&#8217;s on the menu without having to log in to a separate application.</p>
<p>The first thing I discovered was the <a href="http://sharethis.com/publishers/get-sharing-button" class="colorbox-link" target="_new">ShareThis</a> sharing widget. This awesome little tool allows users to share, like, tweet, +1 (or whatever) pages from your site, and reports statistics about what has been shared.   I recommend this as a great first step for anyone wanting to bridging from personal app to social media.</p>
<p>Integrating is addicting though, and soon I wanted a way to pull my meal plan calendar from the app and display it in outlook along side my other calendars. Problem was, I didn&#8217;t really know anything about how to do this. I didn&#8217;t know how .ical feeds worked or any idea how to publish one. Turns out it is very very simple, thanks to <a href="http://www.ddaysoftware.com/Pages/About.aspx" class="colorbox-link" target="_new">Doug</a> at DDay Software &#8211; Thanks Doug!</p>
<p>His library <a href="http://www.ddaysoftware.com/Pages/Projects/DDay.iCal/" class="colorbox-link" target="_new">DDay.iCal</a> makes it so simple to create an .ical file that can be consumed by programs like gmail calendar, outlook, and Apple iCal. In fact, let me show you just how easy:</p>
<div style="border: 1px solid #bbbbbb; background-color: #eeeeee; font-family: 'Courier New'; font-size: 10pt; padding: 20px; margin: 20px;">IICalendar timeZones = iCalendar.LoadFromFile(&#8220;TimeZoneFile.ics&#8221;)[0];<br />
IICalendar iCal = new iCalendar();<br />
iCal.AddChild(timeZones.GetTimeZone(&#8220;America/New_York&#8221;));</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// Create an event and attach it to the iCalendar.</span><br />
Event evt = iCal.Create&lt;Event&gt;();</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// Set the one-line summary of the event</span><br />
evt.Summary = &#8220;Terrah&#8217;s Birthday&#8221;;</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// Set the longer description of the event</span><br />
evt.Description = &#8220;Time to party like it&#8217;s 1984!&#8221;;</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// Set the event to start at 12am, Feb 4th 2011</span><br />
evt.Start = new iCalDateTime(2011, 2, 4, 0, 0, 0, &#8220;America/New_York&#8221;, iCal);</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// Set the duration of the event to 1 day.</span><br />
evt.Duration = TimeSpan.FromDays(1);<br />
evt.Location = &#8220;Seattle, WA&#8221;;</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// Let&#8217;s also add an alarm on this event so we can be reminded of it later.</span><br />
Alarm alarm = new Alarm();</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// Display the alarm somewhere on the screen.</span><br />
alarm.Action = AlarmAction.Display;</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// This is the text that will be displayed for the alarm.</span><br />
alarm.Summary = &#8220;Remember, it&#8217;s your birthday!&#8221;;</p>
<p><span style="color: #008000; background-color: #eeeeee; font-family: 'Courier New';">// The alarm is set to occur 30 minutes before the event</span><br />
alarm.Trigger = new Trigger(TimeSpan.FromMinutes(-30));</p>
<p>iCalendarSerializer serializer = new iCalendarSerializer();<br />
            serializer.Serialize(iCal, filepath);</p></div>
<p>And you&#8217;re done!</p>
<p>From here you just add the address where you saved the .ical file to your <a href="http://www.ehow.com/how_2058421_add-internet-calendar-outlook-2007.html"  class="colorbox-link" target="_new">outlook</a> or <a href="http://www.google.com/support/calendar/bin/answer.py?hl=en&#038;answer=37100" class="colorbox-link" target="_new">google</a> calendar.  Update, and watch the events roll in! New/Updated events will appear every time you send/receive in outlook or iCal, however google calendar has yet to implement a &#8216;refresh&#8217; button. This is a bit of a <a href="http://getsatisfaction.com/google/topics/ical_sync_does_not_refresh_at_all_or_not_fast_enough" class="colorbox-link" target="_new">hot topic</a> on the google forums, and users have been requesting this for years.  unfortunately for google calendar users, you will have to wait the google-decided 6 to 24 hours for any of your .ical links to refresh.</p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/06/dday-ical-c-library/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>my Recipe Box : New Features!</title>
		<link>http://bitsnbytesblog.com/2011/06/my-recipe-box-new-features/</link>
		<comments>http://bitsnbytesblog.com/2011/06/my-recipe-box-new-features/#comments</comments>
		<pubDate>Fri, 24 Jun 2011 19:06:00 +0000</pubDate>
		<dc:creator>terrah</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[general programming]]></category>
		<category><![CDATA[my Recipe Box]]></category>
		<category><![CDATA[new features]]></category>
		<category><![CDATA[recipeApp]]></category>

		<guid isPermaLink="false">http://nickelfamily.com/terrah/?p=294</guid>
		<description><![CDATA[Over the past 3 months I have been adding some new and exciting features to my Recipe Box app. Here is a quick list of the latest and greatest. As always, if any users have an idea for a new features that would make their experience better, let me know! At this time, I am &#8230;]]></description>
			<content:encoded><![CDATA[<p>Over the past 3 months I have been adding some new and exciting features to my Recipe Box app.  Here is a quick list of the latest and greatest.  As always, if any users have an idea for a new features that would make their experience better, let me know!</p>
<p>At this time, I am only opening this app up to friends and family, and am looking for new users! If you are interested in using this app, send me an email and I will set you up! </p>
<p>&nbsp;</p>
<h1>New Exciting Features!</h1>
<p><center><br />
<a href="http://www.bitsnbytesblog.com/wp-content/uploads/2011/06/recipebox.png" target="_new"><img class=" size-large wp-image-452 colorbox-294" style="border: 3px solid white; -moz-box-shadow:0px 0px 5px #000;  -webkit-box-shadow:0px 0px 5px #000; box-shadow:0 0 5px #000; "title="my Recipe Box - Screen Shot" src="http://www.bitsnbytesblog.com/wp-content/uploads/2011/06/recipebox-1024x750.png" alt="" width="600"  /></a><br />
</center><br />
</p>
<p><strong>View your meal plan in your favorite <a href="http://www.bitsnbytesblog.com/2011/06/dday-ical-c-library/" target="_new">calendar</a> program!</strong><br />
Each user gets their own private .ics calendar link to add to Outlook, Apple iCal or Google Calendar.  See what is for dinner without having to log in!
</p>
<p><strong>Share your recipes on Facebook, Twitter and more!</strong><br />
Want to share your recipes outside of this app? Check out Chef View for your public recipes, and find the sharing tool in the top right hand side.</p>
<p><strong>Seadragon image viewer!</strong><br />
The References section now has a Seadragon image viewer to view those large photo files.</p>
<p><strong>More features available in Safari and Chrome!</strong><br />
ChefView is now available in both of these browsers. (Note there are still a small number of limited features when adding/editing recipes in these browsers).</p>
<p><strong>Upload Your Recipe Photos!</strong><br />
Everyone loves taking pictures of their beautiful food creations! Take some pictures as you cook or of your final product and upload them to the recipe. Other users can take a look, and you get points for adding them.</p>
<p><strong>User Ratings!</strong><br />
See which of your friends is busy cooking away with new user ratings. Ratings are based on your last 3 months of activity, with points awarded for sharing recipes, posting reviews and adding photos.</p>
<p><strong>Grocery Quick List!</strong><br />
Add items to the new quicklist to keep track of what you need to buy. If you use the meal plan grocery list generator, these items will be included for you!</p>
<p><strong>Single-user sharing!</strong><br />
Want to share a recipe with another user, but not everyone? In Edit view you can select the specific users to share with.</p>
<p><strong>Paging Recipe View!</strong><br />
Your recipe list will load faster than ever with the new paged recipe list view.</p>
<p><strong>Import a Friend&#8217;s Recipe!</strong><br />
Want to hold on to a recipe shared by another user? You can now import it into your collection and keep it as a private recipe for yourself!</p>
<p><strong>Edit copied recipe text before importing!</strong><br />
Copying a recipe from a website for import doesn&#8217;t always format properly. Now you can edit the clipboard text for a more successful import.  Just use the ‘Add from Clipboard’ button when adding a new recipe, then double click on the clipboard text to edit it.</p>
<p><strong>Faster and Better!</strong><br />
The app has been optimized and streamlined for better performance!</p>
<p><strong>And more!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://bitsnbytesblog.com/2011/06/my-recipe-box-new-features/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
