Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
994 views
in Technique[技术] by (71.8m points)

casting - What is the C# equivalent of CType in VB.NET?

I am trying to convert the example provided in MSDN article Creating Dynamic Data Entry User Interfaces to C#, but am stuck at the following code:

CType(dq, IUIBuildingBlock).QuestionText = reader("QuestionText")

How do I convert the above VB.NET statement to C#?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

In C#, you can specify a cast by putting the type you want to cast to in parenthesis in front of the reference variable that you want to cast ((type)instance).

So, to cast the object (dq) to the type IUIBuildingBlock, you could use the following code:

((IUIBuildingBlock)dq).QuestionText = reader("QuestionText");

(Note that this will throw an exception if the cast is done on an object that doesn't implement IUIBuildingBlock, but so will CType, so I assume that is not a problem.)


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...