Что такое эквивалент VB.NET ключевого слова С#? Мне нужно проверить, реализует ли данный объект интерфейс. В С# я просто сказал бы: if (x is IFoo) { } Использует TryCast(), а затем лучше проверяет Nothing? Ответ 1 Попробуйте выполнить if TypeOf x Is IFoo Then ... Ответ 2 Вот так: If TypeOf x Is IFoo Then Ответ 3 Используйте это онлайн-решение для конвертации С# в VB.NET, а также ряд других кодовых преобразований. Ответ 4 Прямой перевод: If TypeOf x Is IFoo Then ... End If Но (чтобы ответить на ваш второй вопрос), если исходный код был лучше написан как var y = x as IFoo; if (y != null) { ... something referencing y rather than (IFoo)x ... } Тогда да, Dim y = TryCast(x, IFoo) If y IsNot Nothing Then ... something referencing y rather than CType or DirectCast (x, IFoo) End If лучше. Ответ 5 http://www.developerfusion.com/tools/convert/csharp-to-vb/ также является отличным инструментом преобразования.
Ответ 3 Используйте это онлайн-решение для конвертации С# в VB.NET, а также ряд других кодовых преобразований.
Ответ 4 Прямой перевод: If TypeOf x Is IFoo Then ... End If Но (чтобы ответить на ваш второй вопрос), если исходный код был лучше написан как var y = x as IFoo; if (y != null) { ... something referencing y rather than (IFoo)x ... } Тогда да, Dim y = TryCast(x, IFoo) If y IsNot Nothing Then ... something referencing y rather than CType or DirectCast (x, IFoo) End If лучше.
Ответ 5 http://www.developerfusion.com/tools/convert/csharp-to-vb/ также является отличным инструментом преобразования.