2

ログイン中にユーザーのオンラインステータスを取得しようとしています。ValidateUserの後に次のプロパティをチェックしていますが、常にfalseを返します。

    objUser.Membership.IsOnLine

確認のため、ログイン後にのみアクセスできるモジュールの1つに次のコードを挿入しました。

    Dim _currentUser As UserInfo = DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo()
    Dim message as String = IIf(_currentUser.Membership.IsOnLine, "Online", "Not Online")
    UI.Skins.Skin.AddModuleMessage(Me, message, Skins.Controls.ModuleMessage.ModuleMessageType.BlueInfo)

ユーザーがログインしている間は、常に「オンラインではありません」と表示されます。何かが足りませんか?助けてください。

DNN 6.02.05CommunityEdを使用しています。

4

2 に答える 2

3

DotNetNukeでオンラインユーザーを有効にするための重要な手順

「UsersOnline」モジュールは、(スケジューラーを介して)バックグラウンドスレッドで動作し、ユーザーオンラインリストからユーザーを追加および期限切れにします。スケジュールされたジョブはインストールに存在する必要がありますが、デフォルトでは無効になっています。

スケジュールされたジョブを有効にするには:-

  1. スーパーユーザーアカウント(ホストなど)としてポータルにログインします
  2. [ホスト]->[スケジュール]に移動します
  3. 「DotNetNuke.Entities.Users.PurgeUsersOnline、DOTNETNUKE」ジョブを編集します(鉛筆をクリックします)
  4. 「スケジュールが有効」にチェックを入れます</li>
  5. [更新]をクリックします
  6. その場で効果を得るには、「今すぐ実行」をクリックします。

スケジュールされたジョブを構成したので、ユーザーはバックグラウンドユーザーの処理を開始する必要があります。問題は、これが発生する前に設定する必要のある追加のホスト設定があることです。

ユーザーをオンラインで有効にするには:-

  1. スーパーユーザーアカウント(ホストなど)としてポータルにログインします
  2. [ホスト]->[ホスト設定]に移動します
  3. 「その他の設定」を展開</li>
  4. [ユーザーをオンラインで有効にする]をオンにします</li>
  5. [更新]をクリックします
于 2012-12-05T09:46:16.630 に答える
1

ばかげた質問かもしれませんが、ホスト設定->その他の設定でユーザーのオンライン機能がオンになっているかどうかを確認しましたか?

于 2012-12-03T14:07:31.740 に答える