1
голосов
5ответов
150 просмотров

Object initializations are lost through use of "as" keyword

I am using a derived class and casting the base class to it using the as keyword. When I do this, the derived class constructor is being called, and it's objects initialized, but the derived instance does not end up with the initialized objects (has nulls). Here's a code sample. // classes publi...

7
голосов
9ответов
531 просмотров

Есть ли веские причины ПРОТИВ использования ключевого слова C # as?

Я нахожу это с помощью следующего: TreeViewItem i = sender as TreeViewItem; if(i != null){ ... } легче написать и понять, чем: if(sender.GetType() == typeof(TreeViewItem)){ TreeViewItem i = (TreeViewItem)sender; ... } Есть ли веские причины не использовать первую конструк...