Я пытаюсь добавить информацию в интерфейс C # и пытаюсь добавить эту информацию, используя атрибуты.
Скажем, например, что у меня везде есть параметры int, и некоторые из этих параметров int являются "идентификаторы строк ", а некоторые являются" идентификаторами столбцов ".Я хотел бы иметь возможность сделать это:
namespace RowIdTest1
{
using System;
public class Class1
{
public int Get([RowId] int r, [ColumnId] int c) { return 3; }
public void Set([RowId] int r, [ColumnId] int c, int x) { return; }
}
[AttributeUsageAttribute(AttributeTargets.All)]
public class RowIdAttribute : System.Attribute { }
[AttributeUsageAttribute(AttributeTargets.All)]
public class ColumnIdAttribute : System.Attribute { }
}
, чтобы, когда другой программист использовал мою DLL и просматривал Class1 в Visual Studio, он или она увидит это в «Class1 (из метаданных)»"window:
namespace RowIdTest1
{
public class Class1
{
public Class1();
public int Get([RowId] int r, [ColumnID] int c);
public void Set([RowId] int r, [ColumnID] int c, int x);
}
}
Когда я пытаюсь это сделать, атрибуты вообще не отображаются.
Я знаю, что вы можете делать такие вещи с ///-comments.
Я знаю, что вы можете использовать класс System.ComponentModel.DescriptionAttribute для чего угодно (хотя описания методов будут появляться, а описания параметров не будут появляться).
Я делаю что-то совершенно странное с атрибутами C #?Не подходит?Безумный