問題タブ [attributerouting]

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.

0 投票する
1 に答える
976 参照

c# - ASP.NETMVCアプリケーションでこの領域を設定する方法

ASP.NETMVCアプリケーションでエリアルートを設定しようとしています。

また、通常のMVCレジスター領域のルートではなく、nugetパッケージのAttributeRoutingを使用しています。

私の理解では、エリアルートは次のようになります。/area/controller/method

私がやろうとしていることは:-/api/search/index

つまり:

  • エリア=>API
  • コントローラー=>SearchController
  • ActionMethod=>インデックス

しかし、それはそのルートを作成しません。これはそれが作成するものです:/api/index コントローラーsearchがありません。

ドキュメントを見て気づいたRoutePrefixので、これを試してみました。

そしてそれは実際にルートを作成します/api/search/index

しかし、なぜ私RoutePrefixはそこに入れる必要があるのですか?SearchControllerこれがaであることをすでに理解し、3セグメントルートを作成するのに十分賢いのではないでしょうか。

0 投票する
1 に答える
4716 参照

asp.net-web-api - LINQPad で WebAPI を使用していますか?

LINQPad で Selfhosted WebAPI を使用しようとすると、クラスのコントローラーが存在しないという同じエラーが発生し続けました。

WebAPI (コントローラー/クラス) 用に個別のアセンブリを作成し、クエリでそれらを参照する必要がありますか?

これが私が使用しているコードです

このコードは、VS2012 の別のコンソール プロジェクトで正常に動作します。

「通常の」WebAPIルーティングが機能しなかったときに、NuGET経由でAttributeRoutingを使い始めました。

ブラウザに表示されたエラーは次のとおりです。No HTTP resource was found that matches the request URI 'http://192.168.0.196:8181/players/allPlayers'.

追加エラー:No type was found that matches the controller named 'PlayerObject'

0 投票する
3 に答える
1692 参照

asp.net-mvc - ビュー内からルート名を取得しますか?

属性ルーティングを使用して、ルート名を定義できます。ビュー内から使用されたルートの名前を取得する方法はありますか?

0 投票する
1 に答える
770 参照

asp.net-web-api - WebAPIURL一致の問題

WebプロジェクトにAttributeRoutingとWebApiを実装しました。そして、私はアクションのようhttp://localhost/apis/test?adminId=yyyなURLをルーティングしようとします。GetSomeInfoしかし、私はいくつかの問題に遭遇します。URLhttp://localhost/apis/testhttp://localhost/apis/test?adminId=yyy両方がアクションにルーティングされGetEntityます。パラメータを認識していないようですadminId。URLにパラメータがないと思いました。GetEntityしたがって、アクションに進むことがわかります。誰か助けてもらえますか?ありがとう。

私がこれまでにやったことは以下のようになります、それは動作しません。

編集済み

のルートマップコードglobal.asaxは以下のとおりです。そして、URLをアクションhttp://localhost/api/Sample?adminId=2BD48CF9-95EB-48D2-A1B2-1AFA273E586Dにルーティングできることがわかりました。パラメータのないGetSomeInfoURLはにルーティングされます。それはまさに私が欲しいものです。私の質問は、なぜとが機能しないのですか?http://localhost/api/SampleGetEntityRoutePrefixFromUri

0 投票する
1 に答える
2158 参照

asp.net-mvc - POST属性(AttributeRouting)でマークされたMVC4アクションメソッドにjson文字列を渡す

ルート権限を取得しやすくするために、AttributeRoutingライブラリを使用しています。POST属性でマークされたメソッドがあり、次のように文字列パラメーターを取得します。

Fiddlerを使用して、次のヘッダーとリクエスト本文を使用してPOSTリクエストをシミュレートします。

ヘッダー:

リクエスト本文:

リクエストを追跡すると、それdataがnullであることがわかります。私はどこでポイントを逃しますか?

0 投票する
1 に答える
834 参照

asp.net-mvc - AttributeRoutingを使用して/Checkemail非同期メソッドにルートを追加するにはどうすればよいですか?

追加:

AttributeRoutingへの変換に失敗したプロジェクトをダウンロードします。
ホームページのメッセージが「新着メールなし」の間で変わると、プロジェクトは正しく実行されます。と「あなたはメールを持っています!」。現在のエラー状態では、そのメッセージは変更されません。
javascriptコンソールのエラーが表示されます。
ブラウザで/Checkemailに直接移動すると、404エラーが発生します。

元の投稿:

これは、 AttributeRouting(最新のv3.4.1を使用)に関する質問です。

