如何找到一个对象的类?

时间:2014-08-05 09:10:56

标签: c#

我有一个名为A(Object senderObject)的方法,它接收senderObjectas参数,该参数只是发送者的对象。在运行时,我不确定哪个类会调用此方法,但我需要的不仅仅是从哪个类获取它(使用getType),还要将其转换为真正的类类型并分配给另一个相同的类对象。 / p>

让我举个例子来澄清我的问题。假设senderObject来自A类,我需要这样做:

A objAnother = (A)senderObject.

假设senderObject来自B类,我需要这样做:

B objAnother = (B)senderObject.

我可以知道怎么做吗?我需要动态方法。

2 个答案:

答案 0 :(得分:2)

您可以使用isas

if (senderObject is A)
{
    // do something
}

或者:

A a = senderObject as A;

if (a != null)
{
    // do something
}

答案 1 :(得分:0)

您可以使用is关键字执行此操作。

if (senderObject is ClassA)
{
}