2016-05-13 8 views
0

私はUmbraco 7.4.0を使用しています。 Umbraco Forms 4.2.1を私のプロジェクトにインストールしたところ、プロジェクトを進めていたときにwebapiを使ってユーザー登録情報を取得する必要がありましたが、Umbracoのwebapiからデータを受け取ることはできません。 しかし、Umbraco以外の別のページにコードをコピーすると、 私はwebapiからそのデータを受け取ることができます。 Here is the partialumbracoでデータを取得するためにwebapiを使用するとエラーが発生しました

私はスクリプトを修正しようとしましたが、無駄なスクリプトを削除しましたが、問題はまだあります。 なぜこれがこのようなのか知りたいですか?何か不足していますか? ご協力いただければ幸いです。

答えて

0

あなたがしようとしていることに関する詳細な情報がなければ、あなたの質問に答えるのは少し難しいです。

ただし、コントローラクラスを通常のASP.NETプロジェクトからUmbracoソリューションにコピーするだけでは、「うまく動作しません」ということに注意してください。

コントローラーの操作を記録する必要があるコントローラのルートを登録する必要があります。これは、通常、MVCのサイト内の/controller/action/idのURLとWebAPIコントローラの/api/controller/idの自動ルーティングによって行われます。

この自動ルーティングはUmbracoサイトではデフォルトで有効になっていないので、コントローラをルーティングしてそれらに到達できるように、RouteConfig.cs/WebApiConfig.csの場合と同様の手作業で手動で行う必要があります。

また、UmbracoApiControllerを使用すると、最も簡単な解決策になります。コントローラをこれから継承させる場合は、UmbracoによってURL /Umbraco/Api/[YourControllerName]に自動ルーティングされ、それにアクセスできるはずです。 UmbracoApiControllerの使い方は、通常のWebAPIコントローラとまったく同じで、Umbracoのコンテキスト/サービスにアクセスできるという利点があります。

あなたがここにWEBAPI /ルーティングのものの上にドキュメントを参照してくださいすることができます https://our.umbraco.org/documentation/reference/routing/webapi/

関連する問題