私はGET[""]次のコードにフックしようとしています。

[GET("")]404が表示されます-リソースが見つかりません。
[GET("CheckEmail")]私は405を取得します-メソッドは許可されていません。

このプロジェクトをAttributeRouting:ソースコードに変換しようとしています。checkemailアクションは、私が失敗しているところです。

このメソッドは、「 ajaxロングポーリング」手法の一部としての非同期メソッドです。

私の悲惨な試みについてコメントした次のことがあります:

Global.asax.cs-私のすべてのARプロジェクトについて

ありがとうございました

0 投票する
0 に答える
320 参照

asp.net-mvc - 属性ルーティングを使用した ASP.NET MVC アプリケーションのルーティング

ASP.NET MVC 4 アプリケーションの AttributeRouting を使用してそのルートを管理する作業を開始しましたが、これは優れたライブラリであると言わざるを得ません。ローカライズされたルートを非常に簡単に作成できるローカリゼーション機能に非常に感銘を受けました。2 つの質問があります。

  1. 私のアプリケーションは、20 以上の多数の言語をサポートします。ローカライズされた値が 30 ほどある可能性があります。そのような数値でパフォーマンスに問題はありますか?
  2. ルートがコントローラー アクションに解決されると、この時点で言語をナビゲートしてスレッド カルチャを設定できますか? これに伴い、ルートがコントローラーのアクションに解決された時点で、何らかのカスタマイズを行いたいと考えています (同じ時点でスレッド カルチャが設定されています)。これは可能ですか?
0 投票する
1 に答える
373 参照

asp.net-mvc - 属性ルーティングを使用して特定の言語で URL を生成する

mvc4 の属性ルーティングに取り組んでおり、非常に満足しています。

質問があります。私のサイトは 2 つの言語をサポートしており、すべての URL をローカライズしました。サポートされている言語はフランス語と英語です。

サイトが英語の場合、フランス語に切り替えるリンクを表示したいと思います。逆もまた同様です。

属性ルーティングを使用して、特定のカルチャ/言語の URL を生成する方法はありますか? 現在、サイトが英語の場合、すべての URL は英語にローカライズされています。この 1 つのリンクをフランス語で生成できるかどうか疑問に思っています。

0 投票する
1 に答える
951 参照

asp.net-mvc-4 - MVC4がエリア固有のViews/Shared / DisplayTemplatesフォルダーを検索しないのはなぜですか?

一部のコードをMVC3プロジェクトからMVC4プロジェクトに移動しようとすると、この問題が発生します。DisplayTemplates次のように、エリア内にいくつかあります。

には、に強く型付けされMyHomeControllerたビューを返すアクションがあります。MyHomeViewModelにはプロパティが含まれています。'MyHome.cshtml'ファイル内には、次のものがあります。MyHome.cshtmlMyHomeViewModelIEnumerable<MyEmailAddress>

ただし、これはMyEmailAddress.cshtmlテンプレートをレンダリングしていません。次の両方で同じ結果:

ただし、MyEmailAddress.cshtmlファイルをルートWebプロジェクトのViews/Shared/DisplayTemplatesフォルダーに移動すると、このテンプレートを使用してレンダリングされます。

何らかの理由で、DisplayFor HtmlHelperは、エリア固有のViews / Shared / DisplayTemplatesフォルダーを検索していないか、そのフォルダー内で他の何かを検索しています。

私は何が間違っているのですか?これはMVC3で機能しますが、MVC4プロジェクトでは正しく理解できないようです。

0 投票する
1 に答える
364 参照

asp.net-mvc - 属性ルーティングでの異常な動作

私は属性ルーティングを使用していますが、優れていると思います。特に、多くの異なる文化で自分のルートをローカライズできるという事実.

不規則に発生する問題に遭遇しました。それは時々発生し、他では発生せず、パターンを見つけることができません。

私が持っているアクションメソッドは次のとおりです。

私のコントローラーには次の装飾が施されています

そして問題は、属性のレンダリングが正しいURLを生成することがあることです。 https://localhost/product/22,33,999/cat2/cat3/product-nameしかし、ほとんどの場合、以下が生成されます:https://localhost/product/999/?productSlug=product-name&category2Slug=cat2&category3Slug=cat3&category2Id=22&category3Id=33

なぜこれが発生しているのか、そしてコントローラーのアクションパラメーターがURLの一部ではなくクエリ文字列パラメーターとして追加されているという考えはありますか?

私は、属性ルーティングのバージョンが 3.4.2.0 の C# で開発された mvc4 アプリケーションに取り組んでいます。

何か案は?