クイックスターターズ

C#のためのバックエンドを構築する方法は?

25min

イントロダクション

このチュートリアルでは、 C#のバックエンドを構築する方法を学びます。

データベース管理、クラウドファンクション、RESTおよびGraphQL API、ユーザー認証、リアルタイムクエリなど、Back4Appの主要機能を統合する方法を探求し、C#アプリケーションのための安全でスケーラブルかつ非常に効率的なバックエンド開発環境を作成します。

ASP.NET Coreを使用している場合でも、.NET Frameworkをターゲットにしている場合でも、Back4Appは、 バックエンドアプリケーションを構築するための重要なインフラストラクチャツールを提供することで、ワークフローを加速します。

この効率的なアプローチにより、サーバーやデータベースを手動で設定する必要がなくなり、時間を節約できます。

その過程で、高度なセキュリティオプションの適用、Cloud Jobsによるタスクのスケジューリング、拡張機能のためのWebhookの統合方法も学びます。

このガイドの終わりまでに、あなたは ウェブアプリケーション または他の バックエンドアプリケーション をC#で作成するためのしっかりとした基盤を持つことになります。この基本的なセットアップを、より複雑なビジネスロジックや外部API統合のためにカスタマイズする準備が整います。

前提条件

このチュートリアルを完了するには、次のものが必要です:

  • Back4Appアカウントと新しいBack4Appプロジェクト Back4appの始め方。 アカウントがない場合は無料でサインアップできます。このガイドでは、Back4Appプロジェクトの作成と設定方法を示します。
  • C#開発環境 ASP.NET Coreまたは.NET Frameworkプロジェクトには、Visual Studio または Visual Studio Code を使用できます。 .NETダウンロードページ
  • C#に関する知識 C# プログラミング言語 とオブジェクト指向の概念に関する基本的な知識。 Microsoft C#ドキュメント。
  • .NET SDK (ASP.NET Coreまたは.NET Framework用) プラットフォーム用の最新の.NET SDKがインストールされていることを確認してください。 .NETダウンロードページ

ウォークスルーをスムーズに進めるために、これらを事前に整えておいてください。

ステップ 1 – Back4App で新しいプロジェクトを作成し、接続する

  1. Back4App にログインする そして新しいプロジェクトを作成します。これがあなたの C# バックエンドの基盤となります。
    • Back4App ダッシュボードで「新しいアプリ」をクリックします。
    • プロジェクトに名前を付けます(例:「CSharp-Backend-Tutorial」)。
Document image


作成後、ダッシュボードにリスト表示されます。この新しいプロジェクトは、データベース操作、認証、リアルタイムクエリなどを処理します。

  1. Parse .NET SDK をインストールする (該当する場合)。
    • C# プロジェクト(ASP.NET Core または .NET Framework)で、Parse SDK を NuGet を通じて追加します。
  2. Parse を初期化する: あなたの アプリケーション ID, クライアントキー(時には .NET キーと呼ばれる)、および サーバー URL を Back4App プロジェクトの「アプリ設定」または「セキュリティとキー」から取得します。

このステップで、C#アプリケーションがBack4Appバックエンドと安全に通信できるように設定しました。これで、Parse .NET SDKを介してアプリデータと対話できるようになります。

