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

ASP.NET MVCフレームワークは、Webアプリケーション向けに調整され、ASP.NETテクノロジーの基盤に基づいて構築されたモデルビューコントローラー(MVC)パターンのバージョンを実装するオープンソースのWebアプリケーションフレームワークおよびツールです。

6
ドロップダウンのトリガー変更イベント
jqueryを使用して$(document).readyのドロップダウンの変更イベントをトリガーしたいと思います。 ユーザーの詳細ページに国と州のカスケードドロップダウンがあります。C#を使用してMVCで国と州の値(ユーザーIDに基づいてDBから取得)を設定するにはどうすればよいですか?


1
FluentValidationを使用した条件付き検証
私が必要としているのは、他のフィールドが入力されているかどうかに応じて、フィールドを条件付きで検証する方法です。 例 関連するドロップダウンと日付フィールドがあります。どのフィールドも設定されていない場合、フォームは検証に合格する必要があります。ただし、2つのフィールドの一方が設定されていて、もう一方が設定されていない場合は、検証が実行され、もう一方のフィールドを設定する必要があります。 カスタム検証クラスを作成しましたが、単一のフィールドで検証されているようです。組み込みのバリデーターを使用して必要な検証を設定する方法はありますか?そうでない場合、カスタムバリデーターを使用して2つのフィールドを接続する良い方法はありますか?

5
URL内のダブルエスケープシーケンス:リクエストフィルタリングモジュールは、ダブルエスケープシーケンスを含むリクエストを拒否するように構成されています
ASP.NET MVCアプリケーションで、次のようなURLを実装しようとしています。 / product / tags / for + familys デフォルト構成でアプリケーションを実行しようとすると、404.11応答コードで次のメッセージが表示されます。 HTTPエラー404.11-見つかりません リクエストフィルタリングモジュールは、ダブルエスケープシーケンスを含むリクエストを拒否するように構成されています。 web.config内に以下のコードを実装することで、このエラーを回避できます。 <system.webServer> <security> <requestFiltering allowDoubleEscaping="true" /> </security> </system.webServer> だから、今私は何も得ていません404.11。 私が疑問に思っているのは、この実装でどのようなセキュリティホールを開いているのかということです。 ところで、私のアプリケーションはの下に.Net Framework 4.0あり、の下で実行されていIIS 7.5ます。



8
ASP.NetMVCアプリでカルチャを設定する
ASP.netMVCアプリでカルチャ/ UIカルチャを設定するのに最適な場所はどこですか 現在、次のようなCultureControllerクラスがあります。 public class CultureController : Controller { public ActionResult SetSpanishCulture() { HttpContext.Session["culture"] = "es-ES"; return RedirectToAction("Index", "Home"); } public ActionResult SetFrenchCulture() { HttpContext.Session["culture"] = "fr-FR"; return RedirectToAction("Index", "Home"); } } ホームページ上の各言語のハイパーリンクには、次のようなリンクがあります。 <li><%= Html.ActionLink("French", "SetFrenchCulture", "Culture")%></li> <li><%= Html.ActionLink("Spanish", "SetSpanishCulture", "Culture")%></li> これは問題なく動作しますが、これを行うにはもっと適切な方法があると思います。 次のActionFilterhttp : //www.iansuttle.com/blog/post/ASPNET-MVC-Action-Filter-for-Localized-Sites.aspxを使用してCultureを読んでい ます。私は少しMVCの初心者なので、これを正しい場所に設定しているとは確信していません。web.configレベルでは実行したくありません。ユーザーの選択に基づいている必要があります。また、ブラウザの設定からカルチャを取得するためにhttpヘッダーを確認したくありません。 編集: 明確にするために、私はセッションを使用するかどうかを決定しようとはしていません。私はそのビットに満足しています。私が解決しようとしているのは、各カルチャのアクションメソッドが設定されているカルチャコントローラでこれを行うのが最善かどうか、またはMVCパイプラインにこれ​​を行うためのより良い場所があるかどうかです。

