セットアップガイド
もっと速い方法がある
このページのすべてはあなたのためにできます。Power Portals Pro MCPサーバー はこのフレームワークを理解し、あなたのDataverse環境やAzureサブスクリプションを読み取り、アプリ登録、アプリケーションユーザー、App Service、メール送信者自体を作成できます。変更の前に質問し、コストを教えてくれます。手動の手順はその下にあり、使うかどうかにかかわらず正確です。空のフォルダから自分のデータが入った安全なページへと移行する全過程で、 AIクイックスタートに従ってください。
AIエージェントにセットアップを任せましょう
セットアップはこのフレームワークの中で、どれだけコンポーネントドキュメントが役立たない部分です。 dotnet new、2つのEntraアプリ登録、Dataverseアプリケーションユーザー、マネージドソリューション、メール送信者、App Serviceを含み、それぞれが正しい設定キーに到達する値を生成します。MCPサーバーが存在するのは、その順序が知り得るからであり、適切なツールを持つエージェントが得意にできることです。
1. インストール
ユーザー範囲でインストールすれば、どのフォルダでも利用可能になります。プロジェクトをスキャフォールドしようとしている空のフォルダも含めて、どのテンプレートを使うべきか、オプションの意味を教えてくれます。
claude mcp add --scope user powerportalspro -- dnx PowerPortalsPro.Mcp --yes
Visual StudioとCursorはそれぞれの .mcp.jsonを読み込み、 MCPサーバー のページにはそれぞれのブロックがあります。テンプレートから作成されたプロジェクトはすでに配線されており、そのプロジェクトが使用するパッケージにバージョンがピン留めされています。 dnx はすでに持っている.NET 10 SDKが付属しています。
2. プロジェクトフォルダでサインイン
2つのサインインです。なぜなら、2つの異なるものだからです:1つはDataverse環境用、もう1つはAzureサブスクリプション用です。両方をプロジェクトが入っているフォルダ内で実行してください。各バインディングはそのフォルダだけに属しているので、複数の顧客を持つコンサルタントはそれぞれの環境とサブスクリプションを同時に指し示します:
cd C:\Code\MyPortal
dnx PowerPortalsPro.Mcp login --environment https://yourorg.crm.dynamics.com
dnx PowerPortalsPro.Mcp azure login
どちらもデフォルトでデバイスコードを使用しているため、SSHやコンテナ、WSLで動作し、スマホで処理できます。マシン全体での変更はなく、サーバーはログインした az や pac を読み取ったり変更したりしません。これが、2つのプロジェクトが2つの顧客をターゲットにして互いに干渉しないようにしている理由です。Azure サインインはデプロイメントツールにのみ必要です。ローカルで設定するだけならスキップしても構いません。
3. 開始を促す
すべてを意図的に行う単一のコマンドは存在しません — 以下の注記を参照してください。代わりにエージェントに計画を指し示してください。そうすれば一緒に進めてくれます。
Use the PowerPortalsPro MCP server to set this portal up.
Start with get_setup_plan, then check_setup, and tell me what is still missing.
get_setup_plan は存在すべきものと各ステップが生成するものの順序付きリストです。 check_setup このフォルダにまだ欠けているものを報告します。 get_setup_script 自分で実行したいステップのためにレビュー可能なスクリプトを書きます。デプロイについては、 get_deployment_plan と check_deployment がAzureでも同じ作業を行います — Azureのデプロイメント ページを参照してください。
注記
なぜ「すべてをやる」という単一のコマンドがないのか。 何かを作成する各ツールはまずあなたに尋ね、コストを述べます。そしてそのステップごとの承認が、これらのツールがアプリ登録やアプリサービスを作成できる理由です。すべてをこなすコマンドは、エージェントが案内するよりも10回問いただしるか、1回だけ尋ねるかのどちらかで、テナント全体のディレクトリオブジェクトを承認し、月額請求書を発行し、Dataverseは単一の「はい」と書き込むことを意味します。その順序は知ることができ、エージェントはそれを読み取ることができます。承認はあなたのものです。
手作業でセットアップする
同じ手順を自分でやったものです。エージェントを使っても読む価値はあります。ツールが何をしているかが重要であり、それを知ることで失敗したセットアップを診断するのと、失敗したセットアップを推測するのが違います。
1. テンプレートをインストールする
テンプレートは完全なポータルを支えています — Dataverseの接続性、認証、セキュリティハンドラー、ローカライズ、アイデンティティページ — Visual Studio 2022および2026、またはコマンドラインから動作します。パックは一度インストールしてください:
dotnet new install PowerPortalsPro.AspNetCore.Templates
2. プロジェクトの作成
このパックには 2つの テンプレートがインストールされており、Power Portals Proの機能セットは両者で同一です。グリッド、エディター、セキュリティ、ローカライズ、アイデンティティページの動作はどちらでも同じです。チームが取り組みたいフロントエンドを選びましょう:
- Power Portals Pro React Web App (
powerportalspro-react) — Fluent UI Reactをベースに構築したReact + Vite + TypeScriptのシングルページアプリと組み合わせた ASP.NET Coreホストです。 新しいポータル、最新のフロントエンドツール、高速なホットリロード開発ループに推奨されています。 - Power Portals Pro Web App (
powerportalspro) — Fluent UI Blazorをベースに構築されたBlazorウェブアプリで、すべてC#のエンドツーエンド対応です。JavaScriptツールチェーンを避けたいチームに最適な選択肢であり、2つの中で唯一、Server、WebAssembly、Autoのレンダリングモードを選択できる--interactivityオプションを採用しています。
Visual Studioでは、両者とも新しいプロジェクトダイアログに表示されます:
どちらもコマンドラインから作成でき、スクリプトも同様に作成します。 プロジェクトテンプレートの ページにはすべてのオプションとそのデフォルトが記載されています:
dotnet new powerportalspro-react -o MyPortal
dotnet new powerportalspro -o MyPortal --interactivity Server
3. Dataverse接続の設定
Program.cs 構成から接続の詳細を読み取る:
値を appsettings.jsonではなくユーザーシークレットに配置し、クライアントシークレットがソース管理に届かないようにしましょう。プロジェクトを右クリックして 「ユーザーシークレット管理」を選択してください:
プレースホルダーは自分のものに置き換えてください。 ClientId と ClientSecret は、Entraアプリの登録とDataverseアプリケーションユーザーの組み合わせから得られます。登録だけで認証され、すべての通話で拒否されるため、両方の半分が必要です。 Dataverse Connection のページで作成方法を説明します:
{
"D365":
{
"Url": "https://yoururl.crm.dynamics.com",
"ClientId": "",
"ClientSecret": ""
}
}
4. 管理型ソリューションをインストールする
リリースページから最新のマネージドソリューションをダウンロードし、環境にインポートしてください。フレームワーク固有のテーブルとライセンスチェックアクションをプロビジョニングしますが、インストールされるまではすべてのデータエンドポイントが拒否され、症状から原因を示すものは一切ありません。
環境内で Power Portals Pro アプリを開いてください:
ポータル ウェブサイトで、サイトのレコードを作成し、ライセンスキーを入力します。
注記
まだ鍵が手に入っていませんか? 試用を申請してください。 ライセンス ページには、完全な取得と登録方法が記載されています。
5. Microsoftサインイン(任意)
Microsoftでのサインインはスキャフォールドされていますが、コメントアウトされています。このブロックのコメントを消す Program.cs:
このアプリには独自のEntraアプリ登録が必要です。ステップ3のものとは別のもので、1つのシークレットをローテーションでサインインとデータアクセスの両方が停止できないようにするためです。 Entra IDサインイン ページは登録と必要なすべてのプロパティをカバーしています。
6. 実行
F5を押してください。始まるのは空っぽの殻ではなく、動作するポータルです。サンプルのアカウントと連絡先ページ、アイデンティティやアカウント管理のページ、ナビゲーション、テーマやサイト設定など、すべてあなたが編集できます。
このソリューションには、エンドポイント、権限、サービス層テストのベースを備えた <YourProject>.Tests.Integration プロジェクトも含まれています。詳細は 統合テストを参照してください。
