0

Sitecore を使用して公開 Web サイトを開発しました。アイテム (記事) をフラグ付きとしてマークし、サイトを閲覧するときに後で参照できるようにメモを追加できるパブリック ログイン ユーザーがいます。現時点では、マスター データベースの Sitecore アイテムを使用してパブリック ログイン ユーザーを維持しています。また、ログイン ユーザーが記事にフラグを立ててメモを追加するたびに、コンテンツ ツリーのユーザー アイテムに子アイテムを追加し、そこにメモ コンテンツを保存します。Sitecore メンバーシップ モジュールに移動することを決定したので、そのプロファイル情報機能などを使用できます...

私たちが直面している問題は、これらの子メモ アイテムをエクスポートすることです。Sitecore メンバーシップ モジュールを使用してこれを行うには、どのような方法が適していますか?

マスターデータベースに同じユーザー構造を保持し、メンバーシップユーザーをそれらのユーザーアイテムにリンクし(外部キーのようなアプローチ)、そこからそれらのメモを参照することを考えました。このアプローチに関する考えはありますか?

4

2 に答える 2

1

これは現在、次の 2 つの理由からベスト プラクティスに従っていません。

  1. メンバーシップではなく、マスター データベースで正面ログインを管理していますが、メンバーシップに移行するのは良い決断です。これについては、セキュリティ APIを参照してください。
  2. ユーザー生成コンテンツ (UGC) をマスター データベースに保存しています。つまり、CM インスタンスへの完全な往復を行っているということです。UGC を保存するカスタムの追加データベースでこれを更新することをお勧めします。domain\usernameこれは、ユーザー名 (例: ) を GUID (「Web」DB 内) および実際の UGC (ユーザーからのメモ) によって関連付けられたコンテンツ アイテムにマッピングするテーブルと同じくらい単純です。軽量の Entity Framework または LINQ to SQL データ アクセス レイヤーを作成して、この追加の DB を操作できます。
于 2013-10-04T14:21:15.677 に答える
0

フラグ/メモ アイテムをアーティクル アイテムの下に移動し、ユーザー ID (Sitecore ユーザーには Guid ID があります) をフラグ/メモ アイテムのフィールドとして保存することをお勧めします。

必要に応じて、Sitecore メンバーシップ プロバイダーを拡張したり、.NET MembershipProviderを実装して独自のメンバーシップ プロバイダーを作成したりできます。この方法では、Sitecore マスター データベースの外部にフラグとメモを保存できます。この方法には、セキュリティ API クックブックが必要になる場合があります。

于 2013-10-04T13:47:21.623 に答える