Running under .Net 2.0

Jul 1, 2011 at 1:09 PM
Edited Jul 1, 2011 at 1:11 PM

Most of the stuff I do, these days, is in  .NET 4.0.  But sometimes I do have to use older versions of the framework.  For example, this week I wanted to add tracing to some .NET 2.0 code and, since there are multiple bits running at the same time, I wanted to use your SQLTraceListerner, rather that end up with 10+ log files.  But your assembly was built under .NET 3.0 and wouldn't compile under 2.0.  Rather than try to strip out the .NET 3.0 stuff, I started with the SQLTraceListener and kept adding files until it built under 2.0.  I think it might've been quicker to go the other way.  Anyway, it's now working.  Thanks very much for your work - much better than text files.

But it got me thinking: when a library like this has modular functionality, should it be built in modules each of which is compiled to the oldest framework version that can support it?  For your project, should the SQLTraceListener bits be in one (.NET 2.0) assembly with the WCF stuff in a (.NET 3.0) assembly which extends it?  Or is this unrealistic?