わかりました、明確にするためにコードを編集しました:
質問: from ...の属性[MyAttr("...")]
にアクセスするにはどうすればよいですか?TestClassOne/Two
BaseClass.TheAttribute
TestClassOne/Two を除くすべてのクラスは、私の「コア」にコンパイルされ、開発プラットフォームとして顧客に提供されます。TestClassOne/Two はお客様が開発するため、「コア」に TestClassOne/Two の知識はありません。
以下のコードは「コア」にコンパイルされ、dll として顧客に提供されます。
[TestMethod()]
public void AttrTest()
{
var one = new TestClassOne();
var attrOne = one.MyTestProperty.TheAttribute;
var two = new TestClassTwo();
var attrTwo = two.MyTestProperty.TheAttribute;
}
public class MyAttr : Attribute
{
private string _test;
public MyAttr(string test)
{
this._test = test;
}
}
public class BaseClass
{
public string TheAttribute
{
get {
// Here I would like to get the "[MyAttr("...")]" from the classes in the bottom
return null;
}
}
}
public class SubClass : BaseClass
{
}
以下のコードは顧客が開発したものです (私の dll を使用)
public class TestClassOne
{
[MyAttr("Attribute one")]
public SubClass MyTestProperty = new SubClass();
}
public class TestClassTwo
{
[MyAttr("Attribute two")]
public SubClass MyTestProperty = new SubClass();
}