我在继承的Membership Provider对象上编写了一个测试方法,并想通过实际将成员资格提供程序转换为我的对象来调用该方法。成员资格不属于MembershipProvider类型。它是默认的Membership对象。
((MyMembershipProvider)Membership).Test();
提前感谢您的帮助。
答案 0 :(得分:6)
当然有可能。但是,如果您要实现自定义成员资格提供程序,则忘记从Provider
对象中获取属性Membership
。像这样:
((MyMembershipProvider)Membership.Provider).Test();
答案 1 :(得分:5)
试试这个:
((Membership)MyMembershipProvider).Test();
我猜这里,但我认为你的MemberShip是类类型,MyMembershipProvider是对类(对象)的引用。你刚刚把你的演员操作系统倒退了。
换句话说,你可能会尝试这样做:
int myVal = 1;
double mySecondVal = (myVal)double; // fail
double mySecondVal = (double)myVal; // success
答案 2 :(得分:1)
如果Membership
对象是MyMembershipProvider
类型,并且它具有.Test()
方法,则有可能。您可以这样检查:
if (Membership is MyMembershipProvider)
(Membership as MyMembershipProvider).Test();