Q:

How to perform a text-search on a List of CustomObjects that includes the search misspelled words?

I want to perform a text-search on entry of my custom class. That text-search should not only match for the string entered, but may also check for misspelled words. So I'm looking for a library that does that for me.
A little bit more context:
Let's say I generate this business object from an SQLServer2008 database:
public class MyTextObject
{
  public String Title {get;set;}
  public String Content {get;set;}
}

In my application I'd have a 
List<MyTextObject>

and want to perform a search for the word "control". The search should return any MyTextObject that has the word "control" inside the Title or Content property. So far no problem: I could easily do this with a LINQ-Expression.
Here is the tricky part:
Let's say in one of my business objects, I wanted to write "control" but I've written "contrlo" instead. I want that the search algorithm suggests that business object as well.
How can I do that in a non brute-force way that looks for possible permutations of the search key? Is there any algorithm or library out there that might help me with this situation?
I'm also open to other good suggestions =)

A:

If I am not mistaken, you need some fuzzy like string matching algorithm. I have done something similar a while ago, I used Levenshtein Distance, and I believe this is the code that I ripped off. I was quite satisfied.

