1
RestSharpとグラフAPIを使用してOnedriveにファイルをアップロードしようとしています。基本的に私はExcelファイルをアップロードしたいと思います。しかし、ファイルが保存されても、コンテンツに問題があります。私が使用しています:グラフAPIを使用してC#でOnedriveにアップロード
https://graph.microsoft.io/en-us/docs/api-reference/v1.0/api/item_uploadcontent
は、コードを使用して:
string newToken = "bearer ourtoken";
var client = new RestClient("https://xxx-my.sharepoint.com/_api/v2.0/"+ oneDrivePath + Path.GetFileName(filePathWithName) + ":/content");
var request = new RestRequest(Method.PUT);
request.RequestFormat = DataFormat.Json;
request.AddHeader("Authorization", newToken);
request.AddHeader("Content-Type", "text/plain");
byte[] sContents;
FileInfo fi = new FileInfo(filePathWithName);
// Disk
FileStream fs = new FileStream(filePathWithName, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
sContents = br.ReadBytes((int)fi.Length);
br.Close();
fs.Close();
request.AddBody(Convert.ToBase64String(sContents));
var response = client.Execute(request);
これは、しかし、XLSXファイルが破損したファイルをアップロードします。
基本的に、ストリームをRestSharpリクエストに渡す方法を理解する必要があります。