When the DLLs are merged those types get excluded from being internalized.

I couldn't find the set up in either NMock3's or Moq's repo, but RhinoMocks
has the ILMerge exclude file checked in:
https://github.com/ayende/rhino-mocks/blob/master/ilmerge.exclude

On Mon, Feb 14, 2011 at 7:27 AM, Cygon <[email protected]> wrote:

> Hi!
>
> I'm trying to compile NMock3, a mock object framework that uses
> Castle.DynamicProxy. The existing builds use a tool called ILMerge to
> merge Castle.Core.dll as internal classes into the NMock3 assembly.
>
> I tried to achieve the same effect by including the Castle.Core
> sources in the project and changing the access modifiers of all public
> Castle classes to internal.
>
> It works as long as I don't change the access modifiers of 7 classes
> (AbstractInvocation, CompositionInvocation, IInterceptor,
> IInterceptorSelector, IInvocation, InheritanceInvocation,
> IProxyTargetAccessor). As soon as I change those to internal, I get
> various TypeLoadExceptions in AbstractTypeEmitter.CreateType().
>
> -
>
> My best bet is that those types are implemented in the
> DynamicProxyGenAssembly and that its InternalsVisibleToAttribute is
> not resolving anymore. But why then does it work with ILMerge (where
> the Castle.Core classes also end up in a different assembly)?
>
> --
> You received this message because you are subscribed to the Google Groups
> "Castle Project Development List" group.
> To post to this group, send email to [email protected]
> .
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/castle-project-devel?hl=en.
>
>


-- 
Jono

-- 
You received this message because you are subscribed to the Google Groups 
"Castle Project Development List" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-devel?hl=en.

Reply via email to