C# - 扩展现有框架密封 class

C# - Extending existing framework sealed class

考虑密封框架class "WorkItem" (MSDN-description)

我想扩展这个密封的 class 以便我可以编写 class 的扩展方法,例如我可以写:

workitem.ReadWrite();

这是否可以实现,如果可以,如何实现?

很有可能向 sealed classes 添加扩展方法。您可以简单地为 sealed class 创建一个扩展方法,例如 concrete class。

您可以像这样为您的 class 编写,还需要包括 assembly 并使用您将要使用的扩展 class 的 namespace方法。

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
        }
    }