CodePaste Logo
New Snippet New Snippet Recent Snippets Recent Snippets My Snippets My Snippets Web Code Search Snippets Search
Sign inor Register
Language: C#

Inherited Exports

109 Views
Copy Code Show/Hide Line Numbers
[InheritedLogger]
public interface ILogger
{
    void Append(string message);
}
 
[InheritedLogger(Name = "Foo")]
public class InheritedLogger : ILogger
{
    public void Append(string message)
    {
        Console.WriteLine("From inherited logger");
    }
}
 
[MetadataAttribute]
[AttributeUsage(AttributeTargets.Interface | AttributeTargets.Class)]
public class InheritedLoggerAttribute : InheritedExportAttribute
{
    public InheritedLoggerAttribute()
        : base(typeof(ILogger))
    {
    }
 
    public string Name { get; set; }
}
by TheCodeJunkie
  December 11, 2009 @ 12:09pm

Add a comment


Report Abuse
brought to you by:
West Wind Techologies



If you find this site useful and use it frequently please consider making a donation to support this free service.
Donate