1

void型について聞きたいので、それが機能するかどうかを知ることができました

PHP では、次のような条件が考えられます。

if(mysql_query($query))
{ bla bla }
else
{ print error }

ASP.NET でそのようにする方法は?

私はこのようにしようとしています:

if (k.EditPassword(username.Text, oldPassTxt.Text, newPassTxt.Text) == true )
{
Response.Redirect("sample.aspx");
}
else
{ print error }

もちろん、void はブール値ではないため、そのようなことはできません。

4

2 に答える 2

3

通常、失敗する可能性のある作業を行う void 関数には、失敗したことを通知する別の方法があります。多くの場合、例外がスローされます。

try
{
    k.EditPassword(...)
}
catch(ApplicationException ex)
{
    // print Exception
}
Response.Redirect(...)

また、ステータス変数または何かを設定する場合もあります。

k.EditPassword(...)
if (k.Result == Result.OK)
    Response.Redirect(...)
else
    // print error...

処理しようとしている条件のドキュメントまたはソース コードを調べることが、その処理方法を知る唯一の方法です。

于 2012-04-17T04:24:28.413 に答える
0

リテラル コントロールを使用して、それにテキストを追加できます。したがって、コードは次のようになります。

if (k.EditPassword(username.Text, oldPassTxt.Text, newPassTxt.Text) == true )
{
Response.Redirect("sample.aspx");
}
else
{ Literal1.Text = error; }

リテラルはデザイン ファイルにある必要があり、ツールボックスから追加できます。

しかし、より良い適切な方法は、

  1. ログに記録します。(ログ機構が必要です)

  2. 単体テストを書く:)

于 2012-04-17T04:03:45.933 に答える