DotNetNukeモジュールがページにありません
-
19-08-2019 - |
質問
nuke 4.8.4サイト用に開発しているnukeモジュールに奇妙な問題があります。
同じペインで、その下に別のモジュールを配置することを許可しないモジュールがあります。ペインの最後のモジュールである限りすべてが正常にロードされますが、他のモジュールの上に移動すると、他のモジュールはロードされません。
もともと、モジュールのマークアップで何かがおかしいと思ったので、他のモジュールの上に重ねられましたが、ページでソースを表示すると、他のモジュールはソースにも存在しません。
この問題を以前に見たことがありますか?もしそうなら、どのように問題を修正しましたか?
編集: 私たちはダースのモジュールを作成しました-1つのモジュールが私のマシンでこれを行いますが、別のモジュールが別の開発者のマシンでこれを行います。各マシンでは、1つの開発者に対して壊れたモジュールが他の開発者に対しては正常に機能します。
私たちが気づいたもう1つの興味深い点は、これらのモジュールのいずれかがページ上にある場合、GetTabModulesは同じModuleIDを持つ2つの行を1つのモジュールに対して返すことです。
解決 3
<!> ampをアンインストールしました。問題のあるモジュールを再インストールしましたが、問題なく動作します。インストールプロセスにおける何らかのバグであったに違いありません。 4.9.2にアップグレードし、同様の問題が発生するかどうかを確認します。
他のヒント
これは、特に古いサイトで、特に古い履歴があり、おそらく古い/削除されたモジュールでごみ箱がいっぱいになっている場合に発生します。モジュールを上または上に移動しようとし続けているように見えますが、他のモジュールと比較して移動しません。
データベースを見ると、問題は簡単にわかり、関連するModule_Tabレコードがページ上の他のモジュールと同じソート順番号を持っているか、null値を持ち、+ 1または-を追加していることがわかります1からNULLでもNULLを返します!
したがって、私たちにとっての答えは、常に次の手順を実行して問題を解決することです(これはデータベースにアクセスせずに実行できます):
- ごみ箱を空にしてから、ページに戻ってください
- すべてのモジュールをそれらが入っているペインの外に移動します...したがって、それらがすべてコンテンツペインにある場合は、左またはフッターペインに移動します。
- 次に、ページに表示する順序で、それぞれを1つずつコンテンツペインに追加します。
このプロセスにより、並べ替え順序が明確/無関係になり、各モジュールを再び追加すると、1から2などの新しい順序番号が開始されます。その後、すべてのモジュールは通常の上下移動アクションで正常に動作します。
モジュールコードがDNNを爆破しているようです。デバッガをアタッチしてサイトを実行し、モジュールをインスタンス化するコードをステップ実行します。