using System; using System.Security.Principal; using System.Runtime.Remoting.Messaging; using System.Reflection; using System.Security.Permissions; [assembly: AssemblyKeyFile("mykey.snk")] [assembly: AssemblyVersion("3.0.0.0")] [Serializable()] public class ForeignPrincipal : ILogicalThreadAffinative { public ForeignPrincipal(IPrincipal _principal) { pprincipal=_principal; } private IPrincipal pprincipal; public IPrincipal principal { get { return pprincipal; } } } public interface IServer { void DoSomething(); }