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

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

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

全過去ログを検索

<< 0 >>
■26112  Re[1]: NMock2でByRefの戻り値を作ることができるのか?
□投稿者/ koty -(2008/10/02(Thu) 07:27:30)
    解決しましたので、自己レスいたします。
    
    Willの引数に
    New Actions.SetNamedParameterActionというインスタンスを渡して、
    ByRefの戻り値を指定してやればいいと判明しました。
    
    Expect.Once().On(Me.m_KanrijohoB).Method("GetZeiRit").With("1", 0).Will(NMock2.Return.Value(True), _
                                                          New Actions.SetNamedParameterAction("Zeiritsu", 0.05d))
    
    これで開発に使えそうです。
    テストコードってみなさんどれくらい書いているもんなんでしょうか?
    
    
    
    '●プロダクションコード(テストされるクラス)
    Public Class ZeikinKeisanBClass
        Private m_KanrijohoB As IKanriJohoAccessBClass
        Private m_Zeirit As Decimal = 0
        Public Sub New(ByVal KanriJohoB As IKanriJohoAccessBClass)
            Me.m_KanrijohoB = KanriJohoB
            Me.m_KanrijohoB.GetZeiRit("1", Me.m_Zeirit) '参照渡しをすることで税率を取得
        End Sub
    
        Public Function ZeigkKeisan(ByVal Input As Decimal) As Decimal
            Return Input + Input * Me.m_Zeirit
        End Function
    End Class
    
    
    '●mockにすりかえるクラス
    Public Interface IKanriJohoAccessBClass
        Function GetZeiRit(ByVal ZeiShubetsu As String, ByRef Zeiritsu As Decimal) As Boolean
    End Interface
    Public Class KanriJohoAccessBClass
        Implements IKanriJohoAccessBClass
        Public Function GetZeiRit(ByVal ZeiShubetsu As String, ByRef Zeiritsu As Decimal) As Boolean Implements IKanriJohoAccessBClass.GetZeiRit
            'ホンモノの処理。データベースから該当の税種別の税率を取得する
        End Function
    End Class
    
    
    '●テストコード
    <TestFixture()> _
    Public Class ZeikinKeisanBClass_Test
    
        Private m_ZeikinKeisanB As ZeikinKeisanBClass
        Private m_KanrijohoB As IKanriJohoAccessBClass
    
        <SetUp()> _
        Public Sub Init()
        End Sub
    
        <Test()> _
        Public Sub 金額計算テスト1()
    
            Dim mock As New Mockery()
            Dim Zeiritsu As Decimal = 0
            Me.m_KanrijohoB = CType(mock.NewMock(GetType(IKanriJohoAccessBClass)), IKanriJohoAccessBClass)
    
            'ここをうまいこと書いて税率をテストコードから制御したい
            Expect.Once().On(Me.m_KanrijohoB).Method("GetZeiRit").With("1", 0).Will(NMock2.Return.Value(True), _
                                                          New Actions.SetNamedParameterAction("Zeiritsu", 0.05d))
    
            Me.m_ZeikinKeisanB = New ZeikinKeisanBClass(Me.m_KanrijohoB)
    
            Dim IncludeTax As Decimal
    
            '税率5%で、計算が正しいこと
            Assert.That(Me.m_ZeikinKeisanB.ZeigkKeisan(100), Iz.EqualTo(105), "税金計算")
    
    
        End Sub
    End Class
    
    
記事No.25455 のレス / END /過去ログ48より / 関連記事表示
削除チェック/

■46259  Re[1]: MVP Global Summit視察ツアーの準備
□投稿者/ はつね -(2010/01/28(Thu) 23:46:45)
    No46255 (やじゅ さん) に返信
    > 会社の了解も得て、2010年2月16日〜2月19日に開催されるMVP Global Summitに
    > 行けることとなりました(^-^)

    MVP Global SummitはNDAが多く含まれます。
    一般的な海外旅行の質問ではなくMVP Global Summitということであれば、
    ツアー会社なりMVP事務局なりに問い合わせましょう。
記事No.46255 のレス /過去ログ78より / 関連記事表示
削除チェック/

■52913  JavaScriptの実行タイミング
□投稿者/ まし -(2010/08/27(Fri) 18:07:31)

    分類:[.NET 全般] 

    PostBack時に、RegisterClientScriptBlockを使ってjavascriptのアラートを実行させています。
    ところが、アラートのOKを押した後に画面が白くなって再描画されます。

    再描画されてからアラートが表示される方が見栄えがよいのですが
    なんとかならないものでしょうか?

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

