C# 如何从mono for android应用程序中获取网络文件列表?

C# 如何从mono for android应用程序中获取网络文件列表?,c#,android,xamarin.android,C#,Android,Xamarin.android,我在安卓上玩Mono已经有一段时间了。我想知道如何(或是否可能)访问位于NAS上的网络文件 我真的希望它能像你想象的那样简单 var files = System.IO.Directory.GetFiles("\\NAS-NAME\SomeDirectory\", "*"); 不幸的是,我收到了这个错误消息,所以我猜这并不像标准的.NET应用程序那么简单: Unhandled Exception: System.IO.DirectoryNotFoundException: Directory

我在安卓上玩Mono已经有一段时间了。我想知道如何(或是否可能)访问位于NAS上的网络文件

我真的希望它能像你想象的那样简单

var files = System.IO.Directory.GetFiles("\\NAS-NAME\SomeDirectory\", "*");
不幸的是,我收到了这个错误消息,所以我猜这并不像标准的.NET应用程序那么简单:

Unhandled Exception:

System.IO.DirectoryNotFoundException: Directory '\\NAS-NAME\SomeDirectory\' not found.
我猜这并不像标准的.NET应用程序那么简单:

Unhandled Exception:

System.IO.DirectoryNotFoundException: Directory '\\NAS-NAME\SomeDirectory\' not found.
标准.NET应用程序有所有WinAPI可供构建,例如,
FileStream.Write
使用WinAPI
WriteFile
,它支持UNC路径。Android是Linux,因此没有“完整”的WinAPI实现,而CIFS/SMB超出了Android的Mono(以及普通Mono)的范围,因此出现了错误

您应该尝试使用备用网络协议,例如,您的NAS是否支持WebDAV?有许多C#WebDAV库可以轻松移植到Android的Mono上

我猜这并不像标准的.NET应用程序那么简单:

Unhandled Exception:

System.IO.DirectoryNotFoundException: Directory '\\NAS-NAME\SomeDirectory\' not found.
标准.NET应用程序有所有WinAPI可供构建,例如,
FileStream.Write
使用WinAPI
WriteFile
,它支持UNC路径。Android是Linux,因此没有“完整”的WinAPI实现,而CIFS/SMB超出了Android的Mono(以及普通Mono)的范围,因此出现了错误


您应该尝试使用备用网络协议,例如,您的NAS是否支持WebDAV?有许多C#WebDAV库可以轻松移植到Android版的Mono…

感谢您提供的信息。我的印象是Mono已经翻译了WinAPI的大部分内容。谢谢你提供的信息。我的印象是Mono已经翻译了WinAPI的大部分内容。