問題タブ [tag-helpers]

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 投票する
2 に答える
10827 参照

c# - MVC 6では、ビューでチェックボックスリストをコーディングし、チェックされた値をコントローラーに渡す方法は?

申し訳ありませんが、ほとんどの検索で古い MVC コードが表示されます。どんな助けでも大歓迎です。

タグ ヘルパーを使用する MVC 6 では、一連のチェックボックスをどのようにコーディングしますか。

  • ラベルにタグヘルパーを使用して、クリックするとチェックされた値が切り替わるようにします
  • チェックした値を IsOptionSelected プロパティに保存 (バインドしますか?)
  • [送信] をクリックした後、これらのチェックされた値をコントローラーに渡します。

?

ラベル付きのチェックボックスを正しく表示できましたが、モデルを介してチェックされた値をコントローラーに戻す方法がわかりません。現在、IsOptionSelected の値は false として返されています。

また、ラベルの html ヘルパーを機能させることができましたが、タグ ヘルパーは機能しませんでした。また、これらすべてを間違ってコーディングしている可能性があるため、ヒントが役立ちます。

これが私がこれまでに持っているものです:

画面:

電話オプションのチェックボックス

実在物:

モデル:

リポジトリ:

意見:

前もって感謝します!

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

asp.net-core - Mvc 6 taghelper asp-action ルートが機能しない

Mvc 6 で Areas を使用しており、特定の各エリアにルーティングしようとしています。たとえば、私はこれを持っています:

私のコントローラーの外観は、次のように Area および route 属性で装飾されています。

次に、以下のように定義された 2 つの HTTPGET メソッドがあります。

最後に、私のフォームは次のようになります。

フォームを投稿しようとすると、次のようにスローされます。

AmbiguousActionException: 複数のアクションが一致しました。次のアクションは、ルート データと一致し、すべての制約が満たされていました。

Areas.Test.Controllers.TestController.Index

Areas.Test.Controllers.TestController.Create

asp-action で定義すると Create メソッドにバインドされると思われるかもしれませんが、フォームのレンダリングされたマークアップを確認すると、次のようになります。

私のメソッド Create は処理されません。テスト/テスト (エリア/コントローラー) のみをレンダリングします。

[Route("Create")]また、結果の有無にかかわらずメソッドを装飾しようとしました[HttpGet("Create")]

ここで明らかなことを見逃していますか?

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

asp.net-core-mvc - MVC 6 TagHelper クラスからセッションやその他の Web コンテキストにアクセスするにはどうすればよいですか?

コントローラー/アクションメソッドを呼び出すか、少なくともセッション変数を利用する独自のヘルパーメソッドを呼び出す必要があります。TagHelper の Process メソッド内からこれを行うにはどうすればよいですか

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

asp.net-core - 2 つのパラメーターを使用した MVC6 属性ルーティング

私はこれを調べましたが、複数のパラメーターに対応する代替の [HttpGet] メソッドを持つことに関連して、MVC6 taghelper アンカー タグに関連するものは何もありません。

確かに複数のパラメーターを MVC6 アンカー タグヘルパーに追加できますが、属性ルーティングを使用して 2 つのパラメーターを持つ 2 番目のオプションをどのように処理しますか...

[HttpGet] IactionResult メソッドが 2 つあります。

私の見解では、2番目の方法に進む試みがあります。

これは次のようにレンダリングされます:

また

IT が 2 番目の方法に進むことはありません。

MVC6 アンカー タグヘルパーを使用して 2 つのパラメーターで 2 番目の [HttpGet] メソッドを使用するには、どうすればよいですか?

編集

また、ルート属性の 2 つのパラメーターを区切るアンパサンドをどのように処理しますか...

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

c# - TagHelper は ForExpression から MaxLengthAttribute 属性を取得します

TagHelper ModelExpression 内から MaxLength 属性を取得するにはどうすればよいですか?

私はMVC 5でこれを行うことができました

モデルにある MaxLength 属性を取得する必要があります - 例:

TagHelper は ModelExpression.Metadata を公開します。DisplayName属性など。ただし、MaxLength または StringLength 属性は除きます。

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

c# - asp.net 5 MVC6のタグヘルパーとルート属性の間の奇妙な動作

<a>現在のアクション以外のタグでasp-controller と asp-action を使用すると、[Route]属性を持つコントローラー メソッドによって呼び出されるビューで、生成されたリンクのhref属性が空になります。

コントローラーで:

ビューで:

生成されたhtml:

ご覧のとおり、最初のリンクが正しく生成されていません。現在のアクション以外の別のアクションを対象とするすべてのリンクは、空のhrefタグで生成されます。

ShowSection アクションの [Route] 属性を削除すると、次のようになります。

ご覧のとおり、リンクは正しく生成されています。

[Route]属性を保持しながら (または別の方法で) これを修正するにはどうすればよいですか?

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

c# - MVC6 TagHelper のサーバー側検証での間違ったカスタム エラー メッセージ

MVC6 TagHelper で、2 つのテキスト ボックスとそのバインド モデルを作成しました。1 つのテキスト ボックスは string 型、もう 1 つは int 型のカスタム エラー メッセージで、ポストバック中にデータ注釈で指定されたカスタム エラー メッセージが適切にレンダリングされません。ストリング。

私のコントローラーは

モデルクラスは

そして私のHtmlタグヘルパーコードは

ここでは、サーバー側の検証のみをチェックしています。送信ボタンをクリックすると、最初のテキスト ボックスのスパン検証で文字列値が必要と表示されますが、2 番目のテキスト ボックスのスパン検証で値 '' が無効であると表示されます。Int 値の代わりに必要です

誰かがこれを解決する方法を提案できますか?