問題タブ [validation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - ビジネス オブジェクト、検証、および例外
例外とその使用に関するいくつかの質問と回答を読んでいます。例外は例外、未処理の場合にのみ発生させるべきだという強い意見があるようです。そのため、検証がビジネス オブジェクトでどのように機能するのか疑問に思いました。
オブジェクトのプロパティのゲッター/セッターを持つビジネス オブジェクトがあるとします。値が 10 ~ 20 であることを検証する必要があるとします。これはビジネス ルールであるため、ビジネス オブジェクトに属します。そのため、検証コードがセッターに入っていることを暗示しているようです。これで、UI データがデータ オブジェクトのプロパティにバインドされました。ユーザーは 5 を入力するため、ルールは失敗する必要があり、ユーザーはテキスト ボックスから移動できません。. UI はプロパティにデータバインドされているため、setter が呼び出され、ルールがチェックされて失敗します。ルールが失敗したことを示すためにビジネス オブジェクトから例外を発生させた場合、UI はそれを取得します。しかし、それは例外の好ましい使用法に反しているようです。それがセッターであることを考えると、セッターの「結果」は実際にはありません。
では、検証はどのように機能するのでしょうか?
編集: ここでは、単純化しすぎた例を使用した可能性があります。上記の範囲チェックのようなものは UI で簡単に処理できますが、検証がより複雑な場合、たとえば、ビジネス オブジェクトが入力に基づいて数値を計算し、計算された数値が範囲外の場合は拒否する必要があります。これは、UI に含めるべきではない、より複雑なロジックです。
また、すでに入力されているフィールドに基づいて入力された追加データも考慮されます。たとえば、在庫や現在のコストなどの特定の情報を取得するために、注文にアイテムを入力する必要があります。ユーザーは、この情報を入力してさらに入力するかどうかを決定する必要がある場合があります (注文するユニット数など)。さらなる検証が行われるように。アイテムが有効でない場合、ユーザーは他のフィールドに入力できるようにする必要がありますか? ポイントは何ですか?
php - PHPでのmysqlインジェクションを避けるために、ユーザーから取得したすべてのCookieをmysql_real_escape_stringにする必要がありますか?
ユーザーが私のサイトにアクセスすると、スクリプトはユーザー ID とパスワードの一部を保存する 2 つの Cookie をチェックして、自動的にログインします。
Cookie エディターを使用して Cookie の内容を編集することは可能ですが、書き込まれた Cookie に悪意のあるコンテンツを追加することは可能でしょうか?
すべての Cookie 呼び出しに (または何か他のものを)追加する必要mysql_real_escape_string
がありますか、それともこれを許可しない組み込みのプロシージャがありますか?
c# - C#でTreeViewのドラッグ/ドロップ操作を検証するための最良の方法
ドラッグアンドドロップ操作が許可されていることを確認したい。有効なアイテムは、別の「コントロール」から取得することも、カスタムツリービュー内から内部的に取得することもできます。現在私はこれを持っています:
私は物事を改善するためにすべてのチェックコードをこのメソッドに移動しましたが、私にとってこれはまだひどいです!
非常に多くのロジックがあり、ツリービューがそれ自体で実行すると予想されることを実行します(たとえば、「TargetExistsInNode」は、ドラッグされたノードがその子の1つにドラッグされているかどうかをチェックします)。
コントロールへの入力を検証するための最良の方法は何ですか?
c# - クラス名を検証する .NET 関数はありますか?
CodeDom を使用して、ユーザーの値に基づいて動的コードを生成しています。これらの値の 1 つは、生成するクラスの名前を制御します。正規表現を使用して有効なクラス名に関する言語規則に基づいて名前を無菌化できることは知っていますが、クラス名を検証および/または無菌化するための特定のメソッドがフレームワークに組み込まれているかどうかを知りたいです。
wpf - 依存関係プロパティとスタイル トリガーを使用した WPF での検証の使用
WPF で Validation を使用しようとしています。以下に示すように、NotNullOrEmptyValidationRule を作成しました。
今、私は自分のアプリケーションでそれを使用する必要があります。App.xaml ファイルで、TextBox のスタイルを宣言しました。これが宣言です。
今、私は自分の TextBox でそれを使用したいので、次のコードを使用しています:
エラーはタグ NotNullOrEmptyValidationRule で発生します。XAML 構文チェッカーは、NotNullOrEmptyValidationRule を解決できません。名前空間を入れてみましたが、うまくいかないようです。
c# - WCF の障害と例外
初めて WCF サービスを作成しています。サービスとそのすべてのクライアント (少なくとも現時点では) は C# で記述されています。サービスは、渡されたデータに対して多くの入力検証を行う必要があるため、クライアントに無効なデータを示す何らかの方法が必要です。私はフォルトと例外、例外をフォルトにラップすること、そして私をさらに混乱させる多くの矛盾する記事について多くのことを読んできました。このケースを処理する適切な方法は何ですか?
例外を完全に回避し、結果の戻りメッセージをパッケージ化する必要がありますか? 特別なフォールトまたは特別な例外を作成する必要がありますか?それとも、WCF 以外の検証関数の場合のように ArgumentExceptions をスローする必要がありますか?
私が今持っているコード ( MSDNの影響を受ける) は次のとおりです。
メソッドには [FaultContract(typeof(ValidationFault))] があります。それで、これはこれにアプローチする「正しい」方法ですか?
asp.net-mvc - ASP.NET MVC でチェック ボックスを検証するにはどうすればよいですか?
ASP.NET MVC (クライアント側とサーバー側の両方) でチェック ボックスを検証するために、人々がどのような方法を使用しているのか疑問に思っています。
私は現在、クライアント側の検証に JQuery を使用していますが、人々がどのような方法を使用しているか、理想的には最小限の手間で興味があります (新しいソリューションを探しています)。
私は現在 MVC Preview 4 を使用しています。MVC Preview 4 に洗練されたソリューションがない場合は、MVC Preview 5 にアップグレードできますが、他の開発者や既存のソリューションとの互換性のために、この段階ではアップグレードしない方がよいでしょう。 .
注意してください、私はこれらの関連記事を見ました:
c# - ASP.NET: クライアント側とサーバー側の検証規則の同期
クライアント側とサーバー側の検証ルールの同期を維持する簡単でスマートな方法はありますか?
クライアント側には JavaScript があり、おそらく jQuery や YUI のような何らかのフレームワークです。
サーバー側には、ASP.NET WebForms または ASP.NET MVC があります。
検証されるのは、次のようなものです。
- メールアドレスを修正する
- 自宅の住所と郵便番号を修正する
- 正しいクレジット カード番号
等々。
php - PHP でカスタム DTD を使用して XML を検証する
PHP でカスタム DTD を使用して XML を検証する (ライブラリをインストールせずに) 方法はありますか?