VB.NET中C#的C#等价物是什么?

Gir*_*ish 7 casting ctype equivalent vb.net-to-c#

我试图将MSDN文章创建动态数据输入用户界面中提供的示例转换为C#,但我坚持使用以下代码:

CType(dq, IUIBuildingBlock).QuestionText = reader("QuestionText")
Run Code Online (Sandbox Code Playgroud)

如何将上述VB.NET语句转换为C#?

Cod*_*ray 9

在C#中,您可以通过将要强制转换的类型放在要转换的引用变量前面的括号中来指定强制转换((type)instance).

因此,要将object(dq)强制转换为类型IUIBuildingBlock,可以使用以下代码:

((IUIBuildingBlock)dq).QuestionText = reader("QuestionText");
Run Code Online (Sandbox Code Playgroud)

(请注意,如果对未实现的对象执行强制转换,则会抛出异常IUIBuildingBlock,但也会CType如此,因此我认为这不是问题.)