2013-02-21 13 views
12

現在、Azure Mobile Servicesでバックエンドシステムを開発するための「最良の」方法は何ですか?Azureモバイルサービスで開発する?

具体的には、どのようなツールが利用できますか?私が見たことから、ほとんどの例は管理ポータルに行き、手動でスクリプトウィンドウにいくつかの行を追加します。これはNotepadだけを使用するよりも悪く、バージョンコントロールの概念はありません。

Azureで実行されるすべてのNode.jsコードを含むVS 2012でプロジェクトを作成する方法はありますかモバイルサービスですか?モバイルサービスを模倣するローカル開発環境でそのコードを完全に実行する方法はありますか?

私は、モバイルサービスのサンプルやドキュメントのほとんどに示されているよりもはるかに複雑なサーバーサイドコードを用意する必要があります。

私はWebサイトとWin 8 Store Appを認証し、バックエンドデータベースから比較的複雑なデータ構造にアクセスする必要があります。現在、プッシュされているソリューションはすべて、生のテーブルに対して単純なRESTを使用して、モバイルサービスを中心に置いているようですが、すべての例は使いすぎて便利です。

モバイルサービスを使用する「実際の」サンプルと、Visual Studioのツールを使用してそのようなシステムを開発してテストする「成熟した」方法を教えてもらえますか?

ありがとうございました。

+0

もっと複雑なタイプの作業については、こちらをご覧ください:http://blogs.msdn.com/b/carlosfigueira/archive/2012/09/11/supporting-complex-types-in-azure-mobile-services -Clients-Implement-1-n-table-relationships.aspx –

+1

私はAzure Mobileの仕事を今はやめています。それがもう少し成熟した後、私は再び見えるかもしれません。 –

+0

Glen、私はあなたに同意します、私は彼らがサーバーサイドのコードを実装するためにJavascriptを選択したことを知って驚いています。彼らは世界で最も優れた開発ツールと言語を持っていて、彼らはJavascriptを選択します!私をからかってるの? – Cameron

答えて

4

管理ポータル以外のオプションがないのは、私が本当に私を超えている理由です。 C#/ .NET開発者がconsole.log()デバッグを使ってメモ帳スタイルのプログラミングに戻ってしまうのは非常に面倒です。

私が見たいと思うのは、完全な.NET Frameworkを持つ(ASP.NET MVCまたはWeb APIのような)要求を満たす通常のC#アセンブリに接続できるNode.jsエントリポイントです廃棄。可能なアーキテクチャを持つことであると私は見ることができた何

ASP.NET MVCは、読み込み--- ---> AzureのSQL DB <にロジックで処理されたデータを書き込み--- Azureの 上でホストされていますAzureの上Azureのモバイルサービス----ブリッジへ--->モバイルデバイス

それとも

クラウドワーカーの役割----クランチング/処理----> AzureのSQL DB < ---から - ---生のデータの読み書きは---- Azureモバイルサービス----ブリッジ--->モバイルデバイス

モバイルデバイスの機能、スケジューリング、プッシュ通知を制限付きコードで使用し、ほとんどのコードを管理対象.NET環境で使用できます。

+0

これはよかったです!私の3ヶ月のAzure evalが終了しました...そうですが、別のホスティングプラットフォーム、AppHarborに移行する予定です。 –

3

ジョシュはここユニットテストサーバー・スクリプトをカバーする:このチュートリアルでhttp://www.thejoyofcode.com/Unit_testing_Mobile_Services_scripts_Day_7_.aspx

を、彼はJSためMocha testing framework(IDのTDDモード)を使用し、特定の値を暗号化INSERTスクリプトをテストするための例を通って歩きますプロパティ(テキスト)とそれを解読する読み取りスクリプト(値はSQLデータベース内で安心して暗号化されます)。

また、リンクとチュートリアルの集約を見つけることができますhere

1

Windows Azure Mobileソリューションを使用してこのソリューションを構築することをお勧めします。特にNode JS NPMをサポートしています。つまり、ノードJS NPMを使用してWindows Azureで必要なAPIを作成し、簡単にWAMSを使用します。次のリンクをご覧ください。これは、私がもっと何を言いたいのか理解するのに役立ちます。クライアントのために

