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

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

5
オブジェクトごとに特定のリポジトリではなく、一般的なリポジトリを作成する利点は何ですか?
ASP.NET MVCアプリケーションを開発しており、現在、リポジトリ/サービスクラスを構築しています。すべてのリポジトリが実装する汎用のIRepositoryインターフェイスを作成することには、各リポジトリが独自のインターフェイスとメソッドのセットを持っているのに対して、大きな利点があるのか​​と思います。 たとえば、汎用のIRepositoryインターフェイスは次のようになります(この回答から取得)。 public interface IRepository : IDisposable { T[] GetAll<T>(); T[] GetAll<T>(Expression<Func<T, bool>> filter); T GetSingle<T>(Expression<Func<T, bool>> filter); T GetSingle<T>(Expression<Func<T, bool>> filter, List<Expression<Func<T, object>>> subSelectors); void Delete<T>(T entity); void Add<T>(T entity); int SaveChanges(); DbTransaction BeginTransaction(); } 各リポジトリはこのインターフェースを実装します、例えば: CustomerRepository:IRepository ProductRepository:IRepository 等 以前のプロジェクトで従った代替案は次のとおりです。 public interface IInvoiceRepository : IDisposable { EntityCollection<InvoiceEntity> GetAllInvoices(int …

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ヘルパーは何らかの方法で値をキャッシュしていますか?もしそうなら、どうすればこのキャッシングを無効にできますか? ご協力いただきありがとうございます。

10
不正な日付形式のMVC DateTimeバインディング
Asp.net-MVCでは、DateTimeオブジェクトの暗黙的なバインディングが可能になりました。私は次のように行動します public ActionResult DoSomething(DateTime startDate) { ... } これは、ajax呼び出しからの文字列をDateTimeに正常に変換します。ただし、日付形式はdd / MM / yyyyを使用しています。MVCはMM / dd / yyyyに変換しています。たとえば、文字列「09/02/2009」を含むアクションの呼び出しを送信すると、DateTimeは「02/09/2009 00:00:00」、またはローカル設定では9月2日になります。 日付形式のために自分のモデルバインダーをロールバックしたくありません。しかし、MVCがこれを行うことができる場合は、文字列を受け入れるようにアクションを変更してからDateTime.Parseを使用する必要がないようです。 DateTimeのデフォルトモデルバインダーで使用される日付形式を変更する方法はありますか?とにかく、デフォルトのモデルバインダーがローカリゼーション設定を使用するべきではありませんか?

4
ASP.NET MVC:@sectionの目的は何ですか?[閉まっている]
ここで何が尋ねられているのかを知るのは難しい。この質問は、あいまいで、あいまいで、不完全で、過度に広い、または修辞的であり、現在の形では合理的に回答することができません。再開できるようにこの質問を明確にするヘルプについては、ヘルプセンターに アクセスしてください。 7年前休業。 ASP.NET MVCアプリケーションについては、このブログ記事を参照しました。著者ScottGuが@sectionIndex.cshtmlに追加します。 いくつか質問があります(上記の記事を参照): Index.cshtmlは共有ビューですか? コード例@sectionでは、特定のビューのコードを使用しています。どうして? @sectionビューで使用する理由と時期を誰かが説明できますか?
132 asp.net-mvc 

5
どのようにPOST動詞を使用してページにリダイレクトしますか?
RedirectToActionコントローラ内で呼び出すと、HTTP GETを使用して自動的にリダイレクトされます。HTTP POSTを使用するように明示的に指示するにはどうすればよいですか? GETリクエストとPOSTリクエストの両方を受け入れるアクションがあり、POSTをRedirectToAction使用していくつかの値を送信できるようにしたいと考えています。 このような: this.RedirectToAction( "actionname", new RouteValueDictionary(new { someValue = 2, anotherValue = "text" }) ); someValueとのanotherValue値を、GETではなくHTTP POSTを使用して送信したい。誰でもこれを行う方法を知っていますか?

5
コントローラー.NET MVCでURLを作成する
メールを送信するには、コントローラーのアクションにリンクを作成できる必要があります。これを行うためのベストプラクティスは何ですか?ルートが変わった場合に備えて、自分で構築したくありません。 メールごとにビューを用意してレンダリングして送信する必要がありますか?それはそれを行う良い方法かもしれません。

6
ASP.NET MVCアプリケーションでデバッグ用の起動ページをどのように設定しますか?
アプリケーションルートでアプリケーションのデバッグをどのように開始しますか?例:http:// localhost:49742 / 私は常に次のような存在しないページを取得しています: http:// localhost:49742 / Views / Home / About.aspx http:// localhost:49742 / Views / Home / Aboutから始めても問題ないことに注意してください。
131 asp.net-mvc 


6
User.Identityの使用可能なプロパティを拡張する方法
ユーザーが私のWebサイトにログインするためにMVC5 Identity 2.0を使用しています。認証の詳細はSQLデータベースに保存されています。Asp.net Identityは、多くのオンラインチュートリアルで見られるように、標準的な方法で実装されています。 IdentityModelsのApplicationUserクラスが拡張され、整数のOrganizationIdなどのカスタムプロパティが含まれるようになりました。多くのユーザーを作成して、データベース関係の目的で共通の組織に割り当てることができます。 public class ApplicationUser : IdentityUser { public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager) { // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie); // Add custom user claims here return userIdentity; } //Extended Properties public DateTime? BirthDate { get; …

5
CheckBoxForが追加の入力タグをレンダリングするのはなぜですか?また、FormCollectionを使用して値を取得するにはどうすればよいですか?
私のASP.NET MVCアプリでは、次のコードを使用してチェックボックスをレンダリングしています。 <%= Html.CheckBoxFor(i=>i.ReceiveRSVPNotifications) %> これで、チェックボックスの入力タグと非表示の入力タグの両方がレンダリングされることがわかります。私が抱えている問題は、FormCollectionを使用してチェックボックスから値を取得しようとするときです。 FormValues["ReceiveRSVPNotifications"] 「true、false」という値を取得します。レンダリングされたHTMLを見ると、次のことがわかります。 <input id="ReceiveRSVPNotifications" name="ReceiveRSVPNotifications" value="true" type="checkbox"> <input name="ReceiveRSVPNotifications" value="false" type="hidden"> したがって、FormValuesコレクションは同じ名前を持つため、これら2つの値を結合するように見えます。 何か案は?

14
ASP.NET MVCのEditorFor()のHTML属性
なぜHTML属性をに渡せないのEditorFor()ですか?例えば; <%= Html.EditorFor(model => model.Control.PeriodType, new { disabled = "disabled", readonly = "readonly" }) %> メタデータを使いたくない 更新:解決策はビューからこれを呼び出すことでした: <%=Html.EditorFor( model => model.Control.PeriodEndDate, new {Modifiable=model.Control.PeriodEndDateModifiable})%> そしてViewData["Modifiable"]、カスタムのEditorTemplates / String.ascxで使用します。入力に読み取り専用属性または無効属性を追加するかどうかを決定するビューロジックがあります。渡される匿名オブジェクトはEditorFor()呼び出されるパラメーターでadditionalViewDataあり、そのプロパティはエディターテンプレートに渡されます。ViewDataコレクション。

12
ASP.NET MVC条件付き検証
データ注釈を使用してモデルの条件付き検証を行う方法は? たとえば、次のモデル(PersonとSenior)があるとします。 public class Person { [Required(ErrorMessage = "*")] public string Name { get; set; } public bool IsSenior { get; set; } public Senior Senior { get; set; } } public class Senior { [Required(ErrorMessage = "*")]//this should be conditional validation, based on the "IsSenior" value public string Description …

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 …

6
別のコントローラーからインデックスにリダイレクトする方法は?
Index別のコントローラーからビューにリダイレクトする方法を見つけるために、ずっと探してきました。 public ActionResult Index() { ApplicationController viewModel = new ApplicationController(); return RedirectToAction("Index", viewModel); } これは私が今試したものです。今私に与えられたコードにはActionLink、必要なページへのリンクも含まれていますRedirect。 @Html.ActionLink("Bally Applications","../Application")
129 c#  asp.net-mvc 

18
値をnullにすることはできません。パラメータ名:ソース
これはおそらく私が長い間解決に時間を費やしてきた時間の最大の無駄の問題です。 var db = new hublisherEntities(); establishment_brands est = new establishment_brands(); est.brand_id = 1; est.establishment_id = 1; est.price = collection["price"]; est.size = collection["size"]; db.establishment_brands.Add(est); db.SaveChanges(); これは私にエラーを与えます 値をnullにすることはできません。パラメータ名:ソース のスタックトレース [ArgumentNullException:値をnullにすることはできません。パラメーター名:ソース] System.Linq.Enumerable.Any(IEnumerable 1 source, Func2述語)+4083335 System.Data.Entity.Internal.InternalContext.WrapUpdateException(UpdateException updateException)+87 System.Data.Entity.Internal.InternalContext.SaveChanges()+ 193 System.Data.Entity.Internal.LazyInternalContext.SaveChanges() + 33 System.Data.Entity.DbContext.SaveChanges()+20 ... ... テーブルにエンティティを追加したいだけです。ORMはEFです。

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