タグ付けされた質問 「asp.net-mvc-3」

ASP.NET MVC 3は、.NETフレームワークでWebアプリケーションを開発するためのModel-View-Controller拡張機能の3番目のメジャーバージョンです。

19
「モデル」という名前はMVC3の現在のコンテキストに存在しません
プロジェクトにcshtmlページを追加しました。次の宣言を追加しようとすると、「名前「モデル」は現在のコンテキストに存在しません」というエラーが表示されます。 @model xyz.abc.SomeClass 参照を確認しましたが、すべて揃っています。ビューフォルダーにweb.configを追加しましたが、修正されませんでした。 何か足りないものはありますか?


15
ASP.NET MVC 3で特定の形式でDateTimeをレンダリングする方法
モデルクラスにタイプタイプのプロパティがあるDateTime場合、どのように特定の形式(たとえば、ToLongDateString()返される形式)でレンダリングできますか? 私はこれを試しました... @Html.DisplayFor(modelItem => item.MyDateTime.ToLongDateString()) ...式はプロパティまたはフィールドを指す必要があるため、例外がスローされます。この... @{var val = item.MyDateTime.ToLongDateString(); Html.DisplayFor(modelItem => val); } ...これは例外をスローしませんが、レンダリングされた出力は空です(ただしval、デバッガーで確認できるように、期待値が含まれています)。 事前にヒントをありがとう! 編集する ToLongDateString例にすぎません。代わりに実際に使用したいのToLongDateStringは、DateTimeおよびのカスタム拡張メソッドですDateTime?。 public static string FormatDateTimeHideMidNight(this DateTime dateTime) { if (dateTime.TimeOfDay == TimeSpan.Zero) return dateTime.ToString("d"); else return dateTime.ToString("g"); } public static string FormatDateTimeHideMidNight(this DateTime? dateTime) { if (dateTime.HasValue) return dateTime.Value.FormatDateTimeHideMidNight(); else return ""; } …

6
ASP.NET MVC Ajaxエラー処理
jquery ajaxがアクションを呼び出すときにコントローラーでスローされた例外をどのように処理しますか? たとえば、デバッグモードまたは通常のエラーメッセージの場合に例外メッセージを表示するajax呼び出し中に、あらゆる種類のサーバー例外で実行されるグローバルJavaScriptコードが必要です。 クライアント側では、ajaxエラー時に関数を呼び出します。 サーバー側では、カスタムアクションフィルターを作成する必要がありますか?


