0

私はasp.netページにテキストボックスを持っています。テキストボックスの先頭に誰も空白を挿入できないようにしたいのです。

例: "Nick Carter" <----- 形式が間違っています。これは起こらないはずです。空白を削除する必要があります。

"Nick Carter" <----- 正しい書式、

テキストボックスから最初からその白いスペースをトリミングする方法がわかりません。

ありがとう

4

4 に答える 4

0

Asp.Net は MVC パターンに従って設計されているため、考慮すべき点が 3 つあります。

  1. UI のみに制限したい場合があります。(または表示)
  2. コード ビハインドで制限することもできます。(またはコントローラー)
  3. データを処理するビジネスロジックで制限したい場合があります(多かれ少なかれモデル化)

(1)
UI / View の場合 Field Validator を使用してそれを実現できます。必要なのは Regex フィールドバリデーターです。そして、ここでそれを使用する方法について読むことができます:

方法: ASP.NET で正規表現を使用して入力を制限する

(2)
したがって、このソリューションは UI 側の問題を解決しますが、サーバー側のコントローラーもこれを制限していることを確認することをお勧めします。これを行うには、ASPX コード ビハインドで textbox1.Trim() の呼び出しを設定するか、正規表現コマンドを使用します。

(3)
次に、ビジネス ロジック..POCO を作成した場合は、入力を受け取るプロパティに検証コードを配置するか、POCO の汎用性を好む場合は、ビジネス ロジック メソッドに移動してチェックインすることができます。入力からの情報を処理する直前にあります。

私があなただったら、フィールド バリデータを実装し、情報を処理しようとしている API メソッドで 2 番目のチェックを行います。
しかし、これはもちろんスタイルや意見の問題です。

于 2013-10-08T09:02:26.820 に答える
0
private string RemoveSpaces(string text)
        {
            var reg = new System.Text.RegularExpressions.Regex(" +");
            return reg.Replace(text, " ").Trim();            
        }

これは、すべてのダブル スペース、および開始スペースと終了スペースに適用されます。

于 2015-11-26T14:06:33.350 に答える