In the past, I used Colin Coller's CopySourceAsHtml in Visual Studio.NET 2003. Once Visual Studio 2005 was released, Derick Baily and Jason Haley released a modified version and installer for it. I downloaded it and used it since. But it seems Colin has updated his version since june 11th.
I've just uploaded the first official release of CopySourceAsHtml for Microsoft Visual Studio 2005. This release has a leaner, meaner, refactored codebase that fixes a few minor defects and takes advantage of new features in Visual Studio 2005 and .NET 2.0. This will be the codebase that future releases will be built from.
Download it here.
As seen in the previous article, we need an address, binding and contract to complete the WCF ABC. We'll start at the contract.
A contract is defined explicitly, via a class. You add a [ServiceContract] attribute to the class. All methods you want to expose in your service, you mark as [OperationContract], as methods are called operations in services.
[ServiceContract]
public class Hello
{
[OperationContract]
string HelloWorld()
return "Hello world";
}
string HelloComputer()
return "Hello computer";
The operations are defined explicitly, a Service Orientation tenet. HelloComputer won't be visible by consumers of our service; it isn't marked with an attribute. The HelloWorld operation however is, even though it's private inside the .NET World.
InterfacesWe prefer however, to have an interface for our contract and have our actual service implement the interface. That's because
It's always best to have an interface and implement it. The attributes also must be specified in the interface.
public interface IHello
string HelloWorld();
string HelloComputer();
public class Hello : IHello
string IHello.HelloWorld()
string IHello.HelloComputer()
In the next article I'll show you how you can host this service. In the future we'll also consume the service and I will try to tell more about contracts and versioning.
[Go to the WCF series article index]
I'm currently using Omea Reader by Jetbrains for all my RSS subscriptions. But after re-installing my laptop and installing the latest Omea Reader, some weird indexing bug occured. The bug is fixed in version 2.2, which is still beta, but can be downloaded here. Unfortunatly the link is broken. I've sent emails to about 8 departments inside JetBrains, but only some nice lady called Daniela Vokalova from sales replied that she'd forward the mail.
But since Internet Explorer 7 has built in RSS Support, I'd thought I'd give it a try. First things that I've noticed:
So I booted Outlook 2007 again and was notified that I could merge Outlook and IE7 RSS Feeds. I did and decided to check out the RSS functionality in Outlook. Great, it provides OPML imports. Unfortunatly only in the root, so I had to move every BloggingAbout.NET weblog into a new folder.
As every weblog was newly inserted, all items were unread. I right-clicked the folder I had moved all weblogs in, selected "mark all as read", and nothing happened. You have to right-click every feed seperatly. You can't ctrl- or shift-select mutliple feeds.
So I hope JetBrains soon fixes the link, because I think I'll stick to Omea Reader.
UpdateI've received mail from JetBrains that the link is fixed and an even newer version was uploaded. My weird indexing bug is now gone and I'm a very happy Omea Reader user again! Download the EAP here.
I want to begin with a conceptual explanation about services. A service always has at least one endpoint, but can have multiple. A client normally communicates with only one endpoint. A plain-old-webservice only has one endpoint and communicates via HTTP and Text/XML. The picture below shows a service with three endpoints. Notice the ABC.
There are a few articles about the WCF ABC's (1, 2)but the short story is that you always have to remember:
I'll try to explain them, they'll get more sense once we advanced in posts.
In the next articles I'll explain how you can build a service while using the ABC.
I'm starting a series of posts about Windows Communication Foundation (WCF). The goal of the series is to introduce WCF to everyone who hasn't had the opportunity to experience WCF, for whatever reason. While other articles sometimes are too long, I want to keep them very short. That way you're able to read them before your workday begins or perhaps just before you shut down. :-)
From every post I'll refer to this post and I'll keep an index here so you can easily find your way.
Complete index
Other WCF tutorial articles
Yesterday was a great day for our family, as my son 'Bart' was born at 17:12. With 3650 grams and 53cm long, pretty tall for our standards. My wife and kid are great and just came home this morning. My other two daughters, Naomi and Emma still have to get used to him, although they've already given him a small kiss, very carefully. Here's a picture of our youngest member.
Logik! was the one who started with a wish list for Community Server 3.0. I don't know if others have picked this up, but I have some wishes for myself. Let's see:
That's about what I can think of. I already can't wait for Community Server 3.0.
I was browsing Google, got an MSDN link, clicked it, and got the folloing error.
Strange though that CustomErrors are turned. Perhaps someone's fixing it from a remote location and turned if off to view the error himself! ;)
Anko, my employer and colleague, became official Regional Directory today. The idea is to 'evangelize' .NET and other Microsoft technologies. I'm not sure what Microsoft and .NET have to do with the Bible, but as evangelist literally means 'bringer of good news', that's probably what Anko does. :-)
Congrats Anko.