Страницы

Поиск по вопросам

воскресенье, 15 декабря 2019 г.

Конвертация кода C# => VB.NET

#c_sharp #vbnet #visual_studio_2015


День добрый. Переписывал библиотеку с C# на более удобный для себя VB.NET и не смог
разобраться как написать два куска кода.

Код 1.

throw new RucaptchaErrorException((RucaptchaError)Enum.Parse(typeof(RucaptchaError),
str.Substring(6)));


Попытка получить хоть какой то код через декомпилятор выглядит так:

Throw New RucaptchaErrorException(DirectCast(Enum.Parse(GetType(RucaptchaError),
Str.Substring(6)), 
RucaptchaError))


Код 2.

public object Clone()
{
    var paramsContainer = new ParamsContainer();
    foreach (var obj in from object index in Params.Keys select (Param) Params[index])
        paramsContainer.Params.Add(obj.Key, obj);
    return paramsContainer;
}


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

Прошу помощи.
    


Ответы

Ответ 1



Код 1: Throw New RucaptchaErrorException(DirectCast(System.Enum.Parse(GetType(RucaptchaError), str.Substring(6)), RucaptchaError)) Код 2: Option Infer On Public Function Clone() As Object Dim paramsContainer = New ParamsContainer() For Each obj In From index As Object In Params.Keys Select CType(Params(index), Param) paramsContainer.Params.Add(obj.Key, obj) Next obj Return paramsContainer End Function p.s. могут быть ошибки, использовал конвертер: http://www.tangiblesoftwaresolutions.com/Free_Edition_Downloads/Instant%20VB%20(Free%20Edition)%20Setup.exe

Комментариев нет:

Отправить комментарий