Irony on Visual Studio 2005 / .NET 2.0???

Dec 15, 2008 at 8:51 PM
Hey, I'm trying to use the class to make a Google-like Full Text Search (http://www.sqlservercentral.com/articles/Full-Text+Search+(2008)/64248/) but we are running .NET 2.0 not 3.5. Is there any DLL or source that I could build under 2.0???

I've tried to use the .dll and .cs files but I'm getting the following exception...

Could not load file or assembly 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The system cannot find the file specified.

at line 16 from SearchGrammar.cs
IdentifierTerminal Term = new IdentifierTerminal("Term", "!@#$%^*_'.?", "!@#$%^*_'.?0123456789");

Is it possible to make it work under .NET 2.0?

Please, I really need this =P

Thanks and congratulations for your work!


Coordinator
Dec 15, 2008 at 9:24 PM
I'm afraid that's not possible already, or it might be quite difficult. .NET 3.5 features are too much involved already, especially in LanguageRuntime classes. You can try to cut out manually all dependencies on 3.5. Just start with source code, reference .NET 2.0; disable LanguageRuntimeInit class - it has a lot of lambda expressions. For FullTextSearch, you don't need runtime anyway. Just either remove use of LanguageRuntime, or clean-up the class from .NET 3.5 stuff. Just try to fix all compiler errors. Hopefullly it will work once you can compile it.
Another trouble may be with the Hashset<T> class, not sure if it is there in .NET 2.0.
Good luck
Dec 16, 2008 at 4:26 PM
Edited Dec 16, 2008 at 4:27 PM
emzero,

although you could convert the project to support 2.0 your going branch into an unsupported library.

Example:
lambda expressions can be converted to delegate(arg1, arg2,....){ .... return ...;}

linq queries can use linqbridge
http://www.albahari.com/nutshell/linqbridge.aspx

HashSet<T> just grab the code from mono project or from microsoft reference.

============

Instead create a wcf service host the service inside windows service application, configure the service to be tcp....and your done
Now your 2.0 application will call the wcf service and wait for the returned data asynchronously. (All valid 2.0)

www.mixhacks.com  has example of signature you will have.

Actually this should probably also be the solution for those wanting to make this work with sql server .. easy and maintainable.

-lm