21
データベースが作成されてから、「ApplicationDbContext」コンテキストをサポートするモデルが変更されました
まず第一に、私は他のどこでもこのエラーを見たことがなく、それは複製ではないと思うので、最初に全体の状況を読んでください。 すべてが正常に機能していたので、モデルクラスの1つを更新しようとしました(Appクラスで、更新はコメントのままになっています)。これを以下にリストします。そしてブーム私はこの醜いエラーがありました。 データベースが作成されてから、「ApplicationDbContext」コンテキストをサポートするモデルが変更されました。Code First Migrationsを使用してデータベースを更新することを検討してください(http://go.microsoft.com/fwlink/?LinkId=238269)。System.Data.Entity.CreateDatabaseIfNotExists 1.InitializeDatabase(TContext context) at System.Data.Entity.Internal.InternalContext.<>c__DisplayClassf1.b__e()at System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action)at System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization()atSystem.Data.Entity。 Internal.LazyInternalContext.b__4(InternalContext c)at System.Data.Entity.Internal.RetryAction 1.PerformAction(TInput input) at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(Action1 action)at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabase()at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)at System.Data.Entity.Internal.Linq.InternalSet1.Initialize() at System.Data.Entity.Internal.Linq.InternalSet1.Microsoft.AspNet.Identityの1.Include(String path) at System.Data.Entity.QueryableExtensions.Include[T](IQueryableSystem.Data.Entity.QueryableExtensions.Include [T、TProperty](IQueryable 1 source, Expression1パス)のSystem.Data.Entity.Infrastructure.DbQuery 1ソースのInclude(文字列パス)、文字列パス)。 EntityFramework.UserStore 6.GetUserAggregateAsync(ExpressionMicrosoft.AspNet.Identity.EntityFramework.UserStoreで1つのフィルタ)6.FindByNameAsync(String userName) at Microsoft.AspNet.Identity.UserManager前の位置からスタックトレースのMicrosoft.AspNet.Identity.UserManager`2.d__12.MoveNext()---終了時2.FindByNameAsync(文字列のuserName)ここで例外がスローされました--- System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(タスクタスク)at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(タスクタスク)at ControlPanel.Web.Controllers.AccountController.d__2.MoveNext()in d :\ Projects \ FULL \ Control Panel …

9
MVC、C#、jQueryを使用してCSVにエクスポートする
リストをCSVファイルにエクスポートしようとしています。応答ストリームにファイルに書き込みたいところまで、すべてが機能しました。これは何もしません。 これが私のコードです: ページからメソッドを呼び出します。 $('#btn_export').click(function () { $.post('NewsLetter/Export'); }); コントローラのコードは次のとおりです。 [HttpPost] public void Export() { try { var filter = Session[FilterSessionKey] != null ? Session[FilterSessionKey] as SubscriberFilter : new SubscriberFilter(); var predicate = _subscriberService.BuildPredicate(filter); var compiledPredicate = predicate.Compile(); var filterRecords = _subscriberService.GetSubscribersInGroup().Where(x => !x.IsDeleted).AsEnumerable().Where(compiledPredicate).GroupBy(s => s.Subscriber.EmailAddress).OrderBy(x => x.Key); ExportAsCSV(filterRecords); } catch …
85 c#  jquery  asp.net-mvc  csv 


2
非同期PartialViewにより、「HttpServerUtility.Executeblocked…」例外が発生します
IEnumerable<Post>非同期を使用してデータベースからを取得しようとする部分的なビューがあります... 方法 public static class PostService { public static int PostsPerPage = 50; public static async Task<IEnumerable<Post>> GetRecentAsync(int page = 0) { return await entityFrameworkDbContext.Posts .ToListAsync(); } } PartialView public async Task<ActionResult> Recent(int page = 0) { return PartialView(await PostService.GetRecentAsync(page)); } そして、私がそれを呼び出そうとすると @Html.Action("Recent", "Post") 次の例外が発生します 非同期操作が完了するのを待っている間、HttpServerUtility.Executeがブロックされました。 説明:現在のWebリクエストの実行中に未処理の例外が発生しました。エラーの詳細とコードの発生場所については、スタックトレースを確認してください。 例外の詳細:System.InvalidOperationException:HttpServerUtility.Executeは、非同期操作が完了するのを待っている間にブロックされました。 なぜこのエラーが発生するのですか?それはうまくいかないのですか?

4
MVCプロジェクトのviewsフォルダーでWeb.Configファイルは何をしますか
アプリケーションのデプロイで問題が発生しWeb.ConfigましたViews。トラブルシューティング中に、フォルダー内のファイルに遭遇しました。ソースの可能性を自分の問題に絞り込むために、その〜Web.Config`ファイルの目的を見つけようとしましたが、実際には多くの情報を見つけることができません。 つまり、基本的に私の質問は次のとおりです。 Web.configファイルはViewsMVCプロジェクトのフォルダーで何をしますか? 必要ですか? Asp.Net Webフォームでは、フォルダー内で別のweb.configファイルを使用するには、そのフォルダーをIISで仮想フォルダーとして設定する必要があると思います。これはMVCの場合ですか(つまり、Viewsフォルダーを仮想フォルダーとして構成する必要がありますか)?

8
ディレクトリの「401Unauthorized」
ローカルマシンでプロジェクトを実行した場合は発生しないため、これはIISエラーであると思います。 私は自分のスタイルシートを ~/Content/css そのディレクトリ内のファイルはページに読み込まれず、それらに直接移動すると、サーバーエラーが発生します。 401-無許可:資格情報が無効なため、アクセスが拒否されました。 指定した資格情報を使用してこのディレクトリまたはページを表示する権限がありません。 これはそのディレクトリでのみ発生します。他のファイルへのアクセスに問題はありません。これを止めるためにIIS7でやらなければならないことがありますか?


14
モックとユニットテストに必要なときにSqlExceptionをスローする方法は?
プロジェクトでいくつかの例外をテストしようとしていますが、キャッチした例外の1つはSQlExceptionです。 行くことができないようですnew SqlException()ので、特にデータベースを呼び出さずに例外をスローする方法がわかりません(これらは単体テストであるため、通常はデータベースを呼び出さないことをお勧めします)。 NUnitとMoqを使用していますが、これを偽造する方法がわかりません。 すべてADO.NETに基づいているように見えるいくつかの回答に応答して、Linq toSqlを使用していることに注意してください。そのため、舞台裏のようなものです。 @MattHamiltonからの要求に応じた詳細情報: System.ArgumentException : Type to mock must be an interface or an abstract or non-sealed class. at Moq.Mock`1.CheckParameters() at Moq.Mock`1..ctor(MockBehavior behavior, Object[] args) at Moq.Mock`1..ctor(MockBehavior behavior) at Moq.Mock`1..ctor() モックアップしようとすると最初の行に投稿します var ex = new Mock<System.Data.SqlClient.SqlException>(); ex.SetupGet(e => e.Message).Returns("Exception message");

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