問題タブ [surface-controller]
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# - Umbraco 7 部分ビュー マクロ レンダリング
Umbraco 7.0.3 では:
- マクロコンテナのプロパティエディタでマクロコンテナというデータ型を作成
- タイプ マクロ コンテナを持つ Body というプロパティを持つ Contact Form というドキュメント タイプを作成しました。
- _contactForm.cshtml という部分ビューを作成しました (Views\MacroPartials 内)。
- MVC 部分ビュー _contactFrom.cshtml で Contact Form というマクロを作成しました
- Contact Us というタイプの Contact Form の追加コンテンツ
- お問い合わせページの Body と呼ばれる Macro Container プロパティに Contact Form マクロを追加しました
次に、ページを表示するためSurface Controller
にいくつかを呼び出しAJAX
ます (より具体的には、ページの Body プロパティ)。
このセットアップはほとんど機能しますが、問題は、レンダリングされたフォームではなく、次のものが返されることです。
したがって、このマクロ\フォーム\部分ビューをレンダリングする必要があります...おそらくコントローラーで行う必要があると思いますが、反対側で(Javascriptを介して)それを行うことができれば、それも同様に機能します. ページ ID とマクロ エイリアスに基づいてマクロをレンダリングするためにコントローラーで呼び出すことができる Umbraco 関数はありますか?
asp.net-mvc - Umbraco: HTML メタ タイトルで部分ビューのデータを使用する
外部 API を呼び出して特定の都市と州の店舗のリストを取得するサーフェス コントローラーがあります。問題は、その呼び出しから返されたデータを使用する必要があることです。
私のマスターテンプレートの頭に存在します。私が知る限り、部分ビューからマスター テンプレートにデータを渡す方法はありません。私は困惑しています。
ViewBag を使用してみましたが、部分ビューが値を設定する前に頭がレンダリングされ、null になります。
テンプレート:
部分図:
hyperlink - Umbraco で SurfaceController へのリンクを作成する
私は Umbraco を初めて使用するので、Umbraco が持っていると思われるルーティング メカニズムをよく理解していません。
関数と関数を備えたカスタム サーフェス コントローラーmyProject.Controllers.CompanySurfaceController
があります。getCompanyList()
getCompany(int companyId)
<a>
基本的な考え方は、データベースから会社のリストを取得し、関数への従来のリンクを使用して部分ビューをレンダリングし、データベースgetCompany(..)
からその会社を取得/表示することです。
<a>
コントローラーの子アクションへのリンクを作成する方法がわかりません! POSTしてHtml.Actionを使用するときに、部分ビューに子アクションを含めることに問題はありません。
私は他のヘルパーを試し@Html.ActionLink
ましたが、最も近いのは へのリンクです/umbraco/Surface/CompanySurface/Company
。これはもちろん機能せず、idパラメーターが含まれていません(例:Company/3
)。
また、コントローラーをumbraco/Surface
名前空間に配置しようとしましたが、うまくいきませんでした (必要ではないようです)。
ここで何が欠けていますか?
asp.net-mvc - Umbraco 非同期 SurfaceController
Umbraco 7.4.3 を使用しているプロジェクト (ASP.NET MVC 5) に取り組んでいます。oauth2 とともに Google アナリティクス API を実装しようとしています。Google ドキュメンテーション プラットフォームで入手できるサンプル コードを使用しました。Google アカウントで承認した後、正しい更新トークンを取得します。しかし、問題は、この更新トークンが URL で返され、コントローラーから空のビューに渡されないことです。ユーザーが自分のGoogleアカウントを承認した後、コントローラーがコードの実行を待機しないように感じているため、コントローラーは await オペレーターについて気にしません。
PS: Umbraco がインストールされていない ASP.NET MVC 5 プロジェクトでこのサンプル コードを試してみましたが、完全に動作します。
私を正しい方向に押し進めることができる人はいますか?
c# - Ajax.BeginForm がサーフェス コントローラーにポストし、部分ビューではなくフル ページでターゲット ID を更新する
ページの各セクションが show hide div 内に隠されているため、ajax で動作するメンバー プロファイル管理領域を取得しようとしています。
以前に MVC アプリケーションで ajax を使用したことがありますが、umbraco サーフェス コントローラーで使用したことはありません。コントローラーで部分ビューを返すと、ページに与えている部分ビューだけでなく、ページ全体が出力される理由がわかりません。
コントローラ:
意見:
フォームのかなり前に(私が知る限り)含める必要があるものはすべて揃っており、コンソールエラーはありません。
また、web.config で UnobtrusiveJavaScriptEnabled が true に設定されていることを確認しましたが、フォームを投稿すると、まだ完全なページがレンダリングされています。
後: フォームが送信され、正しい部分ビューが返されたが、全体ビューの内部にある場合
ある種の方法で明らかに機能しているにもかかわらず、これを調べるのに2時間以上費やしたことに、かなり唖然としています。
これが起こる可能性はありますか、または既知のことですか? 私は周りを検索しましたが、言葉遣いが間違っていない限り、同様の問題を持つトピックを見つけることができませんでした.
誰かがアイデアを持っている場合、正しい方向へのナッジを探していますか?
asp.net-mvc - Umbraco このオブジェクトにはパラメーターなしのコンストラクターが定義されていません
Umbraco で部分ビューをレンダリングしようとしています。私は、、、を持っBaseLayout.cshtml
てHomepage.cshtml
いBaseLayoutViewModel
ますHomepageViewModel
これは私の BaseLayout ビューです
これが私の BaseLayout モデルです。ホームページ モデルはベース レイアウトから継承します。
私の PrimaryNavbar 部分ビューは次のとおりです。
また、PrimaryNavbar のコントローラーは次のとおりです。
編集:完全なエラーを追加する
「このオブジェクトにパラメーターなしのコンストラクターが定義されていません」というメッセージが表示される理由がわかりません。誰かがこれについて私を助けることができますか?
ありがとう