2011-02-28 45 views
1

我有一个内部的属性,是不是在它的定义的装配可视工作。“内部类”不是一个图书馆编制,但在一个新的类库

属性

namespace Stuff { 

    [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)] 
    internal sealed class LogActionsAttribute : Attribute { 

     internal LogActionsAttribute() { } 
    } 
} 

这类在相同的程序集中定义并产生编译错误。

namespace OtherStuff { 

    [Stuff.LogActionsAttribute] 
    class MyClass { 

     void D() { 


     } 
    } 

} 

错误1类型或命名空间名称LogActionsAttributeAttribute'不命名空间中的“东西”存在(是否缺少程序集引用?)

任何想法?

回答

4

如果该类型在项目中,那么它可能是一个命名空间冲突;请尝试:

[global::Stuff.LogActions] 
class MyClass { ... } 

这可以避免与其他名称空间中的Stuff冲突。

+0

我不知道如何可能有一个命名空间冲突。他们是我的自定义命名空间。我尝试了你的建议,但它仍然不可见。任何其他想法? – 2011-02-28 12:04:11

+1

@SirPsycho - 你有任何预编译器'#if'吗?基本上,这个类**肯定会被编译**吗? – 2011-02-28 12:05:48

+1

@SirPsycho - 它是否肯定从'System.Attribute'继承?而不是其他一些名为'Attribute'的类? – 2011-02-28 12:07:00

相关问题