示例#1
0
        public async Task <string> UploadFile(FileUploadData data, string mimetype, Stream filestream,
                                              bool suppressDuplicateError = false)
        {
            const string path = "nodes?suppress={0}";

            try
            {
                using (var content = new MultipartFormDataContent())
                {
                    var json        = SerializeObject(data);
                    var metaContent = new StringContent(json);
                    metaContent.Headers.Add("Content-Disposition", "form-data; name=\"metadata\"");
                    content.Add(metaContent);

                    var streamContent = new StreamContent(filestream);
                    streamContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(mimetype);
                    streamContent.Headers.Add("Content-Disposition",
                                              string.Format("form-data; name=\"content\";filename=\"{0}\"", data.Name));

                    content.Add(streamContent);
                    var url    = CreateContentUrl(string.Format(path, suppressDuplicateError));
                    var result = await PostMessage(url, content);

                    result.EnsureSuccessStatusCode();
                    var resp = await result.Content.ReadAsStringAsync();

                    return(resp);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            return("");
        }
示例#2
0
        public async Task <string> UploadFile(FileUploadData data, string file, bool suppressDuplicateError = false)
        {
            var type = MimeTypes.GetMimeType(file);

            using (var stream = File.OpenRead(file)) {
                return(await UploadFile(data, type, stream));
            }
        }
		public async Task<string> UploadFile(FileUploadData data,string mimetype, Stream filestream, bool suppressDuplicateError = false)
		{
			const string path = "nodes?suppress={0}";

			try{
				using (var content = new MultipartFormDataContent())
				{
					var json = SerializeObject (data);
					var metaContent = new StringContent (json);
					metaContent.Headers.Add ("Content-Disposition", "form-data; name=\"metadata\"");
					content.Add (metaContent);

					var streamContent = new StreamContent (filestream);
					streamContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(mimetype);
					streamContent.Headers.Add ("Content-Disposition", string.Format("form-data; name=\"content\";filename=\"{0}\"",data.Name));

					content.Add (streamContent);
					var url = CreateContentUrl (string.Format (path, suppressDuplicateError));
					var result = await PostMessage (url, content);
					result.EnsureSuccessStatusCode();
					var resp = await result.Content.ReadAsStringAsync();
					return resp;
				}
			}
			catch(Exception ex) {
				Console.WriteLine (ex);
			}
			return "";
		}
		public async Task<string> UploadFile(FileUploadData data, string file, bool suppressDuplicateError = false)
		{
			var type = MimeTypes.GetMimeType (file);
			using (var stream = File.OpenRead (file)) {
				return await UploadFile (data,type, stream);
			}
		}