問題タブ [editortemplates]
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# - EditorFor を使用して追加のビューモデル データを渡すと、1 対多の関係で失敗する
継承するエディター テンプレート (Views/Shared/EditorTemplates/HORDER.ascx) があります。
私のビューモデルには、複数の HORDERS をレンダリングするために Html.EditorFor を使用する 1 対多の関係があります。
最終的に私がやりたいことは、ドロップダウンリストのデータを渡すことですが、今のところ、文字列「hello」を渡そうとしています
HORDER.ascx に以下を埋め込むと
「0」出力が得られます。ビューデータを取得しようとしても失敗します。
ただし、単一のアイテムで EditorFor を使用すると、期待どおりに動作します。ビューモデルに FirstHorder を追加しました。set is as model.PEOPLE.HORDERS.First() then <%: Html.EditorFor(model => model.FirstOrder, new { fred="hello"})%> は期待どおりに hello を渡します。
では、EditorFor を 1 対多の関係で呼び出すときに、追加のデータを処理する方法はありますか?
編集:別の場所で、個々の HORDERS に対して ForEach ループで EditorFor を使用することが提案されています。これは機能します (つまり、追加のビューデータが正しく渡されます) が、望ましくない PEOPLE.HORDERS[n].field ではなく、EditorFor によってレンダリングされるすべてのコントロールが同じ ID と名前を持つことになります。
c# - ASP.NET MVC 2-Html.Editor null許容型の場合は?
2つのエディターテンプレートがあります。1つは10進数用で、もう1つは10進数用ですか。(null許容)
しかし、モデルにnull許容の小数がある場合、通常の小数エディターをロードしようとします。
最初のものは正常に動作し、10進エディターテンプレートをロードします。2つ目も、10進数のテンプレートを読み込もうとします(10進数のフィールドではないため失敗します)。
エラーメッセージは次のとおりです。
私のテンプレートは次のように宣言されています:
10進数テンプレート:
Nullable Decimalテンプレート:
テンプレート名を渡すことで機能させることができることを知っています。
しかし、他のすべてのテンプレートと同じように、タイプを使用して自動的に機能することを本当に望んでいます。
json - JSON / MVC(3P1)HttpPost-EFクラスで機能しない
古いチュートリアルとMVC3Preview 1の最近の投稿を組み合わせて一致させると、次の問題が発生します。Fighter
JSONを使用しない「単純な古い」編集ではなく、モデル(および基盤となるデータベース)のJSON駆動型編集に移行しようとしています。
クラス(EF 4モデルに存在する)の編集ビュー(、を使用Shared EditorTemplate
)のfighter.ascx
セットアップがあります。Fighter
これには2つのボタンがあります。1つは「古い」もので、JSONなしでeditcontrollerを呼び出す送信であり、もう1つは新しいものであり、新しいものを作成しました。HttpPost ActionResult
ActionResult UpdateJsonTrick
古いボタンは機能します。新しいボタンは半分しか実装されていませんが、ビューからデータを正しく受信していないことがすでにわかります。文字列は次のreturnMessage
ようになります:「システムに作成された戦闘機」。そのActionResultで役立つことを行う前に、そのデータを渡す方法を知っておく必要があります。どこが間違っているのですか?
したがって、edit.aspxは単純なHtml.EditorForModel("Fighter")
ステートメント
ですが、Fighter.ascxは次のとおりです。
そして、これが(からの関連ビット)コントローラーです:
ご理解のほどよろしくお願いいたします。追加のコードや情報が必要な場合は、提供させていただきます。
asp.net-mvc-2 - ビューモデルで子コレクションのEditorTemplateを定義します
EditorForを使用したいQuestionEditModelのリストを含むモデルがあります。
通常、コレクションでEditorForを呼び出すだけで、残りはMVCが行います。ただし、オブジェクト内のフィールドの値に応じて異なるEditorTemplatesを使用するには、個々のQuestionEditModelが必要です。
これを行う方法は次のようになると思いました
しかし、現在選択されている質問を確認し、質問のEntryTypeフィールドを使用して、使用するEditorTemplateを決定するように指示する方法がわかりません。
だから私はこれを試しました
しかし、これはページに何もレンダリングしません。奇妙なことに、ブレークポイントを設定してコードを実行すると、正しいEditorTemplateが呼び出され、正しいモデルデータが渡され、例外はありませんが、何もレンダリングされません。
レンダリングされたEditorTemplateを自分のページに戻すために、このシナリオで行う必要のある追加の作業はありますか?
編集:
編集ビューの完全なコード。
編集2:
要求に応じて、ビュー、コントローラー、およびテンプレートのコードを完成させます。
エディターテンプレート:
編集(GET)アクション:
編集(POST)アクション:
asp.net-mvc - エディター テンプレートのカスタム属性から値を取得する
現時点で私はこれを持っています:
ビューモデルで:
エディター テンプレートで:
カスタム属性 (MyCustom) からエディター テンプレートに値 (Foo=23) を取得するにはどうすればよいですか?
asp.net-mvc - editortemplateで親オブジェクトにアクセスするにはどうすればよいですか?
カスタムエディタテンプレートで、親オブジェクトにアクセスしたいと思います。
私はこのコードを使用していますが、特にネストされたビューを使用する場合、これはおそらく最善の方法ではありません。
誰かもっと良いアイデアがありますか?
asp.net-mvc-2 - EditorTemplate の Dropdownlist に検証を追加する
ViewModel のプロパティに UiHint "DropDown" を指定し、HtmlHelper EditorFor を使用して一般的な EditorTemplate を介してドロップダウンをレンダリングし、ソリューション間で使用できるようにすることで、ドロップダウン リストを持つ良い方法を見つけようとしています。Tom Schreck Hereによる非常に優れたアプローチを見つけましたそれは正常に動作します。完璧ではない唯一のことは、ドロップダウンリストが検証の一部ではないということです。「選択」オプション (EditorTemplate に手動で追加) をデフォルトとして使用したいのに、値が選択されていない場合、エラーが発生します。DropDownList が DropDownListFor - Helper から作成されていないためだと思いますか? トムがそれを試したと書いていることは知っていますが、カスタム値を使用してループ内の SelectList に項目を追加する方法はありませんか? 初心者なので出来ませんが、バリデーションにドロップダウンを含めていただけるととても良いと思います。このようにして、コントローラーに selectList を入力し、他のプロパティと同じ形式を維持できます。私が言ったように、私の語彙で申し訳ありませんが、私は初心者です。しかし、私の言いたいことを理解していただければ幸いです。
私はすべてを試したと感じているので、誰かがこれを解決するのを手伝ってくれたら本当に感謝しています..
よろしく最大
asp.net-mvc - ASP.NET EditorTemplate DropdownList
新しいアプリを追加するたびに、新しい AppCategory が作成されます。私はどういうわけかこれを真剣に台無しにしています
最初のエンティティ フレームワーク オブジェクトをコーディングする
Editor Template (Foreign Key EditorTemplate を 1 つだけ作成したい)
そしてもちろんリポジトリ
新しいアプリを追加するたびに、新しい AppCategory が作成されます
デバッグ情報の追加
投稿に検証メッセージが表示される
検証エラー値 '1' は無効です。
Category は整数ではなくオブジェクトであるべきなので、これは理にかなっています。
MVCScaffold に由来するため、これが問題ではないことを確認するよう求められたコントローラー コード
asp.net-mvc-3 - Asp.net MVC 3 エディター テンプレートの拡張
画像 URL のプロパティを含むモデルがあります。
ご覧のとおり、データ型は ImageUrl であり、この事実を使用して Views/Shared ディレクトリにエディター テンプレートを作成しました。
テンプレートは、いくつかの余分な html 要素を追加してデフォルト テンプレートを拡張するだけで済みます。どうすればいいのかわかりません。
HTMLヘルパーを呼び出すときにテンプレート名を指定しようとしましたが、うまくいかないようです。
私が使用しているコードは次のとおりです (これはカスタム テンプレート内にあることに注意してください)。
ご参考までに、MVC 3 dll でリフレクターを使用してテンプレート名を取得した後、
System.Web.Mvc.Html
TemplateHelpersクラスのコンストラクターを調べたところ、次の行が見つかりました。
どんな助けにも乾杯 トニー
アップデート
言及するのを忘れました。私がこれを行っている理由は、MVC 3 の控えめな検証を利用するためです。
asp.net-mvc - 3つのDropDownListを使用してエディターテンペール部分ページビューから値が更新されない
DateTimeのPartialPageViewにEditorTemplateがあり、日、月、年の3つのDropDownListがあります。値を更新しようとすると、ポストバックの日付は常に01/01/0001になります。何か案は?