1

PHPでは、スクリプトの実行をすぐに停止して変数を出力できます。たとえば、$ myVarの内容を知りたい場合は、次のようにすることができます。

var_dump($ myVar); die();

とにかく変数の値をすぐに取得してVB.NETでそれを強制終了する方法はありますか?

必ずしも含める関数を求めているわけではありません。基本的に変数をすぐに出力するネイティブ関数がある場合は、コントローラー、ビュー、公開、テストの順に追加する必要はありません。理想的には、デバッガーやメッセージボックスなどに変数を出力するだけです...

ASP.NETMVC3も使用しています。

ありがとう。

4

1 に答える 1

1

System.Diagnostics.TraceクラスとSystem.Diagnostics.Debugクラスを使用して、情報を出力できます。

実行の停止は通常、 System.Web.Mvc.HttpNotFoundResultなどの関連するSystem.Web.Mvc.ActionResultを返すか、問題を最もよく表すHTTPステータスコードを含むSystem.Web.HttpExceptionをスローすることによって発生します。

これは素朴な例です。すみません、VBが貧弱です。

Public Function UpdateUser(id as Integer, userName as String, password as Password) as ActionResult
    Dim user as User = DataServices.GetUserById(id)
    If user Is Nothing Then
        System.Diagnostics.Debug.WriteLine("Aborting because user did not exist.")
        throw new HttpException(404, "Page not found.")
    End
    ' Do more stuff
end

またはC#で

public ActionResult UpdateUser(int id, string userName, string password) {
    var user = DataServices.Users.Where(u => u.id == id).SingleOrDefault();

    if( user == null ) {
        Debug.WriteLine("Aborting because user did not exist.");
        return HttpNotFound(); // Helper method in Controller Class.
    }
    else if( myRoles() < thisUsersRoles(user) ) {
        Debug.Writeline("Aborting because insufficient access.");
        throw new HttpException(401, "Unauthorized");
    }

    // update user here
    return View();
}

これらの例は、Debugの使用とhttpステータスコードの戻りを表示するためだけに考案されていることに注意してください。

于 2012-08-01T17:53:43.693 に答える