VB.net RESTSharp 使用流添加文件

问题描述 投票:0回答:2

我正在尝试在 vb.net 中使用 RESTSharp 上传文件。

我无法完成这个。

以下是我正在尝试的代码。

Public Function CreateUploadFileRequest(ByVal path As String, ByVal filename As String, ByVal fileStream As Stream) As RestRequest
            Dim request = New RestRequest(Method.POST)
            request.Timeout = Integer.MaxValue
            request.Resource = "{version}/files/dropbox{path}"
            request.AddParameter("version", _version, ParameterType.UrlSegment)
            request.AddParameter("path", path, ParameterType.UrlSegment)
            request.AddParameter("file", filename)
            request.AddFile("file", fileStream, filename) '---I am wrong at this line
            Return request
        End Function

我找到了 C# 代码,但无法转换 vb.net 中的特定行

request.AddFile(FieldName, (s) =>
    {
        fileStream.CopyTo(s);
        fileStream.Flush();
    }, FileName, ContentType);

如果我将上面的内容转换成vb.net,那么它就不起作用了。下面是转换后的代码。

request.AddFile("file", Function(s)
fileStream.CopyTo(s)
fileStream.Flush()
End Function, FileName, ContentType)

我还在 c# 中发现了另外一行,但在代码转换后,同样的行在 vb.net 中不起作用。

[in C#] request.AddFile ("file", s => StreamUtils.CopyStream (fileStream, s), filename);

转换为 vb.net ,[不工作]

[in vb.net] request.AddFile("file", Function(s) StreamUtils.CopyStream(fileStream, s), filename)
vb.net restsharp
2个回答
0
投票

以下正在运行:

dim ms as new MemoryStream()
request.AddFile("file", ms.ToArray(), "123.pdf_or_whateverfilename")
ms.Dispose()

注释:ms 将由我的代码中的相应函数填充。就我而言,它将由 pdf 生成器函数编写。


0
投票

你能告诉我完整的代码是什么样的吗?也就是文件的路径怎么表示?

我已经尝试上传文件 3 天了,我只能使用 postman 和 c# 来完成,但不能使用 vb.net

非常感谢!

© www.soinside.com 2019 - 2024. All rights reserved.