Пример #1
0
        private void Upload(string webDavPath, string content)
        {
            Uri webDavUri = new Uri(webDavPath);

            Log.Debug("webDavUri {@webDavUri}", webDavUri);
            var    scheme           = webDavUri.Scheme;
            string webDavConnection = scheme + "://" + webDavUri.Host + ":" + webDavUri.Port;
            int    pathLastSlash    = webDavUri.AbsolutePath.LastIndexOf("/") + 1;
            string file             = webDavUri.AbsolutePath.Substring(pathLastSlash);
            string path             = webDavUri.AbsolutePath.Remove(pathLastSlash);

            Log.Debug("webDavConnection {@webDavConnection}", webDavConnection);

            Log.Debug("UserName {@UserName}", WebDavCredentials.UserName);

            MemoryStream stream = new MemoryStream();
            StreamWriter writer = new StreamWriter(stream);

            writer.Write(content);
            writer.Flush();
            stream.Position = 0;

            Log.Debug("stream {@stream}", stream);

            var client = new WebDAVClient.Client(WebDavCredentials);

            client.Server   = webDavConnection;
            client.BasePath = path;

            var fileUploaded = client.Upload("/", stream, file).Result;

            Log.Information("Upload Status {StatusDescription}", fileUploaded);
        }
Пример #2
0
        static void Main(string[] args)
        {
            // Basic authentication required
            var c = new WebDAVClient.Client(new NetworkCredential {
                UserName = "******", Password = "******"
            });

            c.Server   = "https://webdav.4shared.com";
            c.BasePath = "/";

            var files          = c.List("/").Result;
            var folder         = files.FirstOrDefault(f => f.Href.EndsWith("/Test/"));
            var folderReloaded = c.Get(folder.Href).Result;

            var folderFiles = c.List(folder.Href).Result;
            var folderFile  = folderFiles.FirstOrDefault(f => f.IsCollection == false);

            var x = c.Download(folderFile.Href).Result;

            var tempName     = Path.GetRandomFileName();
            var fileUploaded = c.Upload(folder.Href, File.OpenRead(@"C:\Users\itay.TZUNAMI\Desktop\Untitled.png"), tempName).Result;

            tempName = Path.GetRandomFileName();
            var folderCreated = c.CreateDir(folder.Href, tempName).Result;
        }
Пример #3
0
        public async void Upload(string filename)
        {
            // Basic authentication required
            var client = new WebDAVClient.Client(new NetworkCredential {
                UserName = GenericLogin(), Password = GenericPassword()
            });

            // Set basic information for WebDAV provider
            client.Server   = "http://" + _urlWebDav;
            client.BasePath = "/";

            try
            {
                string workingCopy = Path.GetTempFileName();
                File.Copy(filename, workingCopy, true);
                await client.Upload("/", File.OpenRead(workingCopy), _userGuid + ".xml");

                File.Delete(workingCopy);
            }
            catch (Exception e)
            {
                logger.Error(e);
                logger.Error(e.Message);
            }

            //             await client.DeleteFile(filename);
            //             await client.Upload("/", File.OpenRead("TimeMerge_Data.css"), "TimeMerge_Data.css");
            //             await client.Upload("/", File.OpenRead("TimeMerge_Data.xsl"), "TimeMerge_Data.xsl");

            //             Stream x = await client.Download("toDelete.xml");
            //             var reader = new StreamReader(x);
            //             string contents = reader.ReadToEnd();
        }
        private void Upload(string webDavPath, string content)
        {
            Uri webDavUri = new Uri(webDavPath);
            Log.Verbose("webDavUri {@webDavUri}", webDavUri);
            var scheme = webDavUri.Scheme;
            string webDavConnection = scheme + "://" + webDavUri.Host + ":" + webDavUri.Port;
            int pathLastSlash = webDavUri.AbsolutePath.LastIndexOf("/") + 1;
            string file = webDavUri.AbsolutePath.Substring(pathLastSlash);
            string path = webDavUri.AbsolutePath.Remove(pathLastSlash);
            Log.Verbose("webDavConnection {@webDavConnection}", webDavConnection);

            Log.Debug("UserName {@UserName}", WebDavCredentials.UserName);

            MemoryStream stream = new MemoryStream();
            StreamWriter writer = new StreamWriter(stream);
            writer.Write(content);
            writer.Flush();
            stream.Position = 0;

            Log.Verbose("stream {@stream}", stream);

            var client = new WebDAVClient.Client(WebDavCredentials);
            client.Server = webDavConnection;
            client.BasePath = path;

            var fileUploaded = client.Upload("/", stream, file).Result;

            Console.WriteLine($"Upload Status {fileUploaded}");
            Log.Information("Upload Status {StatusDescription}", fileUploaded);
        }
        private void Upload(string webDavPath, string content)
        {
            Uri webDavUri = new Uri(webDavPath);
            Log.Verbose("webDavUri {@webDavUri}", webDavUri);
            var scheme = webDavUri.Scheme;
            string webDavConnection = scheme + "://" + webDavUri.Host + ":" + webDavUri.Port;
            int pathLastSlash = webDavUri.AbsolutePath.LastIndexOf("/") + 1;
            string file = webDavUri.AbsolutePath.Substring(pathLastSlash);
            string path = webDavUri.AbsolutePath.Remove(pathLastSlash);
            Log.Verbose("webDavConnection {@webDavConnection}", webDavConnection);

            Log.Verbose("UserInfo {@UserInfo}", webDavUri.UserInfo);
            int userIndex = webDavUri.UserInfo.IndexOf(":");

            string user = webDavUri.UserInfo.Remove(userIndex, (webDavUri.UserInfo.Length - userIndex));
            Log.Verbose("user {@user}", user);

            string pass = webDavUri.UserInfo.Substring(userIndex + 1);
            Log.Verbose("pass {@pass}", pass);

            MemoryStream stream = new MemoryStream();
            StreamWriter writer = new StreamWriter(stream);
            writer.Write(content);
            writer.Flush();
            stream.Position = 0;

            Log.Verbose("stream {@stream}", stream);

            var client = new WebDAVClient.Client(new NetworkCredential {UserName = user, Password = pass});
            client.Server = webDavConnection;
            client.BasePath = path;

            var fileUploaded = client.Upload("/", stream, file).Result;

            Console.WriteLine($"Upload Status {fileUploaded}");
            Log.Information("Upload Status {StatusDescription}", fileUploaded);
        }