問題タブ [asp.net-mvc-5.1]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - MVC 5 - 複数のエントリ ポイント?
VS 2013 の標準 Mvc Web アプリケーション テンプレートには、次のものがあります。
Startup.cs で:
また、Global.asax.cs:
実行の順序と、それが保証されているかどうかを教えてください。
asp.net-mvc-5.1 - スティマルソフト MVC 5
using ディレクティブは Stimulsoft アセンブリを見つけることができませんでした。
Embed Interop Types 属性を true に設定すると、アセンブリが見つかりますが、コンパイル時に次のエラーが発生します。
以下のアセンブリを参照しました。
- Stimulsoft.Base
- Stimulsoft.Report
- Stimulsoft.Report.Mvc
参照がありませんか?
MVC5.1を使用しています
よろしく
c# - ハッシュ URL が変換されない
ルートをリダイレクトしようとしていますが、「#」が「%23」に変換される理由がわかりません
この URL ハッシュが変換されない方法はありますか? 助けて。ここに私のコードがあります
%23情報
ef-code-first - EF6 と ID プロバイダーを使用して列データを安全に保存する
一部の情報をデータベースに暗号化して保存する必要があります (ハッシュ化されていません。ここではパスワードについては説明していません) が、特定のシナリオを検証するためにその情報をメモリ内で読み取ることができます (したがって、ハッシュ化ではなく暗号化が必要です)。
将来変更される可能性があるため、どの列を暗号化してデータベースに格納する必要があるかを簡単に特定できる方法が必要です。そうは言っても、次のアプローチが、MVC5 および Entity Framework 6 の IdentityProvider によって提供される ApplicationDbContext で機能するかどうか疑問に思っていました。注意すべき注意事項はありますか? それとも、これはアイデアへの良いアプローチですか?そうでない場合は、ガイダンスをいただければ幸いです。
- 列を定義する (コード ファースト) ために、Code-First モデルのさまざまなプロパティに適用できる "StoreSecurelyAttribute" という属性を作成しました。
- 次に、この属性を安全に格納する必要がある任意の列に適用できます (現在サポートされているのは文字列のみです)。
- 次に、ApplicationDbContext コンストラクターに以下を追加します。
更新:これは多くのリフレクションであり、遅くなる可能性があることはわかっていますが、フィールドの暗号化と復号化に夢中になることはなく、暗号化するフィールドは「すべてのリクエストで」ヒットするわけではありません.
c# - テスト フレームワークは、エンティティに組み込みエンティティのキーが定義されていないことを示しています
EntityFramework バージョン 6.1、AspNet.Identity.Core バージョン 2.0、AspNet.Identity.EntityFramework バージョン 2.0 を使用する MVC 5.1 プロジェクトのテストをセットアップしようとしています。私の唯一のテストケースは非常に単純で、実行しようとするとすぐに「IdentityUserLogin」およびエンティティタイプ「IdentityUserRole」に対して上記のエラーが発生します。問題は、私が理解している限り、これらのエンティティの両方にキーが定義されていることです! それらはフレームワークによって提供されるため。コードの最初の部分でそれらの説明を明示的に見ることはできませんが、データベースでは両方にキーがあることがわかります。
私のテスト プロジェクトでは、Microsoft.VisualStudio.TestTools.UnitTesting と Moq (および EF & Identity Core ライブラリ) を使用しています。
ヘルプやリソースを指しているだけでも大歓迎です。同様のエラーが発生した人は見つかりませんでした。
asp.net - Html.EnumDropDownListFor が選択されたプロパティ値を表示しない
MVC 5.1 で新しいHtml.EnumDropDownListFor
拡張メソッドを使用すると、コントローラー アクションに渡すルート属性に基づいて、選択した値がドロップダウンで更新されないという問題が発生します。
意見
コントローラ アクション
オプションの属性なしでルートに移動しModel.Environment
、コントローラー アクションでプロパティを静的な値に設定すると、選択した値は問題なく表示されます。
有効なルート属性値を渡し、それをModel.Environment
プロパティに割り当てた場合、レンダリング時にドロップダウンがプロパティ値に更新されません。プロパティにデフォルトの列挙値以外の値があることを確認したにもかかわらずです。 .
asp.net - OWIN は翌日に認証 Cookie を拒否します
OWIN を使用するためのスタートアップ構成が生成された ASP.NET MVC5 アプリケーションがあります。
ユーザーは私のアプリケーションにログインし、ブラウザーを開いたままにしますが、翌日アクセスしようとすると、アプリケーションはユーザーをログインページにリダイレクトします。
この問題は開発者のマシンでは再現できません。現在の共有ホスティング プロバイダーでのみ発生します。実際、以前のプロバイダーでは正しく機能していました。
アプリケーション プールはときどき再起動されますが、私の経験によると、手動でリサイクルを行っても、トークンが無効になることはありません (私の知る限り、これは予想される動作です)。
スライド有効期限を明示的に設定し、Cookie の有効性を高めようとしましたが、効果はありませんでした。
.NET Framework 4.5 を使用しています。すべての NuGet パッケージを最新のものに更新しようとしましたが、問題は解決しませんでした。
送信された Cookie の有効期限を確認しましたが、正しいので問題ありません。さまざまなブラウザで発生します。
c# - ASP.NET MVC5 Web アプリでユーザー アカウントにクレームを追加する適切な方法
次の関連プロパティを持つ ASP.NET MVC5 Web アプリに取り組んでいます。
- MVC5.1、Identity 2.0 を使用し、従来のものに限定されず、最新のものをすべて使用できます。
- ユーザーは少なくとも 1 つの組織に属しています。
- 各組織には、組織管理者であるユーザーが少なくとも 1 人います。
- 組織管理者は、別の組織管理者になるなど、ユーザー固有の権限を許可できます。
- 私が理解していることから、これを処理する良い方法は、クレームを使用することです。
既定のクレームに加えて、ユーザーは通常、次のクレームを持つことができます。
組織: {いくつかの GUID} 組織管理者: {上記と同じ GUID} 組織発行者: {再び同じ GUID}
スーパー管理者やスーパーユーザーが存在する可能性があり、複数の組織のさまざまな役割へのアクセス権を主張している可能性があります。
ここで、管理パネルにログオンしているユーザーであり、Organization-Admin クレームを持っている組織の Organization-Publisher クレームをadmin
ユーザーに付与したいとします。user
簡単にするために、次のようなモデル オブジェクトがあります。
この例では、admin
ユーザーから次の値を取得します。
admin
OrganizationId: Organization-Admin クレームを持つ組織の GUID 。- ユーザーID:
user
- 右: 組織 - 発行者
このやり方について私を回避してきたことがたくさんあります。GrantRight アクションを持つ OrgAdmin コントローラーがあるとします。
コントローラー アクションは、現在ログインしているユーザー (たとえば ClaimsPrincipal.Current を使用して検出) が GrantRightModel.OrganizationId の Organizaton-Admin クレームを「手動で」持っていることを確認する必要がありますか?
Organization-Publisher: {guid} クレームを に追加するコードの正しい方法は何
user
ですか? 私のコントローラーは、依存性注入によって必要に応じて UserManager を取得します。これ
user
が発生したときにアプリケーションにサインインしている場合、次の要求から自動的に正しいクレームを取得する方法はありますか? ユーザーをログアウトさせて、再度ログインし、新しいクレームで新しいセッションを開始する方法について言及したことがあります。その理由はわかりますが、ユーザーが長時間かかる作業をしている可能性があることを考えると、作業を送信しようとしたときにログアウトさせるのは一般的ではないかもしれません。
これについてはウェブ上に少しの情報がありますが、私の google-fu は、これらの 3 つのポイントを打ち負かす方法を示すものを見つけることができませんでした。
誰?
ありがとう!