Я использую Сесил, чтобы попытаться прочитать свойства моих атрибутов:
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class TraceMethodAttribute : Attribute {
public TraceMethodAttribute() {
MethodStart = true;
MethodReturn = true;
MethodMessages = true;
}
public bool MethodStart { get; set; }
public bool MethodReturn { get; set; }
public bool MethodMessages { get; set; }
}
[TraceMethod(MethodMessages = false)]
static void Main(string[] args) {
}
...
if (attribute.Constructor.DeclaringType.FullName == typeof(TraceMethodAttribute).FullName) {
if ((bool)attribute.Fields["MethodMessages"] == true) {
EditMethodStart(assembly, method);
}
Это, я хотел бы, чтобы последний блок кода проверял всякий раз, когда атрибут, примененный к Main, например, имеет MethodMessages, установленный в true или false. Из того, что я видел, похоже, что attribute.Fields.Count и attribute.Properties.Count имеет значение 0. Почему это так?
Спасибо