2015-09-21 9 views
0

У меня есть старый # .NET приложение C 2.0, и мне нужно, чтобы добавить клиент FTP (не может сделать из-за с простой FtpWebRequest увы) и попытались включить System.Net.FtpClient от https://netftp.codeplex.com/ этого код autocompletes просто хорошо, когда я набираю его:Reference конфликт с System.Net.FtpClient

System.Net.FtpClient.FtpClient client = new System.Net.FtpClient.FtpClient(); 

Но я получаю следующее сообщение об ошибке:

The type or namespace name FtpClient does not exist in the namespace System.Net 

Я попытался исправить эту проблему, установив псевдоним опорного System.Net.FtpClient проекта (FTP вместо глобального), а затем ввести в верхней части:

extern alias ftp; 

и я получаю

The extern alias ftp was not specified in a /reference option 

Если я изменяю .NET Framework 4.5, кажется, что я могу обойти эту проблему, но мой приложение является старым аддоном для SAP Business One, а изменение с 2.0 до 4.5 дает мне десятки других ошибок, таких как некоторые sap-классы, у которых нет конструктора и т. д., поэтому, к сожалению, я не могу этого сделать. Есть ли другой способ заставить его работать?

ответ

1

Похоже, двоичные файлы распределенных для этой библиотеки не поддерживают v2.0

Взгляните на пакетных файлов, используемых для создания проекта: https://netftp.codeplex.com/SourceControl/latest#create_codeplex_release.bat и https://netftp.codeplex.com/SourceControl/latest#create_nuget_release.bat

Оба строить против v4

set msbuild=%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\msbuild.exe

Я также попытался установить самую старую версию на NuGet, но она по-прежнему конфликтует с каркасом версии 2.0.

Но, к счастью, они предоставляют проект, поддерживающий v2. Загрузите исходный код и откройте проект с именем System.Net.FtpClient.NET2.csproj

Теперь вы можете использовать выходные данные этого проекта вместо загруженных двоичных файлов.

Надеюсь, это поможет.

+0

Спасибо. Загрузил источник .net2, и теперь он работает как шарм :-) – runholen