C# - Расширение существующего каркаса герметичного класса
Рассмотрим запечатанный каркас класса "WorkItem" ( MSDN-описание)
Я хотел бы расширить этот запечатанный класс, чтобы я мог написать методы расширения класса, например, я мог бы написать:
workitem.ReadWrite();
Возможно ли это реализовать, если да, то как это можно сделать?
2 ответа
Решение
Очень возможно добавить методы расширения sealed
классы. Вы можете просто создать метод расширения для sealed
класс как concrete
учебный класс.
Вы можете написать так для своего класса, также вам нужно включить assembly
и использовать namespace
класса Extensions, где вы будете использовать метод.
public static class Extensions
{
public static void ReadWrite(this WorkItem item)
{
// Do your code
}
}
Пример метода расширения:
public static class WorkItemExtensions
{
public static void ReadWrite(this WorkItem objRef)
{
// Do things you need here
}
}