ステップ2 – データベースの設定

  1. データモデルの作成: Back4Appダッシュボードを通じて、またはコードからオブジェクトを保存することで、スキーマ(例:「Todo」クラス)を定義します。
  2. AIエージェントを使用したデータモデルの作成:
    • Back4AppダッシュボードでAIエージェントを開きます。
    • データモデルを説明します(例:「C#デモ用のTODOスキーマを作成」)。
    • AIエージェントにクラスとフィールドを自動的に生成させます。
  3. SDKを使用したデータの読み書き:
  4. REST APIを使用したデータの読み書き:
  5. GraphQL APIを使用したデータの読み書き:
  6. ライブクエリの使用(オプション):
    • Back4Appのサーバー設定でライブクエリを有効にします。
    • C#アプリでは、利用可能な場合は専用ライブラリを使用して、またはWebSocketを介して購読できます。現在のサポートについては.NET SDKのドキュメントを確認してください。この機能は、ウェブアプリケーションを構築する際にリアルタイム更新が必要な場合に役立ちます。

ステップ 3 – ACL と CLP を使用したセキュリティの適用

  1. 概要:
    • ACL: オブジェクトレベルでの読み取り/書き込みアクセスを制御します。
    • CLP: クラスレベルでのアクションを制限します(公開 vs. 認証ユーザー vs. 特定の役割)。
  2. クラスレベルの権限の設定:
    • Back4App ダッシュボードの「データベース」セクションに移動します。
    • クラスを選択します(例:「Todo」)そして、クラスレベルの権限を開きます。
    • 「認証が必要」または必要に応じてより制限的な設定を構成します。
  3. C# での ACL の構成:

このアプローチは、認可されたユーザーのみがバックエンドデータを読み取ったり変更したりできることを保証し、あなたの バックエンド開発 を不正アクセスから保護します。

ステップ 4 – クラウドコード関数の作成

なぜクラウドコードなのか

クラウドコードを使用すると、JavaScriptでサーバーサイドのロジックを実行できます(クライアントがC#であっても)。検証、トリガー、またはカスタムビジネスロジックに使用します。別のサーバーは必要ありません—Back4Appがあなたのコードをホストし、スケールします。

例の関数

JS


デプロイメント

  1. Back4App CLI または ダッシュボード
    • インストール b4a CLI を実行します:
    • または、アプリのダッシュボードの Cloud Code > Functions に関数を貼り付けます。

関数の呼び出し

C# コードから:

C#


または、他の バックエンドアプリケーション に対してREST/GraphQLを介して呼び出します。

ステップ5 – 認証の設定

Back4Appにおけるユーザー認証

Back4Appの Parse User クラスは、パスワードのハッシュ化、セッショントークン、セキュアなログインフローを処理します。これは、ユーザーアカウントが必要な ウェブアプリケーション にとって重要です。

サインアップ / ログイン (C#)

C#


ソーシャルログイン

ソーシャルログイン(例:Google、Apple、Facebook)を統合したい場合は、 ソーシャルログインのドキュメント。 多くの場合、資格情報を設定し、特化したParseメソッドを呼び出すか、.NETエコシステムで利用可能な追加パッケージを追加します。

ステップ6 – ファイルストレージの処理

C#でのファイルアップロード

C#


オブジェクトへのファイルの添付

C#


アップロードが完了すると、クライアントアプリケーションで表示するためのURLを取得できます。また、ファイルアップロードを認証されたユーザーに制限するためのセキュリティルールを設定することもできます。

ステップ7 – メール確認とパスワードリセット

概要

メール確認はユーザーアカウントの所有権を確認するのに役立ち、パスワードリセットはユーザーの利便性とセキュリティを向上させます。両方ともBack4Appダッシュボードで設定できます。

ダッシュボードの設定

  1. アプリ設定」に移動し、メール設定を選択します。
  2. メール確認」とパスワードリセットを有効にします。
  3. 必要に応じてメールテンプレートをカスタマイズします。

コード/実装

C#では、これらの機能を有効にすると、新しいユーザーは自動的に確認メールを受け取ります。また、プログラム的にパスワードリセットをトリガーすることもできます:

C#


ステップ8 – クラウドジョブによるタスクのスケジューリング

クラウドジョブの機能

クラウドジョブ」を使用して、データのクリーンアップや定期的なレポートの送信などのタスクを自動化します。これらは、直接のユーザー入力なしでBack4Appのサーバー上で実行されます。

例ジョブ(クラウドコードのJavaScript)

JS


デプロイしたら、Back4Appダッシュボードの「アプリ設定 > サーバー設定 > バックグラウンドジョブ」からスケジュールします。

ステップ9 – ウェブフックの統合

定義

Webhooksを使用すると、特定のイベントがアプリで発生するたびにBack4Appが外部エンドポイントにHTTP POSTリクエストを送信できます。

設定

  1. アプリのダッシュボードで More > WebHooks に移動します。
  2. 新しい Webhook を追加し、エンドポイントURL(Slack Webhookやカスタムサーバーなど)を指定します。
  3. イベントトリガーを選択します(例:「Todoクラスの新しいレコード」)。
Webhookの追加
Webhookの追加


より複雑なロジックが必要な場合は、 Cloud Code トリガー(beforeSaveやafterSaveなど)でHTTPリクエストを行うことでこれを拡張できます。

ステップ10 – Back4App管理パネルの探索

  1. どこで見つけるか: アプリのダッシュボードで、 More > Admin App に移動します。
  2. 機能: Admin AppはCRUD操作、ログ、バックグラウンドジョブ、分析のための視覚的インターフェースを提供します。これは、技術的でないユーザーや迅速なデータ修正に最適です。
Admin Appの有効化
Admin Appの有効化


Admin Appを有効にして設定することで、あなたの ウェブアプリケーション における日常的なデータ管理タスクを便利に処理できます。

結論

おめでとうございます!あなたは C#のバックエンドを構築する方法 をBack4Appを使用して学びました。このガイドでは、あなたが以下のことを行う方法を示しました:

  • 新しいBack4Appプロジェクトを作成し、C#バックエンド開発のために設定します。
  • .NET SDKを使用して、リレーショナルデータを保存、クエリ、および管理します。
  • データを ACLsCLPs で保護します。
  • ユーザー認証とセッション管理を実装します。
  • サーバーサイドロジックを Cloud Code に書き、 Cloud Jobs でタスクをスケジュールします。
  • ファイルのアップロードとWebhookを使用した外部統合を処理します。
  • 簡単なデータベース管理のために管理パネルを探索します。

これらのスキルは、C#での高度な バックエンドアプリケーション を構築するための堅実な基盤です。

これで、カスタムビジネスロジックを統合し、より複雑なリレーショナル構造を追加し、実際のシナリオのために外部APIを組み合わせることができます。

ASP.NET Coreを使用している場合でも、.NET Frameworkをターゲットにしている場合でも、Back4Appはサーバーの維持管理ではなく、素晴らしいアプリの構築に集中できるようにサポートします。

次のステップ

  • C#とBack4Appの知識を深めるために、より高度なデータモデルやパフォーマンス最適化を探求してください。
  • 外部APIを統合することで、機能を強化します—例えば、決済ゲートウェイやメッセージングサービスなど。
  • Back4Appの公式ドキュメントをチェックすることで、高度なセキュリティのヒント、ログ分析、リアルタイム分析を得ることができます。
  • 本番環境向けのアプリケーションを構築するために、このセットアップを拡張し、プロジェクトをクラウドにデプロイしてください。

この柔軟でスケーラブルなセットアップを使用すれば、Back4Appを使ってC#でのバックエンド開発の課題に取り組む準備が整います。コーディングを楽しんでください!