AspDotNetStorefrontとSitecoreを統合しようとした人はいますか?私はここ数日、2つのシステムをうまく連携させる方法を考え出そうとしてきましたが、私が言えることからは実現可能ではないようです。私がこれまでに遭遇したいくつかの問題:
- 2つの間の認証(AspDotNetStorefrontには独自の実装があり、Sitecoreは.NETメンバーシップを使用/拡張するだけです)
- AspDotNetStorefrontのメインDLLは、イエロースクリーンが表示されたときにスタックトレースにポップアップするものですが、そのDLLは難読化されているため、問題が何であるかを理解できません。
最大の問題は、既存のAspDotNetStorefrontアプリケーションをeコマースバックエンドとして維持し、Sitecoreを使用して他のすべてを実行する必要があることです。AspDotNetStorefrontにはCMSが含まれていますが、これは実際には基本的なコンテンツページ以外には受け入れられないソリューションです。
私がこれについてどうやって行くのかについて何か考えはありますか?
編集:
私は、このすべてを現在直面しているさまざまな問題に分解し、それぞれを私が知っている限り効率的に解決することにしました。ここにあるものを詳しく説明し、新しいものに遭遇したときに更新します。
問題1:2つのシステム間の認証。
これは、フォーム認証チケットに精通していれば、実際にはそれほど悪くはありません。私は当時はそうではありませんでしたが、十分に早く学習しています。2つのシステムが同じ暗号化情報を共有している限り、以下の承認された回答に記載されているように、Cookieを使用してシステム間で情報をやり取りするのは簡単です。もう1つのキッカーは、AspDotNetStorefront CustomerテーブルのCustomerGUIDをSitecoreユーザーテーブルのユーザーID(標準のASP.NETメンバーシップ)に設定する必要があることです。これまでのところ、このアプローチはかなりうまく機能しているようです(私はまだ概念実証段階にあります。
これを試みる必要がある場合に留意すべきもう1つの点は、AspDotNetStorefrontには、基本的に必要なことをすべて実行するために使用できるWebサービスが付属していることです。同じ暗号化キーを使用しているため、クリアテキストのパスワードを渡すよりも安全にこのサービスを使用してストアフロント側にログインできます(メソッドを自分で作成する必要がありましたが、標準になるとは思いません。間違っているので教えてください)。とにかくすべてがサーバー側で発生するので、それが大したことではないかと思いますが。
問題2:製品データを取得する
これはもう少し面倒でした。前述のWebサービスには、回避するのに苦労したいくつかの問題があります。ただし、データベースは同じサーバー上にあるため、実際に必要なのは価格とIDだけなので、Storefrontデータベースの各製品のProductGUID列をSitecoreアイテムIDと一致するように設定することにしました。 Sitecoreデータベース内の対応するアイテムの。このように、いくつかの場所でのみ使用されるProductIDと価格情報を取得するための簡単なクエリが必要です。それ以外はすべてSitecoreに格納されます。
Googleからわかる限り、誰かが追加するものがあれば、これまで誰も実際にこれを行ったことがないので、この特定のトピックに関するリソースを見つけるのに多くの問題があります。
アップデート:
統合は実際に可能であり、私たちのサイトは1週間半稼働しており、統合に関連する問題はほとんどありません。これは私が個人的なレベルで実際に行うことをお勧めすることではありませんが、実際にはそれをやめることは可能です。