Wednesday, 26 November 2008

WCF - Hosting Solutions?

A WCF Service can be hosted in 8 different ways each which has pros and cons:
  • IIS
  • WAS (a component in IIS 7.0)
  • Windows Forms Application
  • WPF Application
  • Console Application
  • ASP.NET Application
  • Windows Services
  • Using WcfSvcHost.exe tool

Here are the details:

WCF - Ways to Create Proxy Class?

In WCF, There are 4 ways to create the proxy class:

1. Using the Add Service Reference dialog box in Visual Studio
2. Using svcutil.exe
3. Creating the proxy class manually by inheriting from ClientBase or DuplexClientBase class
4. Creating the proxy class dynamically at runtime using ChannelFactory class

Here are the details:

WCF - Which Serializers?

WCF supports 2 serializers:

1. DataContractSerializer
2. XmlSerializer

Here I will explain when to use which:

WCF - Message Encoding Types?

There are 3 message encoding types in WCF:

1. Text encoding
2. MTOM encoding
3. Binary encoding

Here I will explain where to use which:

WCF - Message Exchange Patterns?

Message Exchange Patterns in WCF are:

1. Request/Response
2. OneWay
3. Duplex

Here I will explain where we should use which:

Wednesday, 19 November 2008

Castle ActiveRecord Project

The Castle ActiveRecord project is an implementation of the ActiveRecord pattern for .NET, which consists of:
  • Instance properties representing a record in the database
  • Instance methods acting on that specific record
  • Static methods acting on all records.

Castle ActiveRecord is built on top of NHibernate, but its attribute-based mapping free the developer of writing XML for database-to-object mapping, which is needed when using NHibernate directly."

http://www.castleproject.org/activerecord/index.html

I was just thinking to create a project using ASP.NET MVC, NHibernate and Castle ActiveRecord. This combination makes sense.

ASP.NET MVC and NHibernate

Have a look at Sharp Architecture which uses ASP.NET MVC and NHibernate.

http://code.google.com/p/sharp-architecture/
http://www.codeproject.com/KB/architecture/NHibernateBestPractices.aspx
http://www.codeplex.com/SharpArchitecture http://davidhayden.com/blog/dave/archive/2008/11/14/LearnASPNETMVCNHibernateORMapperSharpArchitecture.aspx

Can you write a code generator for this?

Tuesday, 18 November 2008

OSLO - Model Driven Platform

”Oslo” is the codename for Microsoft’s forthcoming model-driven development platform.

Microsoft is making a big investment in modeling and aims to remove the gap between designing and development.

Currently, people using many modeling tools such as Visio and Rational Rose to create design models and UML models, then developers have to understand and develop these. My understanding is Oslo is to resolve this gap.

In the other words, with Oslo Microsoft significantly simplifies the effort required to design, build, deploy and manage distributed applications. The technology to deliver these capabilities will be delivered through BizTalk Server, System Center, Visual Studio, BizTalk Services and .NET Framework.

Learn more:

http://www.microsoft.com/soa/products/oslo.aspx

http://download.microsoft.com/download/8/4/6/846F8EE7-46BC-47A0-A38B-3ECD8DC7EB6E/VisionforOslo.wmv

Wednesday, 12 November 2008

Email Management Techniques

  • You don't have to answer to all of your emails. Before answering, ask yourself "is that necessary to answer"?
  • Don't read junk emails, remove them quickly
  • Group your emails where possible

How to negotiate WIN-WIN?

to be investigated...

Tuesday, 11 November 2008

POX Messaging Style

To be investigated...

REST Architecture

to be investigated...

Professionalism - Part1

How to be professional?

The only way to become a professional is to discipline yourself to think, speak, look and act like a professional.

Example 1: If you want to be a professional salesman, you must think, speak, look and act like a professional salesman.

Example 2: If you want to be a professional Principle Technologist, you must think, speak, look and act like a professional Principle Technologist.

Business Awareness

You must be aware of the business circumestances of the society and the following can help:

I suggest spending at least 20 minutes every day for this.

Industry Awareness

You must be aware of the
  • Latest technologies e.g. ASP.NET MVC
  • Future technologies e.g. SQL Server 2010 code named Kilimanjaro
  • Available market tools/products and their prices to resolve problems e.g. NUnit, NMock
  • New product releases e.g. Windows 7.0
  • Competitors, their products and prices

The following can help to gain this knowledge:

http://www.microsoftpdc.com/

Microsoft PDC is where Microsoft announces many new technologies and releases.

http://www.asp.net

You gain lots of infomation about asp.net

Tuesday, 4 November 2008

LINQPad

Learn LINQ easier by LINQPad

Microsoft Windows 7



It's the new operating system of Microsoft after Windows Vista. It was previously known as Windows Viena and is supposed to be released in 2010.

New Features/Enhancements:
  • Touch recognition
  • Speech recognition
  • Supported virtual hard disks (VHD): you can attach a new VHD natively or even boot to an already attached VHD
  • Improved boot performance
Learn more: