C #: ключевое слово is и проверка на Not - PullRequest
252 голосов
/ 01 мая 2009

Это глупый вопрос, но вы можете использовать этот код, чтобы проверить, относится ли что-то к определенному типу ...

if (child is IContainer) { //....

Есть ли более элегантный способ проверить наличие экземпляра "НЕ"?

if (!(child is IContainer)) { //A little ugly... silly, yes I know...

//these don't work :)
if (child !is IContainer) {
if (child isnt IContainer) { 
if (child aint IContainer) { 
if (child isnotafreaking IContainer) { 

Да, да ... глупый вопрос ....

Поскольку существует вопрос о том, как выглядит код, это просто простое возвращение в начале метода.

public void Update(DocumentPart part) {
    part.Update();
    if (!(DocumentPart is IContainer)) { return; }
    foreach(DocumentPart child in ((IContainer)part).Children) {
       //...etc...

Ответы [ 11 ]

0 голосов
/ 23 апреля 2014
if (child is IContainer ? false : true)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...