5
「潜在的に危険なRequest.Path値がクライアントから検出されました(&)」
ホームページのリクエストであるかのようにランダムなURLをサポートする必要があるというレガシーコードの問題があります。一部のURLには、「潜在的に危険なRequest.Path値がクライアントから検出されました(&)」というエラーを生成する文字が含まれています。サイトはASP.Net MVC 3(C#)で作成され、IIS 7.5で実行されています。 ここにURLの例があります... http://mywebsite.com/Test123/This_&_That キャッチオールルートを設定する方法は次のとおりです(特定のページをキャッチする他のルートがあります)... routes.MapRoute( "Default", // Route name "{garb1}/{garb2}", // URL with parameters new { controller = "Website", action = "Home", garb1 = UrlParameter.Optional, garb2 = UrlParameter.Optional } // Parameter defaults ); web.configファイルに次のものを追加しました... <configuration> <system.web> <pages validateRequest="false" /> <httpRuntime requestValidationMode="2.0" /> </system.web> <configuration> また、URLをキャッチする必要があるアクションにValidateInput属性を追加しました... public class …

3
拡張メソッドは動的にディスパッチできません
MVCでDropDownListForを使用したい @foreach (var item in Model) { @Html.DropDownListFor(modelItem => item.TitleIds, new SelectList(ViewBag.TitleNames as System.Collections.IEnumerable, "TitleId", "Title.TitleText"), "No: " + ViewBag.MagNo, new { id = "TitleIds" }) } コントローラ内 public ActionResult ArticleList(int id) { ArticleWriter_ViewModel viewModel = new ArticleWriter_ViewModel(); Func<IQueryable<NumberTitle>, IOrderedQueryable<NumberTitle>> orderByFunc = null; Expression<Func<NumberTitle, bool>> filterExpr = null; if (id …

4
MVC3 DropDownListFor-簡単な例?
DropDownListForMVC3アプリで問題が発生しています。StackOverflowを使用してそれらをビューに表示する方法を理解することができましたが、送信時にビューモデルの対応するプロパティの値をキャプチャする方法がわかりません。これを機能させるには、IDと値のプロパティを持つ内部クラスを作成する必要があり、次にIEnumerable<Contrib>、DropDownListForパラメーター要件を満たすためにを使用する必要がありました。しかし、MVC FWは、このドロップダウンで選択された値をビューモデルの単純な文字列プロパティにどのようにマッピングするのでしょうか。 public class MyViewModelClass { public class Contrib { public int ContribId { get; set; } public string Value { get; set; } } public IEnumerable<Contrib> ContribTypeOptions = new List<Contrib> { new Contrib {ContribId = 0, Value = "Payroll Deduction"}, new Contrib {ContribId = 1, Value = "Bill Me"} …

4
ASP.NET MVC:すべてのリクエストに対してコントローラーが作成されますか?
非常に単純な質問:ASP.NETのコントローラーはすべてのHTTP要求に対して作成されますか、それともアプリケーションの起動時に作成され、要求全体で再利用されますか? コントローラは特定のHTTPリクエストに対してのみ作成されますか? 以前の仮定が正しい場合、それに依存できますか?1つの要求に対してのみ有効になるデータベースコンテキスト(Entity Framework)を作成したいと思います。コントローラのコンストラクタで初期化されたプロパティとしてそれを作成する場合、すべてのリクエストに対してコンテキストの新しいインスタンスが作成されることは許可されますか?

4
HTTPPOST、ディクショナリまたはフォームからフォームの値を取得する方法
このアクションメソッドを持つMVCコントローラーがあります。 [HttpPost] public ActionResult SubmitAction() { // Get Post Params Here ... return something ... } フォームは、単純なテキストボックスを持つ重要なフォームです。 質問 パラメータ値にアクセスするにはどうすればよいですか? ビューから投稿するのではなく、投稿は外部から行われます。アクセスできるキー/値ペアのコレクションがあると想定しています。 試しRequest.Params.Get("simpleTextBox");たところ、「申し訳ありませんが、リクエストの処理中にエラーが発生しました。」というエラーが返されました。

7
DataAnnotation検証属性のIntまたはNumber DataType
私のMVC3プロジェクトでは、サッカー/サッカー/ホッケー/ ...スポーツゲームのスコア予測を保存します。したがって、私の予測クラスのプロパティの1つは次のようになります。 [Range(0, 15, ErrorMessage = "Can only be between 0 .. 15")] [StringLength(2, ErrorMessage = "Max 2 digits")] [Remote("PredictionOK", "Predict", ErrorMessage = "Prediction can only be a number in range 0 .. 15")] public int? HomeTeamPrediction { get; set; } ここで、データ型のエラーメッセージも変更する必要がありますint。いくつかのデフォルトが使用されています-「フィールドHomeTeamPredictionは数値でなければなりません。」このエラーメッセージを変更する方法を見つける必要があります。この検証メッセージは、リモート検証1の予測も取るようです。 私は[DataType]属性を試しましたが、これはsystem.componentmodel.dataannotations.datatype列挙では明白な数ではないようです。

6
ASP.NET MVC:DataAnnotationによるカスタム検証
文字列型の4つのプロパティを持つモデルがあります。StringLengthアノテーションを使用して、単一のプロパティの長さを検証できることを知っています。ただし、4つのプロパティを組み合わせた長さを検証したいと思います。 データアノテーションでこれを行うMVCの方法は何ですか? 私はMVCが初めてで、自分のソリューションを作成する前に正しい方法でそれを実行したいので、これを求めています。

3
HtmlStringとMvcHtmlStringの比較
HtmlString 対 MvcHtmlString これらの2つの間の違いは何ですか、またはどちらを優先するか 編集: より優先MvcHtmlStringすることの1つHtmlStringは、の拡張メソッドIsNullOrEmptyですMvcHtmlString。

4
asp.net mvcの最小値/最大値バリデーター
asp.net mvcの属性を使用した検証は本当に素晴らしいです。[Range(min, max)]これまで、値をチェックするためにバリデーターを使用してきました。例えば: [Range(1, 10)] public int SomeNumber { get; set; } ただし、ここで最小と最大の状態を個別に確認する必要があります。私はこれらのような属性を見つけることを期待していました: [MinValue(1, "Value must be at least 1")] [MaxValue(10, "Value can't be more than 10")] public int SomeNumber { get; set; } これを書くための定義済みの属性はありますか?またはどうすればこれを達成できますか?

8
MVC Razor動的モデル、「オブジェクト」には「PropertyName」の定義が含まれていません
RazorビューエンジンでMVC 3を使用します。私はこのビューを持っています: @model dynamic @{ var products = (List<ListItemBaseModel>)Model.Products; var threshold = (int)(Model.Threshold ?? 1); var id = Guid.NewGuid().ToString(); } 次のコードを使用して別のビューから呼び出されます。 @Html.Partial("PartialViewName", new { Products = Model, Threshold = 5 }) 両方のビューで、デバッグしてモデルを見ると、正しいオブジェクトが含まれているようです。コードを実行すると、 "var products ="行に次のエラーが表示されます。 「オブジェクト」には「製品」の定義が含まれていません なぜ私はそのエラーが発生するのですか?繰り返しますが、デバッグモードでモデルオブジェクトを見ると、問題はありません(製品としきい値の2つのプロパティがあります)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.