У меня есть функция VB.NET, как показано ниже:Почему функция Async возвращает System.Threading.Tasks.Task`1 [System.String]?
Public Shared Async Function GetIdDoc() As Task(Of String)
Dim result As String = ""
'Dim Uri As String = "http://localhost:53917/api/Documenti/GetNextIdDocumenti"
Dim Uri As String = apiUri & ApiEndPoints.GetNextIdDocumenti
Using client = New HttpClient()
Using response = Await client.GetAsync(Uri)
If response.IsSuccessStatusCode Then
Dim DocumentiIDJsonString = Await response.Content.ReadAsStringAsync()
result = DocumentiIDJsonString.ToString()
End If
End Using
End Using
Return result
End Function
Я пытаюсь вернуть Document ID из базы данных, но я получаю
System.Threading.Tasks.Task` 1 [System.String]
Где на самом деле он должен возвращать «2». Пожалуйста, помогите мне в этом: что я делаю неправильно с этой функцией?
Update
здесь функция называется:
txtIDDoc_Detail.Text = ApiData.GetIdDoc().ToString()
Но внутри текстового поля я получаю выше текст. Благодарю.
Измените свой вопрос, чтобы также показать код, в котором вызывается функция. –
Пожалуйста, уточните мой обновленный вопрос. Благодарю. – barsan
Возможно, вы должны переименовать 'GetIdDoc' в' GetIdDocAsync', чтобы следовать обычно рекомендуемому шаблону для методов async. –