Ограничение интерфейсом в C#
Ограничение интерфейсом обещает, что у T есть члены
указанного интерфейса. Его записывают так же, как ограничение
классом: where T : IName. Внутри метода эти члены вызывают
напрямую. Приводить T к конкретному классу не нужно.
Метод читает текстовую метку:
static string Label<T>(T item) where T : IName => item.Name;
Console.WriteLine(Label(new Tag())); // выведет "core"
interface IName { string Name { get; } }
class Tag : IName { public string Name { get; init; } = "core"; }
Дан код:
interface ITag
{
string Tag { get; }
}
Опишите класс Edge с меткой "edge", который реализует этот интерфейс. Прочитайте метку обобщённым методом с ограничением интерфейсом и выведите её.