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

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

1
Razorで「Html.BeginForm」を書く方法
このように書いた場合: form action = "Images" method = "post" enctype = "multipart / form-data" できます。 しかし、「@」が付いたRazorでは機能しません。私は間違いをしましたか? @using (Html.BeginForm("Upload", "Upload", FormMethod.Post, new { enctype = "multipart/form-data" })) { @Html.ValidationSummary(true) <fieldset> Select a file <input type="file" name="file" /> <input type="submit" value="Upload" /> </fieldset> } 私のコントローラーは次のようになります: [AcceptVerbs(HttpVerbs.Post)] public ActionResult Upload() { foreach (string file …

4
間違った値のASP.Net MVC Html.HiddenFor
プロジェクトでMVC 3を使用していますが、非常に奇妙な動作が見られます。 モデルの特定の値の非表示フィールドを作成しようとしていますが、問題は、何らかの理由でフィールドに設定された値がモデルの値に対応していないことです。 例えば テストとして、私はこのコードを持っています: <%:Html.Hidden("Step2", Model.Step) %> <%:Html.HiddenFor(m => m.Step) %> 両方の隠しフィールドは同じ値になると思います。まず、ビューを表示するときに値を1に設定し、送信後に[モデル]フィールドの値を1増やします。 したがって、最初にページをレンダリングするとき、両方のコントロールの値は1ですが、2回目にレンダリングされる値は次のとおりです。 <input id="Step2" name="Step2" type="hidden" value="2" /> <input id="Step" name="Step" type="hidden" value="1" /> ご覧のとおり、最初の値は正しいですが、2番目の値は、最初にビューを表示したときと同じように見えます。 何が欠けていますか?* For Htmlヘルパーは何らかの方法で値をキャッシュしていますか?もしそうなら、どうすればこのキャッシングを無効にできますか? ご協力いただきありがとうございます。

6
MVC3 Razor:コードブロック内にHTMLを表示する
私のcshtmlファイルには、次のようなブロックがたくさんあります。 @if(Model.foo) { <span>Hello World</span> } スパンがある唯一の理由は、「Hello World」がhtmlタグで囲まれていない限り、「Hello World」がhtmlの一部であることを強制的に認識させる他の方法が見つからないためです。意味のないタグをディスプレイに追加することを含まないコードをエスケープする良い方法はありますか?

3
ASP.NET MVC ViewModelでknockout.jsを使用する方法
バウンティ 久しぶりですが、未だにいくつかの未解決の質問があります。バウンティを追加することで、これらの質問に答えられることを願っています。 knockout.jsでHTMLヘルパーをどのように使用しますか 機能させるためにドキュメントの準備が必要だった理由(詳細については、最初の編集を参照してください) ビューモデルでノックアウトマッピングを使用している場合、どのようにすればよいですか?マッピングのため機能が無いので。 function AppViewModel() { // ... leave firstName, lastName, and fullName unchanged here ... this.capitalizeLastName = function() { var currentVal = this.lastName(); // Read the current value this.lastName(currentVal.toUpperCase()); // Write back a modified value }; たとえば、ユーザーがリクエストをキャンセルした場合のように、オブザーバブルをロールバックできるようにしたいプラグインを使用したいのですが、最後の値に戻れるようにしたいのです。私の研究から、これは編集可能のようなプラグインを作っている人々によって達成されているようです マッピングを使用している場合、そのようなものをどのように使用しますか?私はビューマニュアルマッピングにあるメソッドに行きたくありません。インラインMJavaScriptをできるだけ少なくしたいので、各MVC viewModeフィールドをKOモデルフィールドにマップしました。なぜそのマッピングが好きなのか。 この作業を(マッピングを使用して)簡単に行うと、KOの能力が大幅に失われるのではないかと心配していますが、一方で、手動マッピングは多くの作業であり、ビューに多くの情報が含まれ、将来的には維持が難しくなる可能性があります(たとえば、MVCモデルのプロパティを削除した場合、KOビューモデルでも移動する必要があります) 元の投稿 私はasp.net mvc 3を使用していて、かなりクールに見えるのでノックアウトを調べていますが、asp.net mvc、特にビューモデルでどのように機能するかを理解するのに苦労しています。 今私はこのようなことをしています public …

2
Razorビューでコメントを書く方法は?
MVCビューでコメントを書き込む方法。コメントは最終的なHTMLに送信されません(つまり、ブラウザー、応答)。次のようにしてコメントを付けることができます: <!--<a href="https://stackoverflow.com/">My comment</a> --> ただし、ブラウザのページソースコードに表示されます。 「.cshtml」ファイルにコメントを残して、内部で使用することはできますか?

6
EFコードファースト:nugetパッケージコンソールから「EntityValidationErrors」プロパティを表示するにはどうすればよいですか?
私はこれで途方に暮れています: エンティティフレームワーク(4.1.3)のコードを最初に使用するためのクラスを定義しました。シードを始めるまでは、すべてが順調でした(テーブルを作成していたなど)。 今私が行うとき Add-Migration "remigrate" ; Update-Database; パッケージコンソールで「1つ以上のエンティティの検証に失敗しました。詳細については、「EntityValidationErrors」プロパティを参照してください。」というエラーが表示されます。 Seed()メソッドにブレークポイントがありますが、プロジェクトが実行されていないときにコンソールでこれを実行しているため、詳細に到達する方法については無知です(PS-スレッドの検証が失敗したことを確認しましたEntity Frameworkを使用してSQL Serverデータベースへの変更を保存している間に1つ以上のエンティティが表示され、プロパティの表示方法が示されます。) Seed()メソッドに問題があることは知っています。メソッド呼び出しの直後にreturnを置くと、エラーがなくなるためです。では、検証エラーを確認できるようにブレークポイントを設定するにはどうすればよいですか?ちょっと負けました。または、nugetコンソールでそれをトレースする他の方法はありますか?

7
現在のコントローラーを表示します
私はView - _Editに住んでいNews M/V/Cます。 私は、再利用V/Mを経由してCategoryControllerのように: return PartialView("/Views/News/_Edit.cshtml", model); どのようにしView - _Editてコントローラー名をアラートできますか? 私が: alert('@ViewContext. RouteData.Values["controller"].ToString()'); 値は次のとおりです。News ただし、URLは次のとおりです。/Category/foobar 'Category'警告する値を取得する方法はありますか?ありがとう

9
Windowsの更新によりMVC3およびMVC4が機能しなくなった
10月15日にWindows Update(8.1)をインストールしたのは私だけですか?この警告のためにMVCが突然停止しますか? 警告1この参照を解決できませんでした。アセンブリ "System.Web.Mvc、Version = 4.0.0.0、Culture = neutral、PublicKeyToken = 31bf3856ad364e35、processorArchitecture = MSIL"が見つかりませんでした。アセンブリがディスク上に存在することを確認してください。コードでこの参照が必要な場合、コンパイルエラーが発生する可能性があります。 このWindows Updateは、バージョン番号4.0.0.1の新しいバージョンのMVCをインストールし、プログラムファイルフォルダーから古いバージョンを削除するようです。 誰かが各プロジェクトをクロールせずにこれを修正する方法を知っていますか?

9
customerrors =“ On”の場合、Application_Errorが発生しない
エラーが発生したときに実行され、エラーの詳細を自分にメールで送信するコードがglobal.asaxファイルのApplication_Errorイベントにあります。 void Application_Error(object sender, EventArgs e) { var error = Server.GetLastError(); if (error.Message != "Not Found") { // Send email here... } } これをVisual Studioで実行すると問題Application_Errorなく動作しますが、ライブサーバーにパブリッシュするとイベントが発生しません。 いくつかのテストを行った後Application_Error、を設定すると発砲を取得できますが、customErrors="Off"設定を戻すとcustomErrors="On"、イベントが再び発動するのを停止します。 で有効になっているApplication_Errorときに誰もが発砲しない理由を誰かが示唆できますか?customErrorsweb.config

5
別のコントローラーのアクションにリダイレクトします
2つのコントローラーがあり、どちらもと呼ばれていAccountControllerます。そのうちの一つは、それを呼び出すことができますController Aしている、Areaと呼ばれAdmin、それを呼び出すことができますし、他のController Bいずれにもない、Area(私はそれがデフォルトでだという意味を推測しますArea?)。 Controller Bしているaction methodと呼ばれますLogin。私はこの行を持つaction methodin Controller Aを持っています return RedirectToAction("LogIn", "Account"); 問題は、に404存在actionしないものにリダイレクトしようとしたため、この行が実行されたときにを取得することController Aです。私は、呼び出したいaction methodではController B。これは可能ですか?

2
HttpPostedFileBaseをbyte []に​​変換します
私のMVCアプリケーションでは、次のコードを使用してファイルをアップロードしています。 モデル public HttpPostedFileBase File { get; set; } 見る @Html.TextBoxFor(m => m.File, new { type = "file" }) すべて正常に動作していますが、結果フィールドをbyte []に​​変換しようとしています。 コントローラ public ActionResult ManagePhotos(ManagePhotos model) { if (ModelState.IsValid) { byte[] image = model.File; //Its not working .How can convert this to byte array } }

9
メソッドが見つかりません: '!! 0 [] System.Array.Empty()'
VS 2015 RCとMVCテンプレートを使用して新しいアプリを作成しましたが、コード行を変更せずに次のエラーが発生しました。 Method not found: '!!0[] System.Array.Empty()'. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.MissingMethodException: Method not found: '!!0[] System.Array.Empty()'. Source Error: An …

9
Razor宣言型ビューからのMVC HtmlHelper拡張機能の使用
MVC 3 RTMプロジェクトのApp_CodeフォルダーにRazor宣言型ヘルパーを作成しようとしました。 私が遭遇した問題は、ActionLinkのようなMVC HtmlHelper拡張機能が利用できないことでした。これは、コンパイルされたヘルパーがから派生しているためSystem.Web.WebPages.HelperPageであり、それはHtmlプロパティでSystem.Web.WebPages.HtmlHelperはなく、タイプのプロパティを公開していますSystem.Web.Mvc.HtmlHelper。 私が得ていた種類のエラーの例は次のとおりです: 「System.Web.Mvc.HtmlHelper」には「ActionLink」の定義が含まれておらず、「System.Web.Mvc.HtmlHelper」タイプの最初の引数を受け入れる拡張メソッド「ActionLink」が見つかりませんでした(usingディレクティブがありません)またはアセンブリ参照?) 私の唯一の解決策は、独自のHelperPageを作成し、Htmlプロパティをオーバーライドすることです。 using System.Web.WebPages; public class HelperPage : System.Web.WebPages.HelperPage { // Workaround - exposes the MVC HtmlHelper instead of the normal helper public static new HtmlHelper Html { get { return ((System.Web.Mvc.WebViewPage) WebPageContext.Current.Page).Html; } } } 次に、すべてのヘルパーの上部に次のように記述する必要があります。 @inherits FunnelWeb.Web.App_Code.HelperPage @using System.Web.Mvc @using System.Web.Mvc.Html @helper …

4
[Authorize]を使用すると、リクエストが構成済みのmaxQueryStringLengthを超える
私はC#にMVC3サイトを持っています。JavaScript関数からクエリパラメータが供給されている特定のビューがあります。関数は、 window.location.href = "../ActionName?" + query_string; query_stringは、JavaScript関数によって作成された動的クエリパラメータ文字列です。 この奇妙さの理由は、reportviewerコントロールを使用する必要があるため、同じ関数がURLをASP.Net Webフォームに渡す場合があるためです。代わりのアクションは、この場合、ビューに渡される一部のパラメーターを保存することです。(それが意味をなさない場合は、さらに詳しく説明できます) アクションメソッドに[Authorize]を導入するまでは、すべてがうまくいきます。所定の位置にある場合は中断し、それがなくても正常に機能し、[Authorize]は他のすべての方法で正常に機能します。 この場合のURL全体は966文字です。調査後、maxQueryStringLengthの値はデフォルトで2048 であるように見えますが、整数型の任意の値にオーバーライドできるので、笑いのために <security> <requestFiltering> <requestLimits maxQueryString="2048"></requestLimits> </requestFiltering> </security> キーの下のWeb構成ファイルのキー。 そこには喜びがないので、私はとんでもないことになり、それを4096にしたが、それでも喜びはない。 URL全体が966文字であるため、authorize属性で真に1082〜3130文字を追加することはできません。そのため、実際にエラーが何であるか、または設定が有効にならない理由を判断するにはどうすればよいですか。 VS2010 Pro SP1

10
アクション画像MVC3 Razor
MVC3でRazorを使用してリンクを画像に置き換える最良の方法は何ですか。私は現時点でこれを単にしています: <a href="@Url.Action("Edit", new { id=MyId })"><img src="../../Content/Images/Image.bmp", alt="Edit" /></a> もっと良い方法はありますか?

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