2012-04-10 101 views
1

我目前正在使用自定义MembershipProvider实现。但我需要额外的方法。我想直接调用这些方法的成员对象在我的控制之内是这样的:将扩展方法添加到MembershipProvider

Membership.DoStuff()

是否有可能做到这一点与扩展方法?我会在哪里开始? 谢谢!

回答

0

在尝试了很多例子之后,我发现this post他们声明您不能将扩展方法写入静态类。

成员资格是一个静态类,你不能扩展它。

0

你为什么不其直接添加到您的类(有自定义MemebershipProvider)再投隶属clasd到你,那么你会发现它。

如果你问扩展方法,它应该适用于任何类,所以你的问题的答案是肯定的。

0

是,会员是可扩展的,但你不知道扩展静态类Membership(因为这是不可能的),您必须扩展抽象类MembershipProvider,并调用扩展方法一样Membership.Provider.DoStuff()

例如:

扩展类

namespace Infrastructure.Extensions 
{ 
    public static class MembershipProviderExtensions 
    { 
     public static void DoStuff(this MembershipProvider provider) 
     { 
      // do stuff 
     } 
    } 
} 

在你的代码

using Infrastructure.Extensions; 
... 
Membership.Provider.DoStuff() 
...