-
זה מאוד פשוט.
באנגולר אתם שולחים את הקובץ לשרת, אם את השלב הזה גם מוקשה, פתחו על זה אשכול חדש.
בצד השרת יש לכם אוסף בתים (byte[]), או זרם (stream).
אתם אמורים להעלות, לקבל תשובה עם מזהה, ולהחזיר ללקוח אישור + מזהה אם נדרש.יש לכם כבר חשבון בAWS?
פתחתם כבר BUCKET בS3?אשמח לעזור, תעדכנו סטטוס.
-
לא יודע אם זה עוד רלבנטי לך, אבל לתועלת הציבור.
תתקיני בפרויקט את הSDK הזה: https://aws.amazon.com/sdk-for-net/
(ישנה שם אפשרות להתקין את זה דרך Nuget)הנה מחלקה שמשתמשת בAPI הזה כדי לגבות את הדטה בייסים שלי:
בהצלחה!
זה מציג את הקוד לא הכי מושלם..
using Amazon.S3;
using Amazon.S3.Transfer;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;namespace AwsEmptyApp1
{
public class UploadFiles
{
string bucket = "";//your backet
string SubDirectoryInBucket = "";//your directory
Dictionary<string,string> allFiles = new Dictionary<string, string>(); //fileName, fullPathpublic void Start() { try { //כאן נכתב הקוד שמגבה את הדטה בייסים השונים //אחרי זה רצים בלולאה ויוצרים את מערך השמות שלהם עבור ההלאה foreach (var db in dbNames) { var fileName = ""; var fullPath = ""; allFiles.Add(fileName, fullPath); } //העלאה לאמזון Task.Run(async () => { var isUpload = await UploadFiles(allFiles); }).GetAwaiter().GetResult(); } catch (Exception ex) { // } Console.WriteLine("---- DB Backup succesfuly --- "); } public static async Task<bool> UploadFolder(string pathDirectory) { IAmazonS3 s3Client = new AmazonS3Client(); var transfer = new TransferUtilityUploadDirectoryRequest(); transfer.BucketName = bucket; transfer.KeyPrefix = SubDirectoryInBucket; transfer.Directory = pathDirectory; var transferUtility = new TransferUtility(); //כאן אפשר ליצור מנוי לפונקציה שמציגה את התקדמות ההעלאה //transfer.UploadDirectoryProgressEvent += displayProgressFolder; await transferUtility.UploadDirectoryAsync(transfer); return true; } public static async Task<bool> UploadFiles(Dictionary<string, string> pathFiles) { IAmazonS3 s3Client = new AmazonS3Client(); var transferUtility = new TransferUtility(); foreach (var file in pathFiles) { var req = new TransferUtilityUploadRequest(); req.BucketName = bucket; req.FilePath = file.Value; req.Key = SubDirectoryInBucket + file.Key; //כאן אפשר ליצור מנוי לפונקציה שמציגה את התקדמות ההעלאה //req.UploadProgressEvent += displayProgressFile; await transferUtility.UploadAsync(req); } return true; } }}
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות