ユーザーはIDを入力するためのこのテキストボックスをコントローラーメソッドに送信し、IDに基づいてデータベース内のコンサルタントを検索し、入力を強制的に大文字にしてからコントローラに送信したいと思っています。私はコントローラメソッドの中で大文字にすることができますが、作成されるコンサルタントオブジェクトは、最初に小文字で入力した場合は小文字のIDを持ち、何らかの理由で別のビューでコンサルタントの詳細を編集するためのモーダルポップアップを持つ場合、 ViewConsultantは、モデルに添付されている大文字のIDではなく、元の小文字のIDを引き出しています。私はこの質問が理にかなったことを願っています。問題が何であるかを明確にしていないかどうかを明確にすることができます。コントローラーMVCに送信する前に、すべてのキャップにテキスト入力を強制します。
<input type="text" class="form-control " id="ID" name="ID" style="vertical-align:bottom; text-transform:uppercase;" />
'コントローラーメソッド内で大文字にすることはできますが、ユーザーが最初に小文字で入力した場合、作成されるConsultantオブジェクトのIDは小文字になります。これを行うにはJavaScriptを使用できますが、クライアントは組み込みのツールを使用して入力をオフ/変更できます。サーバサイドは常に大文字を保証する唯一の方法です。あなたのコントローラでは、 'var upperCaseId = Id.ToUpper();'のような 'string.ToUpper()'を呼び出すときに新しい変数を正しく設定していることを確認して、 'upperCaseId'をSQL文に渡します。オリジナルID。 – Tommy
申し訳ありませんが、私はより具体的にすべきでした。ユーザーが最初に小文字で入力した場合、ViewConsultant()コントローラメソッドに渡されるConsultantModelパラメータには小文字のIDがあります。私は方法の中でそれを簡単に変更し、問題なしでコンサルタントを調べることができます。私がViewConsultantビューに送るモデルでも、それを大文字にしています。発生する問題は、コンサルタントの詳細を編集するためのモーダルポップアップです。私はそこに隠されたIDテキストボックスを持っていて、その特定のものはモデルからの大文字の代わりに元の小文字のIDを取得しています。それは理にかなっていますか? – Kblo55
'ViewConsultant()'と 'Search()'(またはコンサルタントIDを入力するために使用しているアクション)コントローラメソッドのメソッドを表示できますか? – Tommy