private UploadImageTask NewUploadImageTask(ImageShackEnum imageShack, StorageFile file) { switch (imageShack) { case ImageShackEnum.Jiuyou: return(new JyUploadImage(file)); case ImageShackEnum.Smms: return(new SmmsUploadImage(file)); case ImageShackEnum.Qin: return(new QnUploadImage(file) { Accound = Account.CloundAccound }); case ImageShackEnum.Cimage: return(new BitStamp.Model.Cimage.Cimage(file)); default: throw new ArgumentOutOfRangeException(nameof(imageShack), imageShack, null); } //return new JyUploadImage(file); }
public async Task Jcloud(Action onUpload) { //Cimage image = new Cimage(File); //image.UploadImage(); //return; ImageShackEnum imageShack = AccoutGoverment.AccountModel.Account.ImageShack; if (File.FileType == ".gif" && imageShack == ImageShackEnum.Jiuyou) { imageShack = ImageShackEnum.Qin; } var size = (await File.GetBasicPropertiesAsync()).Size; //1M //1024k //125000 if (size > 12500000) { imageShack = ImageShackEnum.Smms; } //4326 24,447 #if DEBUG //imageShack = ImageShackEnum.Cimage; #endif UploadImageTask uploadImageTask = NewUploadImageTask( imageShack, File); uploadImageTask.OnUploaded += (s, e) => { UploadImageTask uploadImage = s as UploadImageTask; Visibility = Visibility.Collapsed; Address = "上传" + File.Name; if (uploadImage == null) { return; } if (e) { //LinkReminder = "![](" + // uploadImage.Url + ")"; //Bcode = $"[img]{uploadImage.Url}[/img]"; Url = uploadImage.Url; onUpload?.Invoke(); } else { Address += "失败"; } }; Visibility = Visibility.Visible; uploadImageTask.UploadImage(); }
private ImageShackEnum CheckShack(ImageShackEnum imageShack) { //检查当前是否可以使用 if (imageShack == ImageShackEnum.Qin) { //如果图床账号错误 if (string.IsNullOrEmpty(Account.CloundAccound.AccessKey) || string.IsNullOrEmpty(Account.CloundAccound.Bucket) || string.IsNullOrEmpty(Account.CloundAccound.SecretKey) || string.IsNullOrEmpty(Account.CloundAccound.Url)) { return(ImageShackEnum.Smms); } } return(imageShack); }
private UploadImageTask NewUploadImageTask(ImageShackEnum imageShack, StorageFile file) { switch (imageShack) { case ImageShackEnum.Jiuyou: return(new JyUploadImage(file)); case ImageShackEnum.Smms: break; case ImageShackEnum.Qin: break; default: throw new ArgumentOutOfRangeException(nameof(imageShack), imageShack, null); } return(new JyUploadImage(file)); }
public async Task Jcloud(Action <bool> onUpload) { ImageShackEnum imageShack = Account.ImageShack; if (File.FileType == ".gif" && imageShack == ImageShackEnum.Jiuyou) { imageShack = ImageShackEnum.Qin; } var size = (await File.GetBasicPropertiesAsync()).Size; //1M //1024k //125000 if (size > 125000) { imageShack = ImageShackEnum.Smms; } //4326 24,447 imageShack = CheckShack(imageShack); #if DEBUG //imageShack = ImageShackEnum.Cimage; #endif UploadImageTask uploadImageTask = NewUploadImageTask( imageShack, File); uploadImageTask.OnUploaded += (s, e) => { if (!(s is UploadImageTask uploadImage)) { onUpload?.Invoke(false); return; } Url = uploadImage.Url; onUpload?.Invoke(e); }; uploadImageTask.UploadImage(); }