Source Code for XHTML Validator

The following function checks the link with the w3c validation service

checklink.gif

and the WriteToCSV function used to write to CSV file

writetocsv.gif

Understanding WCF

Windows Communication Foundation(WCF) that is part of .NET Framework 3.0 is in the line of Microsoft(MS) classic work of abstraction. MS have been innovator in providing abstraction over various technologies from many years. In the same tradition I do believe WCF is another achievement. Undoubtedly they understand the difficulties in any technologies being faced by technology implementors and then they use their experience to nake the technology simple by intoroducing the layer of abstraction.

Let me talk about WCf in particular now

  1. It was always challenge from many years to talk to remote objects.
  2. Many technologies have come and gone or become extinct as dinosors.
  3. To name a few will be CORBA or DCOM.
  4. But there was always problem with the technology itself and its implementation.
  5. Web Service was the most pouplar of all the technology and it still one of the best for such communication.
  6. The problem comes when we want to expose a remote object interface with multiple protocol interface such as HTTP, TCP etc.
  7. The problem with existing technology is that we have create multiple interface for the remote object i.e. each specific to each protocol.
  8. This really become a stumbling block while deciding on the protocol to be used as creating multiple interface results in maintainence overhead.
  9. So if we want a complete interoperable solution we need a web service based interface but if its standalone system the same Web Service interface becomes a performance bottleneck.
  10. WCF really becomes a great help for such scenario. It allows developer to create interface irrespective of the protocol to use.
  11. Developer can then configure the so called end points to decide on which protoocl to used for communication.
  12. The developer will create the interface and implement it. It will then expose the interface using multiple end points i.e. HTTP, TCP, Named Pipes.
  13. The client using the interface then can use the appropriate end point based their need.
  14. WCf as infrastructure takes care all overheads related to messaging etc.

WCF: Exposing multiple endpoints

Of late I have been reading about WCF. Though I have many things to share but thought of sharing this link about how to expose the WCF Service as multiple end points i.e. suppose we wrote a WCF service to calculate home loan. The same service can be exposed as

  1. HTTP
  2. TCP
  3. Named Pipe

If the service is to be used by non-.NET based app then HTTP is the best option and if both service and client are in same network and both the app are .NET based tcp can be used and if both the service and client areon same machine amed pipe can be used.

The question then comes do a developer have to expose multiple interface, the answer is NO. The developer have to use the configuration files to expose the service with 3 end points.

This is one of the cool feature that I liked about WCF. the below link provides the similar stuff with an example

Link1

Link to Windows 2003 Load Balancing Feature

Got this very good link about support for Load Balancing feature in Windows 2003  Server. The article starts with the concept of Load Balancing and then step by step for configuring in the Windows 2003 server.

http://www.west-wind.com/presentations/loadbalancing/NetworkLoadBalancingWindows2003.asp

URL XHTML Validator Tool

In continuation of one of my previous post on XHTML Validator, I have developed this utility which will validate the give url on the web and identify the XHTML Validation errors for the given url.

The utility works in the following manner

  1.  W3C validator service exposed a public web service for XHTML Validation.
  2. There are 3 options
    1. By URL
    2. By File
    3. By Content
  3. The utility uses the URL option.
  4. The url is provided to the webservice and the webservice returns the results as a XML response.
  5. The utility then saves the errors returned in a temp location.
  6. The utility displays the result in grid.
  7. Clicking on partcular error displays the error in excel within the utiltity.

The utiltity is written in C# and it requires .NET framework 2.0 or above and MS excel on a machine.

I hope you guys will like this tool and please provide feedback to improve this tool.

Download Utility (Please rename file as zip, as wordpress doesn’t allow zip so uploaded as doc).