2011-08-09 10 views
1

私はしばらくの間ASP.Netで作業してきましたが、エラーメッセージのようなコンテンツを出力する非常に基本的な方法について質問があります。出力をプログラムで設定するためのベストプラクティス?

私は、2つの主要な選択肢を参照してください。

  • ユーザーコントロールを使用し、分離コードで内容を設定します。

    <asp:Literal id="litError" runat="server" /> 
    

    分離コード:分離コードと出力することでメンバ変数を設定し

    litError.Text = "You're doing it wrong!"; 
    
  • protected string errorMessage; 
    ... 
    if(error) 
        errorMessage = "You're doing it wrong!"; 
    

    ASPX:

    <%: errorMessage %> 
    

ベストプラクティスです方法はありますか?それは単に個人的な好みですか、どの方法を使用するのですか? どちらか一方の方法が利用できない状況があることは知っていますが、両者がうまくいく場合について話しています。

利点と欠点は何ですか?優先されるべき第3の方法はありますか?

私は常にusercontrolメソッドを使用しましたが、ASP.Net 4.0に新しいナゲットシンタックスが導入されたことで、私は間違ったトラックに乗っている可能性があります。

+0

誰かが質問のコードの書式設定を手助けすることができますか?私はなぜ私が正しくasp.netコードを出力できないのか分かりません...編集:nvm得ました – magnattic

答えて

1

私はそれが好みになると思います。個人的には、インラインコードをコードの後ろに混ぜるのは好きではないので、私はいつも(可能であれば)プログラマチックな出力のためにコードを使いたいと思っています。ビジネスの観点からは、インラインとコードの混在が一貫性を損なうため、コードを次の人のために覚えるのが難しくなると思います。私は常に一貫性に賛成して投票します。

これはちょうど私の2セントです。それが役に立てば幸い。

+0

有効な整合性ポイントのため、これを答えとして選択しました。 – magnattic

0

私はそれが主に嗜好に左右されると思います。構文以外の一般的な2つの方法の間には大きな違いはありません。

2

これを行う正しい方法はないと思いますが、どちらも完全に有効なオプションです。どちらもページクラスのプロパティとして終わります。リテラルコントロールはサーバーコントロールであるため、ページ開発者として役立つ可能性のあるプロパティとメソッドがありますが、それは場合によって異なります。

0

コードビハインドで実行され、サーバーコントロールを作成し、もう1つはコードの背後にあるメソッドへの参照です。コーディング手法によっては、コード実行時に違いが生じる可能性があります。 しかし、ベストプラクティスまでは?他の人の答えと同じように、それは好みになる。

関連する問題