■55133  log4netのローテーション検出について
□投稿者/ さいごん -(2010/11/17(Wed) 23:50:36)

    分類:[ASP.NET (C#)] 

    ASP.NET C#で開発をしております。

    log4netを使用しログ出力を行っているのですが、
    ログのローテーションをプログラムで検知する方法はありますでしょうか。

    ご存知の方がいらっしゃいましたらご教授願えると幸いです。

    以上、よろしくお願いいたします。
親記事 /過去ログ92より / 関連記事表示
削除チェック/

■69666  Re[3]: コントロールの一覧を指定できるコンポーネントを作る
□投稿者/ Jitta -(2014/01/18(Sat) 09:30:43)
>
    No69664 (C#研究者 さん) に返信
    > 2014/01/18(Sat) 07:08:01 編集(投稿者)
    >
    >
    >>Jitta 様
    > もちろんそれで動作はできるとおもいますけど、
    > UI上で操作できれば後で編集しやすいかと思いまして。

     「UI 上で操作できる」というのがイメージできません。

     問題を解決するためには、原因を知り、原因が発生した背景を知らなければなりません。
    原因がわからずに対症療法を行うと、別の症状として発生します。
    原因が発生した背景を理解せずに対応すると、対応が他の箇所に影響します。
    経験が長い人ほど、「説明してください」と繰り返すことに注意してください。

     いったい、どんな要望があって、その要望を満たすためにどうすれば良いと考えて、
    コントロールの一覧を、どこに保持しようとしているのでしょうか。
     たとえば、「UI 上で操作できれば」というのは、最初の投稿にはありませんでした。
    また、「操作」というのは、どのようなことを意味しているのでしょうか。
    つまり、Button というコントロールを、Button として操作しようとしている、
    ・・・難しいな。あるウィンドウに配置してあるコントロールの一覧を表示するウィンドウがあるとして、
    別のウィンドウでも視覚的にボタンとして表示し、さらにクリックなどの操作ができるようにしたいと考えているのでしょうか。
記事No.69648 のレス /過去ログ119より / 関連記事表示
削除チェック/

■90005  Re[14]: リッチテキストボックスでカラー情報をコピーする方法
□投稿者/ イエメン -(2019/01/29(Tue) 14:02:16)
    ありがとうございます。

    Thread.Sleep(100)
    を入れるとうまくいきました。

    ただ、文字列のサイズによっては100 msecでは足りない時があるかも知れません。

    ちなみになのですが

    たとえば Application.Idle イベントで処理させるようにするとか、
    Control.BeginInvoke なり Task.ContinueWith メソッドなりに分けるとか。

    これらはどのようにして使用するものなのでしょうか?
    この方法なら、操作が終わるまで待機するようなことが可能なのでしょうか?
記事No.89928 のレス /過去ログ155より / 関連記事表示
削除チェック/

■90006  Re[15]: リッチテキストボックスでカラー情報をコピーする方法
□投稿者/ 魔界の仮面弁士 -(2019/01/29(Tue) 14:24:48)
    2019/01/29(Tue) 14:28:45 編集(投稿者)

    No90005 (イエメン さん) に返信
    > Thread.Sleep(100)
    > を入れるとうまくいきました。

    UI スレッドで Sleep を呼びだすことは避けてください。



    > これらはどのようにして使用するものなのでしょうか?

    たとえば BeginInvoke ならこうかな。
    掲示板に直接書いたので未検証ですけど。


    Private Sub ButtonX_Click(…
     Dim oldCursor = Cursor.Current
     Cursor.Current = Cursors.WaitCursor

     Dim xlApp As Object = Nothing
     Try
      xlApp = GetObject(, "Excel.Application")
      CallByName(xlApp, "CutCopyMode", CallType.Let, False)
     Catch
     Finally
      If xlApp IsNot Nothing AndAlso Marshal.IsComObject(xlApp) Then Marshal.ReleaseComObject(xlApp)
     End Try
     BeginInvoke(Sub()
      Try
       Clipboard.Clear()
       RichTextBox1.Copy()

       Dim wApp As Object = Nothing
       '中略
       Try
        wApp = CreateObject("Word.Application")
        '中略
        CallByName(wRng, "Paste", CallType.Method)
        CallByName(wRng, "Copy", CallType.Method)
       Catch
       Finally
        '中略
       End Try
      Catch
      Finally
       Cursor.Current = oldCursor
      End Try
     End Sub)
    End Sub
記事No.89928 のレス /過去ログ155より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -