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); }
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; }
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); }