none
ASP.NET WEB API RRS feed

  • 質問


  • http://channel9.msdn.com/Blogs/VS100/007

    上記の動画を見ながらWeb APIを勉強しようとしていますが、

    get、postでリクエストを投げると、ローカルでもWEBサーバでもエラーになってしまいます。

    エラーはブラウザとFiddlerで確認しました。

     http://サーバ名/api/Message

    <Error><Message>エラーが発生しました。</Message></Error>

    Fiddlerのresultは500となっています。

    動画のまま進めたので、web.configなどは何も弄ってません。

    基本的な質問で恐縮ですが、ご助言頂けると幸いです。

    2013年6月11日 12:24

回答

  • > この動画で紹介されている機能をテストする場合、SQL Serverは必要なのでしょうか

    動画では、まずクライアントがサーバーにデータを格納し、その後、サーバーに格納されたデータを要求して取得していますが、そのためにはサーバーに何らかのデーターベースは必須です。

    データベースは必ずしも SQL Server でなくてはならないというわけではありませんが、「Entity Frameworkによるスキャフォールディングをベースにコードファースト」という記述を見ると、まず間違いなく SQL Server を利用していると思います。(Entity Framework とかコードファーストという言葉が分からなければググって調べてください)

    VS2012 は持ってないので分かりませんが、SQL Server Express 版などが付属していて、デフォルトでインストールされているということはありませんか。以下のページを見ると付いていると書いてありますが。

    後悔しないVisual Studio 2012セットアップ
    http://clueup.org/VisualStudio/Setup/vs2012.cshtml

    • 回答としてマーク hys73 2013年6月13日 3:29
    2013年6月13日 3:13

すべての返信

  • 動画の情報+質問に書いてある情報だけで、どこに問題があるかピンポイントで指摘するのは無理です。

    単なる推測ですが SQL Server あたりの問題のような気がします。SQL Server の設定はきちんとされているのでしょうか?

    Visual Studio 2012 を利用して、「MVC 4 とEntity FrameworkによるスキャフォールディングをベースにコードファーストでRESTfulなHTTPサービスを作るデモ」だそうですが、Visual Studio 2012 のウィザードで自動生成するコードや SQL Server データベースが必要なようです。動画では SQL Server の設定等は全く触れてなかったですが・・・

    • 回答としてマーク hys73 2013年6月12日 23:27
    • 回答としてマークされていない hys73 2013年6月13日 1:45
    2013年6月12日 3:09
  •  ご指摘ありがとうございます。

     再度、VS2012の評価版とFiddlerをインストールし直して再トライしたところ、上記の動画のすべてを確認することができました。ただ、再トライしたときにSQL Serverなどは前回同様設定してませんし、念のため管理ツールからSQL Server VSS Writer というそれっぽいのを停止してみても、問題なく動作できました。この動画で紹介されている機能をテストする場合、SQL Serverは必要なのでしょうか

    2013年6月13日 2:09
  • > この動画で紹介されている機能をテストする場合、SQL Serverは必要なのでしょうか

    動画では、まずクライアントがサーバーにデータを格納し、その後、サーバーに格納されたデータを要求して取得していますが、そのためにはサーバーに何らかのデーターベースは必須です。

    データベースは必ずしも SQL Server でなくてはならないというわけではありませんが、「Entity Frameworkによるスキャフォールディングをベースにコードファースト」という記述を見ると、まず間違いなく SQL Server を利用していると思います。(Entity Framework とかコードファーストという言葉が分からなければググって調べてください)

    VS2012 は持ってないので分かりませんが、SQL Server Express 版などが付属していて、デフォルトでインストールされているということはありませんか。以下のページを見ると付いていると書いてありますが。

    後悔しないVisual Studio 2012セットアップ
    http://clueup.org/VisualStudio/Setup/vs2012.cshtml

    • 回答としてマーク hys73 2013年6月13日 3:29
    2013年6月13日 3:13
  • 回答ありがとうございます。

    コードファーストはEntity Frameworkのバージョン4.1から登場した新機能でエンティティ(モデルのコード)を記述しておけば、テーブルが自動生成される仕組みなんですね。

    vs2012のサーバエクスプローラーから確認すると、確かにモデルに応じたテーブル、フィールドが自動生成されていました。すごい!便利!と思いました。がんばって慣れていこうと思います。

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

    2013年6月13日 3:31