C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.1822 の関連記事表示

<< 0 >>
■1839  Re[4]: クラス化したロジックからの画面制御
□投稿者/ 麦茶 -(2005/11/08(Tue) 16:25:12)

    分類:[VB.NET] 

    No1838に返信(aiaiさんの記事)
    > スクリプトを画面1のページに出力すればよいのではないでしょうか?
    >
    > ****画面1「GAMEN1」のロジック****
    > :
    >          CALL clcKengenChk.KengenChk("GAMEN1", Me.Page)  
    >
    > ****権限チェックのロジック****
    > #Region "権限チェック"
    > Public Function KengenChk(ByVal _strScrId As String, ByVal p As Page) As Boolean
    > :
    > p.RegisterStartupScript("authenticated", cript.ToString)
    >

    ありがとうございました。試した結果、希望通りの動きになりました。
    元の画面のPage(この場合パラメータでわたったp)がスクリプトを出力するように仕向けているんですね。初心者にはやっぱり、難しいです。
    ありがとうございました。
記事No.1822 のレス / END /過去ログ2より / 関連記事表示
削除チェック/

■1838  Re[3]: クラス化したロジックからの画面制御
□投稿者/ aiai -(2005/11/08(Tue) 15:45:27)

    分類:[VB.NET] 

    スクリプトを画面1のページに出力すればよいのではないでしょうか?

    ****画面1「GAMEN1」のロジック****
    :
             CALL clcKengenChk.KengenChk("GAMEN1", Me.Page)  

    ****権限チェックのロジック****
    #Region "権限チェック"
    Public Function KengenChk(ByVal _strScrId As String, ByVal p As Page) As Boolean
    :
    p.RegisterStartupScript("authenticated", cript.ToString)

記事No.1822 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1837  Re[2]: クラス化したロジックからの画面制御
□投稿者/ 麦茶 -(2005/11/08(Tue) 14:35:58)

    分類:[VB.NET] 

    No1825に返信(中博俊さんの記事)
    > 画面をどう遷移させるかは画面の問題ですよね?
    > おそらく切り分けがよくないと思います。
    > 遷移といっても実際に遷移しているわけじゃなくって、元の画面は隠れているだけだったり、元の画面は閉じて、別の画面の制御下で実行していたりどのようにするかを一度まとめてみましょう。

    はい、実際遷移しているわけじゃなくて、権限が合わなければログイン画面(画面2)に戻るという処理を行いたいのです。
    ですから、画面1で、画面に付随したロジックが動く。そのロジックの中でクラス化した権限チェックロジックを呼び出す。呼び出されたロジック内で権限が合わなかった場合、元画面(画面1)を閉じて、画面2を表示する(元画面のロジックには戻らなくても可・もしくは戻ってすぐに抜ける)としたいのですが・・・
    権限チェックロジックの中で、画面の制御を行いたいのですが無理でしょうか?
    権限チェックのロジックで、権限エラーとして元のロジックに戻り、そのロジック(画面1のロジック)の中で画面2に飛ぶのは確かに出来ました。しかし、これだと今回のクラス化の意味が半減してしまうので(様々な画面から使用するため)できれば権限チェックのロジックで行いたいのです。
    よろしくお願いします。
記事No.1822 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1825  Re[1]: クラス化したロジックからの画面制御
□投稿者/ 中博俊 -(2005/11/07(Mon) 22:10:52)
>

    分類:[VB.NET] 

    画面をどう遷移させるかは画面の問題ですよね?
    おそらく切り分けがよくないと思います。
    遷移といっても実際に遷移しているわけじゃなくって、元の画面は隠れているだけだったり、元の画面は閉じて、別の画面の制御下で実行していたりどのようにするかを一度まとめてみましょう。
記事No.1822 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1822  クラス化したロジックからの画面制御
□投稿者/ 麦茶 -(2005/11/07(Mon) 18:12:44)

    分類:[VB.NET] 


    分類:[VB.NET] 

    初心者なので、もし基本的すぎる質問だったらすみません。色々調べたのですが
    とあるロジックをクラス化する場合の制御がよくわかりません。お手数ですが、わかる方いらっしゃいましたら教えてください。

    画面1から、権限チェックのクラスを呼びます。
    権限チェッククラスの中で、DBをチェックして権限が無かった場合、画面1には戻らず、
    画面2に飛ぶロジックを組みたいです。
    権限チェックをクラス化しない場合は、ロジックがうまく組めたのですがクラス化してからうまく動かなくなりました。
    以下の、ロジックだと権限チェックの中で画面2を呼び出しても制御が画面1に戻ってしまうため、結局画面1が表示されます。


    ****画面1「GAMEN1」のロジック****
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    If Not IsPostBack Then
    '権限チェック
             CALL clcKengenChk.KengenChk("GAMEN1")  
    End Sub

    ****権限チェックのロジック****
    Public Class clsKengenChk '権限チェック
    Inherits System.Web.UI.Page

    #Region "権限チェック"
    Public Function KengenChk(ByVal _strScrId As String) As Boolean
    KengenChk = True
    'わたってきた画面IDにより、権限SQL-DBを読み込む(ロジック省略)

    If 画面の権限 = 否 Then
    '認証チケットを削除(永続的な Cookie またはセッション
    'Cookie のいずれかが削除)
    System.Web.Security.FormsAuthentication.SignOut()
    Session.Clear()

    Dim script As New System.Text.StringBuilder
    script.Append("<script language=""JavaScript"">")
    script.Append("top.location.href =""GAMEN2.aspx"";")
    script.Append("</script>")

    Page.RegisterStartupScript("authenticated", cript.ToString)

    '※上記のロジックを「Response.Redirect("AAA0101.aspx")」にしてもだめでした

    End If
    End Function
    End Class

親記事 /0過去ログ2より / 関連記事表示
削除チェック/

■1822  Re[4]: アプリケーション作成時に機能別にexeを分けていますか?
□投稿者/ Ognac -(2007/03/07(Wed) 10:26:04)
    No1814 (Jitta さん) に返信
    >画面の主従関係が整理されていないため、と思います。
    画面遷移を一方通行で構築する範囲では, DLLで構築するほうが,利便性が高いし,薦めるのでが、
    相互に画面を呼び合ったり,ループ状に参照しあったりするケースで,整理できないまま,具合の悪い面を残したまま製造が上がって来るので,予防の意味もあり、そう言っています。(私のチェック怠慢もあります)
記事No.1778 のレス /過去ログ10より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -