2

VS 2010 に ASP.NET MVC アプリケーションがあります。アプリケーションに新しい Web API コントローラーを追加しました。これが私が呼び出そうとしている簡単な方法です:

 public List<Article> Get()
        {
            using (var db = new HighOnCodingDbEntities())
            {
                var articles = (from a in db.Articles
                               select a).Take(10).ToList();
                return articles; 
            }

        }

Global.asax:

routes.MapHttpRoute(
    name: "API Default",
    routeTemplate: "api/{controller}/{id}",
    defaults: new { id = RouteParameter.Optional }
);

このメソッドを呼び出すと、「リソースが見つかりません」というメッセージが表示されます。アプリケーション バイナリをプロダクションに公開しました。あとはこれで十分だと思います。

URL は次のとおりです: http://www.highoncoding.com/api/articlesapi

ArticlesAPIController.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using HighOnCoding.Models;

namespace HighOnCoding.Controllers
{
    public class ArticlesAPIController : ApiController
    {
        // GET api/<controller>
        public List<Article> Get()
        {
            using (var db = new HighOnCodingDbEntities())
            {
                var articles = (from a in db.Articles
                               select a).Take(10).ToList();
                return articles; 
            }

        }

        // GET api/<controller>/5
        public string Get(int id)
        {
            return "value";
        }

        // POST api/<controller>
        public void Post(string value)
        {
        }

        // PUT api/<controller>/5
        public void Put(int id, string value)
        {
        }

        // DELETE api/<controller>/5
        public void Delete(int id)
        {
        }
    }
}

ローカル マシンで動作:

ここに画像の説明を入力

4

1 に答える 1

2

運用環境では、Web サイトの IIS7 アプリケーション プールの .NET Framework バージョンが統合モードで .NET 4.0.xxx に設定されていることを確認してください。

于 2012-07-07T19:25:39.280 に答える