diff --git a/README-localized/readme-es-es.md b/README-localized/readme-es-es.md new file mode 100644 index 0000000..e65960b --- /dev/null +++ b/README-localized/readme-es-es.md @@ -0,0 +1,161 @@ +--- +page_type: sample +products: +- office-onedrive +- ms-graph +languages: +- csharp +extensions: + contentType: samples + technologies: + - Microsoft Graph + services: + - OneDrive + createdDate: 7/6/2016 11:47:49 AM +--- +# Ejemplo de explorador de la API de OneDrive + +El ejemplo OneDriveAPIBrowser es una aplicación de [Windows Forms](https://msdn.microsoft.com/en-us/library/dd30h2yb(v=vs.110).aspx) que usa la [biblioteca cliente de .NET de Microsoft Graph](https://github.com/microsoftgraph/msgraph-sdk-dotnet) para C# y .NET. En este ejemplo, los usuarios pueden examinar archivos y carpetas almacenados en OneDrive, así como ver metadatos. + +## \##Registrar y configurar la aplicación + +1. Inicie sesión en el [Portal de registro de aplicaciones](https://apps.dev.microsoft.com/) mediante su cuenta personal, profesional o educativa. +2. Seleccione **Agregar una aplicación**. +3. Escriba un nombre para la aplicación y seleccione **Crear aplicación**. Se muestra la página de registro, indicando las propiedades de la aplicación. +4. En **Plataformas**, seleccione **Agregar plataforma**. +5. Seleccione **Aplicación móvil**. +6. Copie el valor del Id. de cliente (Id. de la aplicación) en el portapapeles. Debe usarlo en la aplicación de ejemplo. El Id. de la aplicación es un identificador único para su aplicación. +7. Seleccione **Guardar**. + +## Configurar + +1. Instale [Visual Studio](https://www.visualstudio.com/downloads/download-visual-studio-vs) y todas las actualizaciones disponibles si aún no lo tiene. +2. Descargue el ejemplo OneDriveAPIBrowser de [GitHub](https://github.com/OneDrive/onedrive-sample-apibrowser-dotnet) o cree su propia bifurcación del repositorio. +3. En Visual Studio, abra la solución **OneDriveApiBrowser.sln**. +4. Vaya al proyecto OneDriveApiBrowser en la solución y vea el código de FormBrowser.cs. +5. Configure el ejemplo para usar el Id. de cliente (Id. de la aplicación) que ha registrado y convertirlo en el valor de la variable `MsaClientId`: +```csharp + private const string MsaClientId = "Insert your client ID here"; +``` + +## Ejecutar el ejemplo + +En Visual Studio, seleccione el ejemplo OneDriveAPIBrowser en la lista del proyecto de inicio y, después, presione **F5** o haga clic en **Inicio** para ejecutar el ejemplo. El ejemplo tiene un aspecto similar al siguiente: + +![Ejemplo OneDriveAPIBrowser](OneDriveApiBrowser/images/OneDriveAPIBrowser.PNG) + +### Iniciar sesión +Cuando se abra la aplicación del explorador de la API de OneDrive, elija **Archivo** | **Iniciar sesión...** para iniciar sesión en una cuenta personal de OneDrive o en una cuenta profesional de OneDrive. Cuando haya iniciado sesión en su cuenta de Microsoft, se mostrará un cuadro de diálogo que le pedirá permiso para acceder a los archivos de OneDrive. + +![¿Permitir que esta aplicación tenga acceso a su información?](OneDriveApiBrowser/images/Permissions.PNG) + +Haga clic en **Sí**. + +### Después de iniciar sesión + +Los elementos de OneDrive se mostrarán en el panel izquierdo, con cada elemento representado por una miniatura. En el panel derecho, se muestran las propiedades del elemento seleccionado. Puede elegir cómo se muestran las propiedades del elemento, independientemente de si está seleccionada la vista de árbol o la vista JSON. + +Para cargar un archivo, elija **Cargar** en el menú y, después, elija **Simple: basado en ruta de acceso** para cargar por ruta de acceso o **Simple: basado en Id.** para cargar por Id. de elemento. + +Para descargar un archivo, seleccione un archivo y elija **Descargar** en el menú. + +## Características de la API + +### Recuperar un cliente autenticado + +En este ejemplo se obtiene una instancia **GraphServiceClient** de Microsoft Graph y se inicia la sesión del usuario mediante el método **GetAuthenticatedClient** del archivo **AuthenticationHelper.cs**. +```csharp + +public static string[] Scopes = { "Files.ReadWrite.All" }; +... + public static GraphServiceClient GetAuthenticatedClient() + { + if (graphClient == null) + { + // Create Microsoft Graph client. + try + { + graphClient = new GraphServiceClient( + "https://graph.microsoft.com/v1.0", + new DelegateAuthenticationProvider( + async (requestMessage) => + { + var token = await GetTokenForUserAsync(); + requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); + // This header has been added to identify our sample in the Microsoft Graph service. If extracting this code for your project please remove. + requestMessage.Headers.Add("SampleID", "uwp-csharp-apibrowser-sample"); + + })); + return graphClient; + } + + catch (Exception ex) + { + Debug.WriteLine("Could not create a graph client: " + ex.Message); + } + } + + return graphClient; + } +... +``` + +El archivo **AuthenticationHelper.cs** también proporciona un método **SignOutAsync** para cerrar fácilmente la sesión del usuario: + +```csharp + public static void SignOut() + { + foreach (var user in IdentityClientApp.Users) + { + user.SignOut(); + } + graphClient = null; + TokenForUser = null; + + } +``` + +### Obtener propiedades de elementos + +En este ejemplo se muestra cómo obtener las propiedades de un elemento llamando al método **GetAsync** del objeto **GraphServiceClient**: + +```csharp +folder = await this.graphClient.Drive.Root.Request().Expand(expandValue).GetAsync(); +``` + +### Carga de elemento simple + +En este ejemplo se hace uso de la capacidad de Microsoft Graph para cargar elementos por ruta de acceso o por identificador. Aquí, se carga un elemento por la ruta de acceso: + +```csharp +// Since the ItemWithPath method is available only at Drive.Root, we need to strip +// /drive/root: (12 characters) from the parent path string. +string folderPath = targetFolder.ParentReference == null + ? "" + : targetFolder.ParentReference.Path.Remove(0, 12) + "/" + Uri.EscapeUriString(targetFolder.Name); + var uploadPath = folderPath + "/" + Uri.EscapeUriString(System.IO.Path.GetFileName(filename)); + +// Use the Microsoft Graph SDK to upload the item by path. +var uploadedItem = + await + this.graphClient.Drive.Root.ItemWithPath(uploadPath).Content.Request().PutAsync(stream); + +``` + +En este ejemplo se muestra cómo cargar un elemento por el Id.: +```csharp +var uploadedItem = + await + this.graphClient.Drive.Items[targetFolder.Id].ItemWithPath(filename).Content.Request() + .PutAsync(stream); +``` + +## Más recursos + +Puede seguir examinando este ejemplo y el resto de sus características con GitHub o con Visual Studio. Para ver un ejemplo de aplicación universal de Windows que usa el SDK de Microsoft Graph para CSharp y .NET, vea [OneDrivePhotoBrowser](https://github.com/OneDrive/graph-sample-photobrowser-uwp). Asegúrese de consultar también la documentación oficial de la API de Microsoft Graph en [https://developer.microsoft.com/en-us/graph/](https://developer.microsoft.com/en-us/graph/). + +## Licencia + +[Licencia](LICENSE.txt) + +Este proyecto ha adoptado el [Código de conducta de código abierto de Microsoft](https://opensource.microsoft.com/codeofconduct/). Para obtener más información, vea [Preguntas frecuentes sobre el código de conducta](https://opensource.microsoft.com/codeofconduct/faq/) o póngase en contacto con [opencode@microsoft.com](mailto:opencode@microsoft.com) si tiene otras preguntas o comentarios. diff --git a/README-localized/readme-fr-fr.md b/README-localized/readme-fr-fr.md new file mode 100644 index 0000000..886c611 --- /dev/null +++ b/README-localized/readme-fr-fr.md @@ -0,0 +1,162 @@ +--- +page_type: sample +products: +- office-onedrive +- ms-graph +languages: +- csharp +extensions: + contentType: samples + technologies: + - Microsoft Graph + services: + - OneDrive + createdDate: 7/6/2016 11:47:49 AM +--- +# Exemple de OneDriveAPIBrowser + +L’exemple de OneDriveAPIBrowser est un exemple d’application [Windows Forms](https://msdn.microsoft.com/en-us/library/dd30h2yb(v=vs.110).aspx) qui utilise la [bibliothèque cliente .NET Microsoft Graph](https://github.com/microsoftgraph/msgraph-sdk-dotnet) pour C#/.NET. Dans cet exemple, les utilisateurs peuvent parcourir les fichiers et dossiers qui sont stockés sur OneDrive et afficher les métadonnées. + +## Inscription et configuration de l’application + +1. Connectez-vous au [portail d’inscription des applications](https://apps.dev.microsoft.com/) en utilisant votre compte personnel, professionnel ou scolaire. +2. Sélectionnez **Ajouter une application**. +3. Entrez un nom pour l’application, puis sélectionnez **Créer une application**. La page d’inscription s’affiche, répertoriant les propriétés de votre application. +4. Sous **Plateformes**, sélectionnez **Ajouter une plateforme**. +5. Sélectionnez **Application mobile**. +6. Copiez la valeur d’ID client (Id d’application) dans le Presse-papiers. Vous devez l’utiliser dans l’exemple d’application. L’ID d’application est un identificateur unique pour votre application. +7. Sélectionnez **Enregistrer**. + +## Configurer + +1. Installez [Visual Studio](https://www.visualstudio.com/downloads/download-visual-studio-vs) et toutes les mises à jour disponibles si ce n’est déjà fait. +2. Téléchargez l’exemple OneDriveAPIBrowser à partir de [GitHub](https://github.com/OneDrive/onedrive-sample-apibrowser-dotnet) ou créez votre propre bifurcation du référentiel. +3. Dans Visual Studio, ouvrez la solution **OneDriveApiBrowser.sln**. +4. Accédez au projet OneDriveApiBrowser dans la solution et affichez le code de FormBrowser.cs. +5. Configurez l’exemple afin d’utiliser l’ID client (ID d’application) que vous avez enregistré en lui donnant la valeur de la variable `MsaClientId` : +```csharp + private const string MsaClientId = "Insert your client ID here"; +``` + +## Exécuter l’exemple + +Dans Visual Studio, sélectionnez l’exemple de OneDriveAPIBrowser dans la liste de projets de démarrage, puis appuyez sur **F5** ou cliquez sur **Démarrer** pour exécuter l’exemple. L’exemple se présente ainsi : + +![Exemple de OneDriveAPIBrowser](OneDriveApiBrowser/images/OneDriveAPIBrowser.PNG) + +### Connexion +Lorsque l’application navigateur de l’API OneDrive s’ouvre, sélectionnez **Fichier** | **Se connecter...** pour vous connecter à un compte OneDrive personnel ou professionnel. Une fois que vous êtes connecté à votre compte Microsoft, une boîte de dialogue s’affiche et vous demande les autorisations d’accès aux fichiers OneDrive. + +![Autoriser cette application à accéder à vos informations](OneDriveApiBrowser/images/Permissions.PNG) + +Cliquez sur **Oui**. + +### Après la connexion + +Vos éléments OneDrive apparaîtront dans le volet gauche, chacun d’entre eux étant représenté par une miniature. Dans le volet droit, les propriétés de l’élément sélectionné s’affichent. Vous pouvez choisir le mode d’affichage des propriétés de l’élément, au format JSON ou sous forme d’arborescence. + +Pour charger un fichier, sélectionnez **Charger** dans le menu, puis choisissez **Simple : basé sur un chemin d’accès** pour effectuer un chargement par chemin d’accès ou **Simple : basé sur l’ID** pour effectuer un chargement par ID d’élément. + +Pour télécharger un fichier, sélectionnez un fichier, puis choisissez **Télécharger** dans le menu. + +## Fonctionnalités de l’API + +### Récupération d’un client authentifié + +Cet exemple récupère une instance **GraphServiceClient** de Microsoft Graph et se connecte à l’utilisateur à l’aide de la méthode **GetAuthenticatedClient** dans le fichier **AuthenticationHelper.cs**. +```csharp + +public static string[] Scopes = { "Files.ReadWrite.All" }; +... + public static GraphServiceClient GetAuthenticatedClient() + { + if (graphClient == null) + { + // Create Microsoft Graph client. + try + { + graphClient = new GraphServiceClient( + "https://graph.microsoft.com/v1.0", + new DelegateAuthenticationProvider( + async (requestMessage) => + { + var token = await GetTokenForUserAsync(); + requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); + // This header has been added to identify our sample in the Microsoft Graph service. If extracting this code for your project please remove. + requestMessage.Headers.Add("SampleID", "uwp-csharp-apibrowser-sample"); + + })); + return graphClient; + } + + catch (Exception ex) + { + Debug.WriteLine("Could not create a graph client: " + ex.Message); + } + } + + return graphClient; + } +... +``` + +Le fichier **AuthenticationHelper.cs** fournit également une méthode **SignOutAsync** pour déconnecter facilement l’utilisateur : + +```csharp + public static void SignOut() + { + foreach (var user in IdentityClientApp.Users) + { + user.SignOut(); + } + graphClient = null; + TokenForUser = null; + + } +``` + +### Obtenir les propriétés de l’élément + +Cet exemple montre comment obtenir les propriétés d’un élément en appelant la méthode **GetAsync** de l’objet **GraphServiceClient** : + +```csharp +folder = await this.graphClient.Drive.Root.Request().Expand(expandValue).GetAsync(); +``` + +### Chargement d’un élément simple + +Cet exemple utilise la possibilité pour Microsoft Graph de charger des éléments par chemin ou par ID. +Ici, vous allez charger un élément par chemin : + +```csharp +// Since the ItemWithPath method is available only at Drive.Root, we need to strip +// /drive/root: (12 characters) from the parent path string. +string folderPath = targetFolder.ParentReference == null + ? "" + : targetFolder.ParentReference.Path.Remove(0, 12) + "/" + Uri.EscapeUriString(targetFolder.Name); + var uploadPath = folderPath + "/" + Uri.EscapeUriString(System.IO.Path.GetFileName(filename)); + +// Use the Microsoft Graph SDK to upload the item by path. +var uploadedItem = + await + this.graphClient.Drive.Root.ItemWithPath(uploadPath).Content.Request().PutAsync(stream); + +``` + +Cet exemple montre comment télécharger un élément par ID : +```csharp +var uploadedItem = + await + this.graphClient.Drive.Items[targetFolder.Id].ItemWithPath(filename).Content.Request() + .PutAsync(stream); +``` + +## Autres ressources + +Vous pouvez continuer à explorer cet exemple et le reste de ses fonctionnalités à l’aide de GitHub ou de Visual Studio. Pour afficher un exemple d’application universelle Windows qui utilise le kit de développement logiciel Microsoft Graph pour CSharp/.NET, voir [OneDrivePhotoBrowser](https://github.com/OneDrive/graph-sample-photobrowser-uwp). Veillez également à extraire la documentation officielle de l’API Microsoft Graph sur [https://developer.microsoft.com/en-us/graph/](https://developer.microsoft.com/en-us/graph/). + +## Licence + +[Licence](LICENSE.txt) + +Ce projet a adopté le [Code de conduite Open Source de Microsoft](https://opensource.microsoft.com/codeofconduct/). Pour en savoir plus, reportez-vous à la [FAQ relative au code de conduite](https://opensource.microsoft.com/codeofconduct/faq/) ou contactez [opencode@microsoft.com](mailto:opencode@microsoft.com) pour toute question ou tout commentaire. diff --git a/README-localized/readme-ja-jp.md b/README-localized/readme-ja-jp.md new file mode 100644 index 0000000..a6388d5 --- /dev/null +++ b/README-localized/readme-ja-jp.md @@ -0,0 +1,162 @@ +--- +page_type: sample +products: +- office-onedrive +- ms-graph +languages: +- csharp +extensions: + contentType: samples + technologies: + - Microsoft Graph + services: + - OneDrive + createdDate: 7/6/2016 11:47:49 AM +--- +# OneDrive API ブラウザー サンプル + +OneDrive API ブラウザー サンプルは、C#/.NET. 用の [Microsoft Graph .NET クライアント ライブラリ](https://github.com/microsoftgraph/msgraph-sdk-dotnet)を使用する [Windows Forms](https://msdn.microsoft.com/en-us/library/dd30h2yb(v=vs.110).aspx) アプリのサンプルです。このサンプルでは、ユーザーは OneDrive に保存されているファイルやフォルダーを参照して、メタデータを表示します。 + +## アプリケーションを登録して構成する + +1. 個人用アカウントか職場または学校アカウントのいずれかを使用して、[アプリ登録ポータル](https://apps.dev.microsoft.com/)にサインインします。 +2. \[**アプリの追加**] を選択します。 +3. アプリの名前を入力して、\[**アプリケーションの作成**] を選択します。登録ページが表示され、アプリのプロパティが一覧表示されます。 +4. \[**プラットフォーム**] で、\[**プラットフォームの追加**] を選択します。 +5. \[**モバイル アプリケーション**] を選択します。 +6. クライアント ID (アプリ ID) の値をクリップボードにコピーします。この値はサンプル アプリで使用する必要があります。アプリ ID は、アプリの一意識別子です。 +7. \[**保存**] を選択します。 + +## セットアップ + +1. [Visual Studio](https://www.visualstudio.com/downloads/download-visual-studio-vs) と利用可能なすべての更新プログラムを、まだインストールしていない場合はインストールします。 +2. [GitHub](https://github.com/OneDrive/onedrive-sample-apibrowser-dotnet) から OneDriveAPIBrowser サンプルをダウンロードするか、リポジトリの独自のフォークを作成します。 +3. Visual Studio から、**OneDriveApiBrowser.sln** ソリューションを開きます。 +4. ソリューションの OneDriveApiBrowser プロジェクトに移動し、FormBrowser.cs のコードを表示します。 +5. `MsaClientId` 変数の値にすることで、登録したクライアント ID (アプリ ID) を使用するようにサンプルを構成します: +```csharp + private const string MsaClientId = "Insert your client ID here"; +``` + +## サンプルの実行 + +Visual Studio で、スタートアップ プロジェクトの一覧からサンプル OneDriveAPIBrowser を選択し、**F5** キーを押すか、\[**開始**] をクリックしてサンプルを実行します。このサンプルは次のようになっています。 + +![OneDriveAPIBrowser サンプル](OneDriveApiBrowser/images/OneDriveAPIBrowser.PNG) + +### サインイン +OneDrive API ブラウザー アプリが開いたら、\[**ファイル**] | \[**サインイン...**] を選択して、個人用 OneDrive アカウントまたはビジネス OneDrive アカウントにサインインします。Microsoft アカウントにサインインすると、ダイアログが表示され、OneDrive ファイルにアクセスするためのアクセス許可を求められます。 + +![このアプリがあなたの情報にアクセスすることを許可します](OneDriveApiBrowser/images/Permissions.PNG) + +\[**はい**] をクリックします。 + +### サインイン後 + +OneDrive のアイテムが左側のウィンドウに表示され、各アイテムがサムネイルで表示されます。右側のウィンドウに、選択したアイテムのプロパティが表示されます。JSON であってもツリー ビューであっても、アイテム プロパティの表示方法を選択できます。 + +ファイルをアップロードするには、メニューから \[**アップロード**] を選択し、\[**シンプル - パスベース**] を選択してパスでアップロードするか、\[**シンプル - ID ベース**] を選択してアイテム ID でアップロードします。 + +ファイルをダウンロードするには、ファイルを選択し、メニューから \[**ダウンロード**] を選択します。 + +## API の機能 + +### 認証済みクライアントを取得する + +このサンプルは、Microsoft Graph **GraphServiceClient** インスタンスを取得し、**AuthenticationHelper.cs** ファイルの **GetAuthenticatedClient** メソッドを使用してユーザーをサインインさせます。 +```csharp + +public static string[] Scopes = { "Files.ReadWrite.All" }; +... + public static GraphServiceClient GetAuthenticatedClient() + { + if (graphClient == null) + { + // Create Microsoft Graph client. + try + { + graphClient = new GraphServiceClient( + "https://graph.microsoft.com/v1.0", + new DelegateAuthenticationProvider( + async (requestMessage) => + { + var token = await GetTokenForUserAsync(); + requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); + // This header has been added to identify our sample in the Microsoft Graph service. If extracting this code for your project please remove. + requestMessage.Headers.Add("SampleID", "uwp-csharp-apibrowser-sample"); + + })); + return graphClient; + } + + catch (Exception ex) + { + Debug.WriteLine("Could not create a graph client: " + ex.Message); + } + } + + return graphClient; + } +... +``` + +**AuthenticationHelper.cs** ファイルには、ユーザーを簡単にサインアウトさせる **SignOutAsync** メソッドも用意されています。 + +```csharp + public static void SignOut() + { + foreach (var user in IdentityClientApp.Users) + { + user.SignOut(); + } + graphClient = null; + TokenForUser = null; + + } +``` + +### アイテム プロパティを取得する + +このサンプルでは、**GraphServiceClient** オブジェクトの **GetAsync** メソッドを呼び出して、アイテムのプロパティを取得する方法を示します。 + +```csharp +folder = await this.graphClient.Drive.Root.Request().Expand(expandValue).GetAsync(); +``` + +### シンプルなアイテムのアップロード + +このサンプルでは、パスまたは ID でアイテムをアップロードする Microsoft Graph の機能を利用しています。 +ここでは、アイテムをパスでアップロードします。 + +```csharp +// Since the ItemWithPath method is available only at Drive.Root, we need to strip +// /drive/root: (12 characters) from the parent path string. +string folderPath = targetFolder.ParentReference == null + ? "" + : targetFolder.ParentReference.Path.Remove(0, 12) + "/" + Uri.EscapeUriString(targetFolder.Name); + var uploadPath = folderPath + "/" + Uri.EscapeUriString(System.IO.Path.GetFileName(filename)); + +// Use the Microsoft Graph SDK to upload the item by path. +var uploadedItem = + await + this.graphClient.Drive.Root.ItemWithPath(uploadPath).Content.Request().PutAsync(stream); + +``` + +この例では、アイテムを ID でアップロードする方法を示しています: +```csharp +var uploadedItem = + await + this.graphClient.Drive.Items[targetFolder.Id].ItemWithPath(filename).Content.Request() + .PutAsync(stream); +``` + +## その他のリソース + +GitHub または Visual Studio を使用して、このサンプルおよびその機能の残りの部分を引き続き探索できます。CSharp/.NET 用の Microsoft Graph SDK を使用する Windows ユニバーサル アプリのサンプルを表示するには、[OneDrivePhotoBrowser](https://github.com/OneDrive/graph-sample-photobrowser-uwp) を参照してください。[https://developer.microsoft.com/en-us/graph/](https://developer.microsoft.com/en-us/graph/) にある Microsoft Graph API の公式ドキュメントも確認してください。 + +## ライセンス + +[ライセンス](LICENSE.txt) + +このプロジェクトでは、[Microsoft オープン ソース倫理規定](https://opensource.microsoft.com/codeofconduct/) が採用されています。詳細については、「[Code of Conduct の FAQ (倫理規定の FAQ)](https://opensource.microsoft.com/codeofconduct/faq/)」を参照してください。また、その他の質問やコメントがあれば、[opencode@microsoft.com](mailto:opencode@microsoft.com) までお問い合わせください。 diff --git a/README-localized/readme-pt-br.md b/README-localized/readme-pt-br.md new file mode 100644 index 0000000..16a31b4 --- /dev/null +++ b/README-localized/readme-pt-br.md @@ -0,0 +1,162 @@ +--- +page_type: sample +products: +- office-onedrive +- ms-graph +languages: +- csharp +extensions: + contentType: samples + technologies: + - Microsoft Graph + services: + - OneDrive + createdDate: 7/6/2016 11:47:49 AM +--- +# Exemplo de navegador de API do OneDrive + +O exemplo OneDriveAPIBrowser é um0exemplo do aplicativo [Windows Forms](https://msdn.microsoft.com/en-us/library/dd30h2yb(v=vs.110).aspx) que utiliza a [Biblioteca do cliente do Microsoft Graph .NET](https://github.com/microsoftgraph/msgraph-sdk-dotnet) para C#/.net. Neste exemplo, os usuários podem procurar arquivos e pastas armazenados no OneDrive e visualizar os metadados. + +## Registrar e configurar o aplicativo + +1. Entre no [Portal de registro do Aplicativo](https://apps.dev.microsoft.com/) utilizando sua conta pessoal, corporativa ou de estudante. +2. Selecione**Adicionar um aplicativo**. +3. Insira um nome para o aplicativo e selecione **Criar aplicativo**. A página de registro será exibida, listando as propriedades do seu aplicativo. +4. Em **Plataformas**, selecione **Adicionar plataforma**. +5. Clique em **Aplicativo móvel**. +6. Copie o valor da ID do Cliente (ID do aplicativo) para a área de transferência. Será necessário que você use no aplicativo do exemplo. Essa ID do aplicativo é o identificador exclusivo do seu aplicativo. +7. Clique em **Salvar**. + +## Configure + +1. Instale o [Visual Studio](https://www.visualstudio.com/downloads/download-visual-studio-vs) e todas as atualizações disponíveis, caso ainda não o tenha. +2. Baixe o exemplo OneDriveAPIBrowser do](https://github.com/OneDrive/onedrive-sample-apibrowser-dotnet)GitHub [ou crie sua própria bifurcação do repositório. +3. No Visual Studio, abra a solução **OneDriveApiBrowser.sln**. +4. Vá para o projeto OneDriveApiBrowser na solução e exiba o código do FormBrowser.cs. +5. Configure o exemplo para usar a ID do cliente (ID do aplicativo) que você registrou tornando-o o valor da variável `MsaClientId`: +```csharp + private const string MsaClientId = "Insert your client ID here"; +``` + +## Execute o exemplo + +No Visual Studio, selecione o exemplo OneDriveAPIBrowser na lista de projetos de inicialização e pressione **F5** ou clique em **Iniciar** para executar o exemplo. O exemplo é assim: + +![Exemplo OneDriveAPIBrowser](OneDriveApiBrowser/images/OneDriveAPIBrowser.PNG) + +### Entrar +Quando o aplicativo do navegador da API do OneDrive for aberto, clique em **Arquivo** | **Registre-se...** para entrar em uma conta pessoal do OneDrive ou em uma conta corporativa do OneDrive. Depois de entrar na sua conta da Microsoft, uma caixa de diálogo será exibida, solicitando permissões para acessar os arquivos do OneDrive. + +![Deixe que este aplicativo acesse suas informações](OneDriveApiBrowser/images/Permissions.PNG) + +Clique em **Sim**. + +### Depois de entrar + +Seus itens do OneDrive serão exibidos no painel esquerdo com cada item representado por uma miniatura. No painel direito serão exibidas as propriedades do item selecionado. Você pode escolher como as propriedades do item serão exibidas, seja JSON ou Tree View. + +Para carregar um arquivo, clique em **Carregar** no menu e clique em **Com base em um caminho simples** para carregá-lo por caminho ou **Com base em ID simples** para serem carregados pela ID do item. + +Para baixar um arquivo, selecione um arquivo e clique em **Baixar** no menu. + +## Recursos da API + +### Recuperar um cliente autenticado + +Este exemplo obtém uma instância do Microsoft Graph **GraphServiceClient** e entra no usuário utilizando o método **GetAuthenticatedClient** no arquivo **AuthenticationHelper.cs**. +```csharp + +public static string[] Scopes = { "Files.ReadWrite.All" }; +... + public static GraphServiceClient GetAuthenticatedClient() + { + if (graphClient == null) + { + // Create Microsoft Graph client. + try + { + graphClient = new GraphServiceClient( + "https://graph.microsoft.com/v1.0", + new DelegateAuthenticationProvider( + async (requestMessage) => + { + var token = await GetTokenForUserAsync(); + requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); + // This header has been added to identify our sample in the Microsoft Graph service. If extracting this code for your project please remove. + requestMessage.Headers.Add("SampleID", "uwp-csharp-apibrowser-sample"); + + })); + return graphClient; + } + + catch (Exception ex) + { + Debug.WriteLine("Could not create a graph client: " + ex.Message); + } + } + + return graphClient; + } +... +``` + +O arquivo **AuthenticationHelper.cs** também fornece o método **SignOutAsync** para desconectar facilmente o usuário: + +```csharp + public static void SignOut() + { + foreach (var user in IdentityClientApp.Users) + { + user.SignOut(); + } + graphClient = null; + TokenForUser = null; + + } +``` + +### Obter propriedades do item + +Este exemplo demonstra como obter as propriedades de um item, chamando o método **GetAsync** do objeto **GraphServiceClient**: + +```csharp +folder = await this.graphClient.Drive.Root.Request().Expand(expandValue).GetAsync(); +``` + +### Carregamento de item simples + +Este exemplo faz uso da capacidade de carregar itens por caminho ou por ID do Microsoft Graph. +Aqui, você carrega um item por caminho: + +```csharp +// Since the ItemWithPath method is available only at Drive.Root, we need to strip +// /drive/root: (12 characters) from the parent path string. +string folderPath = targetFolder.ParentReference == null + ? "" + : targetFolder.ParentReference.Path.Remove(0, 12) + "/" + Uri.EscapeUriString(targetFolder.Name); + var uploadPath = folderPath + "/" + Uri.EscapeUriString(System.IO.Path.GetFileName(filename)); + +// Use the Microsoft Graph SDK to upload the item by path. +var uploadedItem = + await + this.graphClient.Drive.Root.ItemWithPath(uploadPath).Content.Request().PutAsync(stream); + +``` + +Este exemplo mostra como carregar um item por id: +```csharp +var uploadedItem = + await + this.graphClient.Drive.Items[targetFolder.Id].ItemWithPath(filename).Content.Request() + .PutAsync(stream); +``` + +## Mais recursos + +Você pode continuar a explorar esse exemplo e o restante dos seus recursos usando GitHub ou Visual Studio. Para visualizar um exemplo de aplicativo universal do Windows que utiliza o SDK do Microsoft Graph para CSharp/. NET, consulte [OneDrivePhotoBrowser](https://github.com/OneDrive/graph-sample-photobrowser-uwp). Também verifique a documentação oficial da API do Microsoft Graph em [https://developer.microsoft.com/en-us/graph/](https://developer.microsoft.com/en-us/graph/). + +## Licença + +[Licença](LICENSE.txt) + +Este projeto adotou o [Código de Conduta de Código Aberto da Microsoft](https://opensource.microsoft.com/codeofconduct/). Para saber mais, confira as [Perguntas frequentes sobre o Código de Conduta](https://opensource.microsoft.com/codeofconduct/faq/) ou entre em contato pelo [opencode@microsoft.com](mailto:opencode@microsoft.com) se tiver outras dúvidas ou comentários. diff --git a/README-localized/readme-ru-ru.md b/README-localized/readme-ru-ru.md new file mode 100644 index 0000000..b0b271f --- /dev/null +++ b/README-localized/readme-ru-ru.md @@ -0,0 +1,162 @@ +--- +page_type: sample +products: +- office-onedrive +- ms-graph +languages: +- csharp +extensions: + contentType: samples + technologies: + - Microsoft Graph + services: + - OneDrive + createdDate: 7/6/2016 11:47:49 AM +--- +# Пример использования OneDrive API Browser + +Пример OneDriveAPIBrowser представляет собой приложение [Windows Forms](https://msdn.microsoft.com/en-us/library/dd30h2yb(v=vs.110).aspx), использующее клиентскую библиотеку [Microsoft Graph .NET Client Library](https://github.com/microsoftgraph/msgraph-sdk-dotnet) для C#/.NET. В этом примере пользователи могут просматривать файлы и папки, хранящиеся в OneDrive, а также их метаданные. + +## Регистрация и настройка приложения + +1. Войдите на [портал регистрации приложений](https://apps.dev.microsoft.com/) с помощью личной, рабочей или учебной учетной записи. +2. Выберите пункт**Добавить приложение**. +3. Введите имя приложения и выберите пункт **Создать приложение**. Откроется страница регистрации со списком свойств приложения. +4. В разделе**Платформы**, нажмите**Добавление платформы**. +5. Выберите пункт**Мобильное приложение**. +6. Скопируйте значение идентификатора клиента (App Id) в буфер обмена. Вам нужно будет использовать его в примере приложения. Идентификатор приложения является уникальным. +7. Нажмите кнопку **Сохранить**. + +## Настройка + +1. Установите [Visual Studio](https://www.visualstudio.com/downloads/download-visual-studio-vs) со всеми доступными обновлениями. +2. Скачайте пример OneDriveAPIBrowser из [GitHub](https://github.com/OneDrive/onedrive-sample-apibrowser-dotnet) или создайте свое ответвление репозитория. +3. В Visual Studio откройте решение **OneDriveApiBrowser.sln**. +4. Перейдите к проекту OneDriveApiBrowser в решении и просмотрите код для FormBrowser.cs. +5. Настройте пример так, чтобы использовался идентификатор клиента (идентификатор приложения), который вы зарегистрировали, задав его в качестве значения переменной `MsaClientId`: +```csharp + private const string MsaClientId = "Insert your client ID here"; +``` + +## Запуск примера + +В Visual Studio выберите пример OneDriveAPIBrowser из списка запускаемых проектов, затем нажмите **F5** или **Запуск**, чтобы запустить пример. Пример выглядит следующим образом: + +![Пример OneDriveAPIBrowser](OneDriveApiBrowser/images/OneDriveAPIBrowser.PNG) + +### Вход +Когда откроется приложение OneDrive API Browser, выберите **Файл** | **Вход...** для входа в личную учетную запись OneDrive или учетную запись OneDrive для бизнеса. Когда вы войдете в свою учетную запись Майкрософт, откроется диалоговое окно с запросом разрешения на доступ к файлам OneDrive. + +![Дать этому приложению доступ к вашим данным](OneDriveApiBrowser/images/Permissions.PNG) + +Нажмите кнопку **Да**. + +### После входа + +Элементы OneDrive отобразятся в области слева, каждый из них будет представлен эскизом. В области справа будут отображаться свойства выбранного элемента. Можно выбрать представление свойств элементов в формате JSON или в виде дерева. + +Чтобы добавить файл, выберите пункт меню **Добавление**, а затем выберите **Простое – на основе пути**, чтобы добавить файл по его пути, или **Простое – на основе идентификатора**, чтобы добавить файл по идентификатору элемента. + +Чтобы скачать файл, выберите файл, а затем выберите в меню пункт **Скачать**. + +## Особенности API + +### Получение клиента, прошедшего проверку подлинности + +В этом примере показано, как получить экземпляр клиента **GraphServiceClient** Microsoft Graph и выполнить вход пользователя с использованием метода **GetAuthenticatedClient** в файле **AuthenticationHelper.cs**. +```csharp + +public static string[] Scopes = { "Files.ReadWrite.All" }; +... + public static GraphServiceClient GetAuthenticatedClient() + { + if (graphClient == null) + { + // Create Microsoft Graph client. + try + { + graphClient = new GraphServiceClient( + "https://graph.microsoft.com/v1.0", + new DelegateAuthenticationProvider( + async (requestMessage) => + { + var token = await GetTokenForUserAsync(); + requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); + // This header has been added to identify our sample in the Microsoft Graph service. If extracting this code for your project please remove. + requestMessage.Headers.Add("SampleID", "uwp-csharp-apibrowser-sample"); + + })); + return graphClient; + } + + catch (Exception ex) + { + Debug.WriteLine("Could not create a graph client: " + ex.Message); + } + } + + return graphClient; + } +... +``` + +Файл **AuthenticationHelper.cs** также содержит метод **SignOutAsync** для простого выполнения выхода пользователя: + +```csharp + public static void SignOut() + { + foreach (var user in IdentityClientApp.Users) + { + user.SignOut(); + } + graphClient = null; + TokenForUser = null; + + } +``` + +### Получение свойств элемента + +В этом примере показано, как получить свойства элемента, вызвав метод **GetAsync** объекта **GraphServiceClient**: + +```csharp +folder = await this.graphClient.Drive.Root.Request().Expand(expandValue).GetAsync(); +``` + +### Добавление простого элемента + +В этом примере можно с помощью Microsoft Graph добавлять элементы по их пути или по идентификатору. +Элемент добавляется по своему пути следующим образом: + +```csharp +// Since the ItemWithPath method is available only at Drive.Root, we need to strip +// /drive/root: (12 characters) from the parent path string. +string folderPath = targetFolder.ParentReference == null + ? "" + : targetFolder.ParentReference.Path.Remove(0, 12) + "/" + Uri.EscapeUriString(targetFolder.Name); + var uploadPath = folderPath + "/" + Uri.EscapeUriString(System.IO.Path.GetFileName(filename)); + +// Use the Microsoft Graph SDK to upload the item by path. +var uploadedItem = + await + this.graphClient.Drive.Root.ItemWithPath(uploadPath).Content.Request().PutAsync(stream); + +``` + +В этом примере показано, как добавить элемент по идентификатору: +```csharp +var uploadedItem = + await + this.graphClient.Drive.Items[targetFolder.Id].ItemWithPath(filename).Content.Request() + .PutAsync(stream); +``` + +## Дополнительные ресурсы + +Вы можете продолжить работу с этим примером и узнать об остальных его возможностях с помощью GitHub или Visual Studio. Пример приложения Windows Universal, использующего пакет SDK Microsoft Graph для CSharp/.NET, размещен по ссылке [OneDrivePhotoBrowser](https://github.com/OneDrive/graph-sample-photobrowser-uwp). Кроме того, обязательно ознакомьтесь с официальной документацией по API Microsoft Graph по адресу [https://developer.microsoft.com/en-us/graph/](https://developer.microsoft.com/en-us/graph/). + +## Лицензия + +[Лицензия](LICENSE.txt) + +Этот проект соответствует [Правилам поведения разработчиков открытого кода Майкрософт](https://opensource.microsoft.com/codeofconduct/). Дополнительные сведения см. в разделе [часто задаваемых вопросов о правилах поведения](https://opensource.microsoft.com/codeofconduct/faq/). Если у вас возникли вопросы или замечания, напишите нам по адресу [opencode@microsoft.com](mailto:opencode@microsoft.com). diff --git a/README-localized/readme-zh-cn.md b/README-localized/readme-zh-cn.md new file mode 100644 index 0000000..d46a84a --- /dev/null +++ b/README-localized/readme-zh-cn.md @@ -0,0 +1,162 @@ +--- +page_type: sample +products: +- office-onedrive +- ms-graph +languages: +- csharp +extensions: + contentType: samples + technologies: + - Microsoft Graph + services: + - OneDrive + createdDate: 7/6/2016 11:47:49 AM +--- +# OneDrive API 浏览器示例 + +OneDriveAPIBrowser 示例是一个 [Windows 窗体](https://msdn.microsoft.com/en-us/library/dd30h2yb(v=vs.110).aspx)应用示例,它使用面向 C# /.NET 的 [Microsoft Graph .NET 客户端库](https://github.com/microsoftgraph/msgraph-sdk-dotnet)。在本示例中,用户可以浏览存储在 OneDrive 上的文件和文件夹,并查看元数据。 + +## 注册和配置应用程序 + +1. 使用个人或工作或学校帐户登录到[应用注册门户](https://apps.dev.microsoft.com/)。 +2. 选择“**添加应用**”。 +3. 为应用输入名称,并选择“**创建应用程序**”。将显示注册页,其中列出应用的属性。 +4. 在“**平台**”下,选择“**添加平台**”。 +5. 选择“**移动应用程序**”。 +6. 将客户端 ID(应用 ID)值复制到剪贴板。你将需要在示例应用程序中使用它。应用 ID 是应用的唯一标识符。 +7. 选择“**保存**”。 + +## 设置 + +1. 如果没有安装,安装 [Visual Studio](https://www.visualstudio.com/downloads/download-visual-studio-vs) 和所有可用更新。 +2. 从 [GitHub](https://github.com/OneDrive/onedrive-sample-apibrowser-dotnet) 中下载 OneDriveAPIBrowser 示例或为存储卡创建分支。 +3. 从 Visual Studio 中,打开 **OneDriveApiBrowser.sln** 解决方案。 +4. 转到解决方案中的 OneDriveApiBrowser 项目并查看 FormBrowser.cs 代码。 +5. 配置示例,以使用通过使 `MsaClientId` 值为变量而注册的客户端 ID (App Id): +```csharp + private const string MsaClientId = "Insert your client ID here"; +``` + +## 运行示例 + +在 Visual Studio 中,从启动项目中选择示例 OneDriveAPIBrowser ,随后按下 **F5** 或单击**开始**来运行示例。示例如下所示: + +![OneDriveAPIBrowser 示例](OneDriveApiBrowser/images/OneDriveAPIBrowser.PNG) + +### 登录 +OneDrive API 浏览器应用程序打开后,选择 **文件** | **登录..** 以登录 OneDrive 个人账户或 OneDrive 商业账户。登录至 Microsoft 账户后,系统显示对话框,要求提供访问 OneDrive 文件的权限。 + +![允许此应用访问你的信息](OneDriveApiBrowser/images/Permissions.PNG) + +单击“**是**”。 + +### 登录后 + +OneDrive 项将在左窗格上显示,每项按缩略图显示。在右窗格中,显示所选项的属性。可选择采用 JSON 还是树形视图来显示项目的属性。 + +若要上传文件,从菜单中选择“**上传**”,随后选择“**简单 - 基于路径**”以按路径上传,或选择“**简单 - 基于ID**”以按项 ID 上传。 + +如果要下载文件,选择文件,然后从菜单中选择“**下载**”。 + +## API 功能 + +### 检索经过身份验证的客户端 + +此项目获取 Microsoft Graph **GraphServiceClient** 实例并使用 **AuthenticationHelper.cs** 文件中的 **GetAuthenticatedClient** 方法来登录。 +```csharp + +public static string[] Scopes = { "Files.ReadWrite.All" }; +... + public static GraphServiceClient GetAuthenticatedClient() + { + if (graphClient == null) + { + // Create Microsoft Graph client. + try + { + graphClient = new GraphServiceClient( + "https://graph.microsoft.com/v1.0", + new DelegateAuthenticationProvider( + async (requestMessage) => + { + var token = await GetTokenForUserAsync(); + requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); + // This header has been added to identify our sample in the Microsoft Graph service. If extracting this code for your project please remove. + requestMessage.Headers.Add("SampleID", "uwp-csharp-apibrowser-sample"); + + })); + return graphClient; + } + + catch (Exception ex) + { + Debug.WriteLine("Could not create a graph client: " + ex.Message); + } + } + + return graphClient; + } +... +``` + +**AuthenticationHelper.cs** 文件还提供了 **SignOutAsync** 方法,可轻松注销用户: + +```csharp + public static void SignOut() + { + foreach (var user in IdentityClientApp.Users) + { + user.SignOut(); + } + graphClient = null; + TokenForUser = null; + + } +``` + +### 获取项目属性 + +此项目演示如何通过调用 **GraphServiceClient** 对象的 **GetAsync** 方法来获取项目的属性: + +```csharp +folder = await this.graphClient.Drive.Root.Request().Expand(expandValue).GetAsync(); +``` + +### 简单项目上传 + +此示例利用 Microsoft Graph 的功能来按路径或按 ID 上传项目。 +这里按照路径上传项目: + +```csharp +// Since the ItemWithPath method is available only at Drive.Root, we need to strip +// /drive/root: (12 characters) from the parent path string. +string folderPath = targetFolder.ParentReference == null + ? "" + : targetFolder.ParentReference.Path.Remove(0, 12) + "/" + Uri.EscapeUriString(targetFolder.Name); + var uploadPath = folderPath + "/" + Uri.EscapeUriString(System.IO.Path.GetFileName(filename)); + +// Use the Microsoft Graph SDK to upload the item by path. +var uploadedItem = + await + this.graphClient.Drive.Root.ItemWithPath(uploadPath).Content.Request().PutAsync(stream); + +``` + +此例显示如何按照 ID 上传项目: +```csharp +var uploadedItem = + await + this.graphClient.Drive.Items[targetFolder.Id].ItemWithPath(filename).Content.Request() + .PutAsync(stream); +``` + +## 更多资源 + +可继续使用 GitHub 或 Visual Studio 浏览此示例和其它功能。如果要查看使用适用于 CSharp/.NET 的 Microsoft Graph SDK 的 Windows 通用应用示例,参见 [OneDrivePhotoBrowser](https://github.com/OneDrive/graph-sample-photobrowser-uwp)。另外确保访问 [https://developer.microsoft.com/en-us/graph/](https://developer.microsoft.com/en-us/graph/) 查看 Microsoft Graph API 的官方文档。 + +## 许可证 + +[许可证](LICENSE.txt) + +此项目已采用 [Microsoft 开放源代码行为准则](https://opensource.microsoft.com/codeofconduct/)。有关详细信息,请参阅[行为准则常见问题解答](https://opensource.microsoft.com/codeofconduct/faq/)。如有其他任何问题或意见,也可联系 [opencode@microsoft.com](mailto:opencode@microsoft.com)。