[Prev] Thread [Next]  |  [Prev] Date [Next]

Client Profile Support Patrick Earl Mon May 31 00:00:37 2010

Greetings all.

I'm very much interested in getting client profile support going for
log4net.  I'd be happy to do the work and submit a patch, but only if
it's going to receive serious attention.

Feel free to read some of the background in this issue:


To start, I'd like to propose that a mechanism is selected for client
profile support.  Here are the possibilities that I've come up with so

1.  Stay in one assembly, but reference any System.Web components
through reflection.  This has the disadvantage of potentially being
slower and making that portion of the code more complicated.

2.  Split into two assemblies, and have the log4net assembly trigger
the loading of the second assembly at runtime if certain configuration
directives are present.  For example, if log4net sees asp* in the
configuration, it would load the log4net.Server.dll assembly at that
time only.  This has the disadvantage that users could forget to
include the assembly since it's not a compile time dependency.

3.  Split into two assemblies and have a different initialization call
in the log4net.Server assembly.  This would provide direct compile
time dependencies and would make it clear what was required.  However,
it would mean that there are two ways to initialize the core library
depending on the desired usage.

4.  Not having investigated it, I assume there are also extension
points for integrating the asp.net portions using some sort of
run-time configuration.  Assuming such a mechanism exists, the
disadvantage would be the increase in configuration complexity to use
the component.

More ideas?  Preferences?  To be honest, I'm in a bit of a hurry since
I'd like to propose to a similar client profile split in NHibernate
and I'd like to see it in for the upcoming 3.0 release. :)  Without
the log4net changes, which NHibernate is dependent upon, it will be
more difficult to make it happen.

I appreciate any assistance in getting this important issue moving.


        Patrick Earl