luciomorais Posted August 28, 2013 at 10:49 PM Report #522841 Posted August 28, 2013 at 10:49 PM Boa noite, não sei se já existe algum topico sobre este assunto caso haja peço desculpa! Mas indo ao que importa... Bem to a tentar fazer uma app cliente do género que o dropbox possui. Seja possível sincronizar todas as mudanças que existem na pasta e sincronizar com o servidor (Cloud), a minha questão é se sabem de alguma forma poder listar tudo que existe no servidor e de forma mais eficiente possivel, os metodos que existem com o FtpWebRequest para listagem só listam a directoria que estamos a "ver" (basicamente directoria root)... Para já estou a usar FTP como protocolo de transferência e a usar um servidor no 000WebHost mas será posteriormente para aplicar com um servidor Cloud da empresa onde trabalho e penso que protocolo FTP possa fazer esse serviço... Só que tenho deparado com alguns problemas de eficiencia com o FTP como lentidão de processos, o DropBox já li que usa o rsync mas em .NET não existe compatibilidade e penso que seja preciso configurar qualquer coisa no servidor Cloud e eu não tenho acesso nem tenho acerteza se seja possivel.. Tambem existe o ownCloud e a app cliente deles usam o ocSync e o mirall... Peço a vossa ajuda para resolver alguns destes problemas. Cumprimentos
Rui Carlos Posted August 31, 2013 at 02:54 PM Report #523070 Posted August 31, 2013 at 02:54 PM Que tenha conhecimento, o protocolo FTP só permite listar um directório específico. Em princípio terás que implementar tu a funcionalidade de listar tudo. Uma forma de optimizar esta operação passa por usar várias threads para efectuar pedidos ao servidor de forma concorrente. Rui Carlos Gonçalves
Rechousa Posted September 3, 2013 at 12:36 AM Report #523241 Posted September 3, 2013 at 12:36 AM @luciomorais: Olá, Tal como disseste, o protocolo FTP é lento. Vê isto, pode ser que te ajude. Pedro Martins Sharing is Knowledge! http://www.linkedin.com/in/rechousa
brunobola Posted September 5, 2013 at 11:02 PM Report #523569 Posted September 5, 2013 at 11:02 PM Podes obter o conteúdo em XML e tratar o que pretendes mostrar, por exemplo: public class WebRequestGetExample { public static void Main () { // Get the object used to communicate with the server. FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://www.contoso.com/"); request.Method = WebRequestMethods.Ftp.ListDirectoryDetails; // This example assumes the FTP site uses anonymous logon. request.Credentials = new NetworkCredential ("anonymous","janeDoe@contoso.com"); FtpWebResponse response = (FtpWebResponse)request.GetResponse(); Stream responseStream = response.GetResponseStream(); StreamReader reader = new StreamReader(responseStream); Console.WriteLine(reader.ReadToEnd()); Console.WriteLine("Directory List Complete, status {0}", response.StatusDescription); reader.Close(); response.Close(); } }
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now