C#cast类型的帮助

Die*_*xel -3 c# asp.net casting

我在继承的Membership Provider对象上编写了一个测试方法,并希望通过实际将成员资格提供程序转换为我的对象来调用该方法.成员资格不属于MembershipProvider类型.它是默认的Membership对象.

 ((MyMembershipProvider)Membership).Test();
Run Code Online (Sandbox Code Playgroud)

在此先感谢您的帮助.

odd*_*ddy 6

当然有可能.但是,如果您要实现自定义成员资格提供程序,那么您忘记ProviderMembership对象中获取属性.像这样:

((MyMembershipProvider)Membership.Provider).Test();
Run Code Online (Sandbox Code Playgroud)


Jas*_*own 5

试试这个:

((Membership)MyMembershipProvider).Test();
Run Code Online (Sandbox Code Playgroud)

我在这里猜测,但我认为你的MemberShip是类类型,而MyMembershipProvider是对类(对象)的引用.你刚刚把你的演员操作系统倒退了.

换句话说,您可能正在尝试执行以下操作:

int myVal = 1;
double mySecondVal = (myVal)double; // fail

double mySecondVal = (double)myVal; // success
Run Code Online (Sandbox Code Playgroud)