如何使用C#代码从Windows将文件从FTP传输到大型机?

问题描述 投票:-3回答:1
I want to FTP a file from windows path to mainframe path dev region(host-d2). Im not aware of mainframe, 

所以让我知道如何使用C#代码将文件上传到特定区域的主机(例如host-d2)。输入参数将是input_file path->存储输入文件的位置。FTP_Host-> host-d2useriD->用户ID密码->密码这里不会有任何ftppath,因为该区域是大型机中唯一要考虑的区域。

    enter code here
c# ftp sftp mainframe
1个回答
0
投票

在这个答案中,我假设这个大型机正在运行z / OS操作系统,但是如果我的假设不正确,请更正我。

如果可以使用FTP将文件从C#程序上传到任何系统,则z / OS相同。显然,z / OS的FTP服务器需要正在运行,进行适当配置并可以通过网络访问。出于安全原因,您应该使用FTPS(具有TLS加密的FTP,同时应用于控制和数据通道),并且所使用的ID和密码不应进行硬编码,也不能“明文存储”。而这实际上只是安全性的最低要求。通常,您希望以二进制模式传输文件,但是如果要进行代码页转换,则可以使用ASCII(文本)模式,在这种情况下,应确保要求z / OS应用所需的代码页转换。

如果直接将文件上传到z / OS zFS(UNIX文件系统)中,那应该很熟悉UNIX / Linux风格的目录和文件名。 z / OS还支持z / OS数据集,该数据集引入了诸如“记录”和“记录长度”之类的概念。这些是z / OS的附加功能,但是可以发送FTP命令来通知z / OS的FTP服务器,您希望如何将文件上载存储为数据集,特别是记录长度。另外,在CD命令中指定的数据集“目录”名称与UNIX / Linux风格(和z / OS zFS)目录名称稍有不同。

IBM在z / OS FTP服务器上提供了足够的文档,包括有关它支持的命令的信息,但是如果遇到麻烦,一种基本方法是尝试从命令行FTP客户端上载文件,然后检查是否在z / OS上获得所需的结果。如果没有得到想要的结果,请参考IBM的文档或其他教程,然后重试。

如果出于任何原因而更喜欢其他内容,也可以通过许多其他方式将文件上传到z / OS。以下是一些示例,没有特定顺序:

  1. 您可以使用连接到z / OS的NFS服务器的NFS客户机来挂载目录,然后只需将文件复制到该挂载的目录。

  2. 您可以使用z / OS的OpenSSH和SFTP。

  3. 您可以使用托管文件传输产品,例如IBM MQ Advanced(MQ托管文件传输)或Sterling Connect:Direct。

  4. 您可以通过HTTPS将文件上传到z / OS随附的IBM HTTP Server for z / OS。

  5. 您可以通过z / OS管理工具的REST API放置文件以使用z / OS文件。 z / OSMF也包含在z / OS中。

  6. 您可以通过电子邮件将文件发送到z / OS,以便z / OS对其进行处理。至少有两种方法可以做到这一点,但是一种方法是使用CASI Software的Mail2ZOS产品。

  7. 您根本无法发送文件,这本质上是面向批处理的交互。取而代之的是,您可以某种方式传输数据,以实现更实时(或接近实时)的交互。有多种方法可以做到这一点。询问是否需要更多信息。

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