0

私は simple を作成しましたHttpModule。必要なのは内部で有効な get だけですSitecore.Contextが、処理中に mySitecore.Contextが何らかのデフォルトであることがわかります。

Sitecore などにログインする Sitecore ユーザーを取得できます。修正方法を教えてください。

4

2 に答える 2

2

Sitecoreコンテキストがあると思いますが、nullであるか、間違ったサイトまたは言語に設定されています。次のようにコンテキストを変更できます。

// switch to the preferred site    
Sitecore.Context.SetActiveSite("yourSiteName");

// set the preferred database
Sitecore.Context.Database = Sitecore.Configuration.Factory.GetDatabase("master");

// set the preferred language
Language language =  Sitecore.Globalization.Language.Parse("en");
Sitecore.Context.SetLanguage = (language, false);

処理が完了したら、元の設定に戻すこともできます。したがって、元の設定を変数に「保存」して、後で元に戻すことができるようにすることをお勧めします。

于 2013-01-14T09:11:21.980 に答える
1

コンテキストがどのように確立されているかについての背景については、Sitecoreパイプラインに関するJohnWestの投稿をご覧ください。

http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/05/All-About-Pipelines-in-the-Sitecore-ASPNET-CMS.aspx

http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/05/Important-Pipelines-in-the-Sitecore-ASPNET-CMS.aspx

カスタムパイプラインの作成と実行に関する次のブログ投稿では、独自のパイプラインを実装する方法について説明しています。

http://adeneys.wordpress.com/2008/08/27/creating-and-running-custom-pipelines-in-sitecore/

于 2013-01-14T03:06:55.667 に答える