http://weblogs.asp.net/scottgu/archive/2013/06/14/windows-azure-major-updates-for-mobile-backend-development.aspx

私はまた、あなたがリアルタイムアプリケーションがサーバ側から取引の多くを必要な場合、そのようなあなたのために設計されてSignalRを使用して、それを構築することを示唆しています。

http://www.asp.net/signalr

また、あなたは以下のリンクでそれらの両方を統合する方法についての詳細を見つけることができます。http://hhaggan.wordpress.com/2013/07/12/signalr-node-js/

私はこれらはあなたが、あなたが何かを必要とするなら、私に知らせて助けを願っています。

4

Azureと共にAMS(Azure Mobile Services)は、この記事が書かれ、回答が返ってから劇的に進歩しました。

このうちのいくつかはまだ成立しています。 Azureクラウドポータルにはないnode.jsが書かれていれば、ポータルオンライン、カスタムapi呼び出しセクション、さらにCRUD操作のためのSQLバックエンドテーブルにコピー&ペーストしたいと思うでしょう。

C#開発者の希望は、今すぐnode.jsをスキップしてnode.jsを除いてすべてをビルドすることができるプレビューモードです。いくつかのバグはうまくいくが、6ヶ月後にはかなり固い。

私は質問があり、問題があり、Carlos carlosfigueiraという男が非常に役に立ちました。ローカルで実行するために Azure Mobile Services - Getting more user information

+0

私は、Web APIのラッパーのようなC#バックエンドで作業してきました。今すぐローカルでサービスを開発してテストすることができます。最近、Tech North America 2014で素晴らしいプレゼンテーションが行われました。このプレゼンテーションはChannel 9でご覧になれます(http://channel9.msdn.com/Events/TechEd/NorthAmerica/2014/DEV-B317#fbid=) – Blanthor

1

、モバイルサービスは、紺碧のウェブサイトで利用可能な同じクーズー環境を持っているので、あなたは、トップナビゲーションバーからデバッグコンソールに移動した場合、あなたは/サイトで実行されているすべてのものをダウンロードすることができhttps://your_service_name.scm.azure-mobile.netに閲覧することができますwwwrootフォルダ。

このnodejsプロジェクトはローカルで実行できます(SQL Serverのnpmパッケージが必要な場合にのみウィンドウが表示されます)。あなたのコードはApp_Data/config/scriptsにあります。ダウンロードしたコンテンツを現行のローカルgit作業コピーに置き換えると、ローカルで開発してデバッグし、いつものように変更をプッシュできます。私が使用

0

ツール:JS環境(または任意のnodejs IDE)と

  1. Eclipseの。
  2. Gitの
  3. ポストマン

ステップ:

  1. あなたの紺碧のモバイルサービスへのソースコントロールを有効にします。
  2. ローカルにプルし、ソースを使用してEclipseプロジェクトを作成します。
  3. 変更してプッシュします。
  4. POSTMAN

この手順を使用したテストでは、私は本当に速い開発し、一般的なJSのエラーを教え日食することができます。

  1. ないデバッグ(私はにconsole.logを使用)
  2. プロジェクトはコミットの多くになってしまった(そのハード適切なソース管理のためにgitを使用する)
0

:しかし、それは明らかな欠点を持っています私はちょうどAzure Mobile Servicesをローカルで実行しているブログ記事を投稿しました:http://www.mikelanzetta.com/2014/09/running-azure-mobile-services-locally/ - 基本的にはAPIを調べて明示的に起動し、自分でmochaをローカルで実行することができます。 scmリンクから完全なwwwrootを削除するよりも少し洗練されています。私のローカルランナーをgitサブモジュールとして使用することで、簡単に作業できました(VSOを使用してテストを管理しやすくなりました)。

とにかく、実際の開発のために、私はGitの統合とWebStormを使用しています - 私のローカルGruntfileのタスクを自動的に見つけて、実行とテストを簡単にします。一度それが配備されているので、Postmanが役に立ちます。

関連する問題