問題タブ [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.

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

c# - Umbraco 7 部分ビュー マクロ レンダリング

Umbraco 7.0.3 では:

  1. マクロコンテナのプロパティエディタでマクロコンテナというデータ型を作成
  2. タイプ マクロ コンテナを持つ Body というプロパティを持つ Contact Form というドキュメント タイプを作成しました。
  3. _contactForm.cshtml という部分ビューを作成しました (Views\MacroPartials 内)。
  4. MVC 部分ビュー _contactFrom.cshtml で Contact Form というマクロを作成しました
  5. Contact Us というタイプの Contact Form の追加コンテンツ
  6. お問い合わせページの Body と呼ばれる Macro Container プロパティに Contact Form マクロを追加しました

次に、ページを表示するためSurface Controllerにいくつかを呼び出しAJAXます (より具体的には、ページの Body プロパティ)。

このセットアップはほとんど機能しますが、問題は、レンダリングされたフォームではなく、次のものが返されることです。

したがって、このマクロ\フォーム\部分ビューをレンダリングする必要があります...おそらくコントローラーで行う必要があると思いますが、反対側で(Javascriptを介して)それを行うことができれば、それも同様に機能します. ページ ID とマクロ エイリアスに基づいてマクロをレンダリングするためにコントローラーで呼び出すことができる Umbraco 関数はありますか?

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

asp.net-mvc - Umbraco: HTML メタ タイトルで部分ビューのデータを使用する

外部 API を呼び出して特定の都市と州の店舗のリストを取得するサーフェス コントローラーがあります。問題は、その呼び出しから返されたデータを使用する必要があることです。

私のマスターテンプレートの頭に存在します。私が知る限り、部分ビューからマスター テンプレートにデータを渡す方法はありません。私は困惑しています。

ViewBag を使用してみましたが、部分ビューが値を設定する前に頭がレンダリングされ、null になります。

テンプレート:

部分図:

0 投票する
2 に答える
1317 参照

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名前空間に配置しようとしましたが、うまくいきませんでした (必要ではないようです)。

ここで何が欠けていますか?

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

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 プロジェクトでこのサンプル コードを試してみましたが、完全に動作します。

私を正しい方向に押し進めることができる人はいますか?

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

c# - Ajax.BeginForm がサーフェス コントローラーにポストし、部分ビューではなくフル ページでターゲット ID を更新する

ページの各セクションが show hide div 内に隠されているため、ajax で動作するメンバー プロファイル管理領域を取得しようとしています。

以前に MVC アプリケーションで ajax を使用したことがありますが、umbraco サーフェス コントローラーで使用したことはありません。コントローラーで部分ビューを返すと、ページに与えている部分ビューだけでなく、ページ全体が出力される理由がわかりません。

コントローラ:

意見:

フォームのかなり前に(私が知る限り)含める必要があるものはすべて揃っており、コンソールエラーはありません。

また、web.config で UnobtrusiveJavaScriptEnabled が true に設定されていることを確認しましたが、フォームを投稿すると、まだ完全なページがレンダリングされています。

初期: ページが読み込まれ、フォームが表示されたとき

後: フォームが送信され、正しい部分ビューが返されたが、全体ビューの内部にある場合

ある種の方法で明らかに機能しているにもかかわらず、これを調べるのに2時間以上費やしたことに、かなり唖然としています。

これが起こる可能性はありますか、または既知のことですか? 私は周りを検索しましたが、言葉遣いが間違っていない限り、同様の問題を持つトピックを見つけることができませんでした.

誰かがアイデアを持っている場合、正しい方向へのナッジを探していますか?

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

asp.net-mvc - Umbraco このオブジェクトにはパラメーターなしのコンストラクターが定義されていません

Umbraco で部分ビューをレンダリングしようとしています。私は、、、を持っBaseLayout.cshtmlHomepage.cshtmlBaseLayoutViewModelますHomepageViewModel

これは私の BaseLayout ビューです

これが私の BaseLayout モデルです。ホームページ モデルはベース レイアウトから継承します。

私の PrimaryNavbar 部分ビューは次のとおりです。

また、PrimaryNavbar のコントローラーは次のとおりです。

編集:完全なエラーを追加する

「このオブジェクトにパラメーターなしのコンストラクターが定義されていません」というメッセージが表示される理由がわかりません。誰かがこれについて私を助けることができますか?

ありがとう