如何运行WebApi?

时间:2016-09-28 11:42:41

标签: angularjs asp.net-web-api

您好我在VS2015学习WebApi。我有一些MVC4的经验,所以我知道MVC $中的路由概念。我关注的是http://www.c-sharpcorner.com/uploadfile/65794e/web-api-with-angular-js/网站。我试图从数据库中显示一些数据,如下所示。

public class TestController : ApiController
    {
        // GET: api/Test
        public WebAPI db = new WebAPI();
        public IEnumerable<LoginTbl> Get()
        {
            return db.LoginTbls.AsEnumerable();
        }
    }

WebApiConfig.cs如下。

config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{Test}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

Service.Js代码。

app.service("APIService", function ($http) {
    this.getSubs = function () {

        return $http.Get("")
    }
}
);

我不确定$ http.Get(“”)传递什么 这是我的index.cshtml

@{

}

<style>
    table, tr, td, th {
        border: 1px solid #ccc;
        padding: 10px;
        margin: 10px;
    }
</style>
<h2>Welcome to Sibeesh Passion's Email List</h2>
<body data-ng-app="APIModule">
    <div id="tblSubs" ng-controller="APIController">
        <table>
            <tr>
                <th>UserName</th>
                <th>Password</th>

            </tr>
            <tbody data-ng-repeat="sub in subscriber">
                <tr>
                    <td>{{sub.UserName}}</td>
                    <td>{{sub.Password}}</td>

                </tr>
            </tbody>
        </table>
    </div>
</body>

<script src="~/Scripts/angular.js"></script>
<script src="~/Scripts/angular-route.js"></script>
<script src="~/Scripts/APIScripts/Module.js"></script>
<script src="~/Scripts/APIScripts/Service.js"></script>
<script src="~/Scripts/APIScripts/Controller.js"></script>   

我使用AngularJs作为客户端。我不知道如何运行上面的应用程序,因为我可以看到两个RouteConfig.cs和WebAPiconfig.cs。有人告诉我为了运行应用程序我应该更改哪个文件?谢谢......

1 个答案:

答案 0 :(得分:0)

在您关注的教程中,他们实际上没有说出他们命名为API控制器的内容,但它被称为SubscriberController。该路线与api/匹配,然后与单词Controller之前的单词匹配 - 因此,教程中为api/Subscriber,您的情况为api/Test

在角度路由配置中,您的代码将变为$http.get("api/Test");

为了从Web API返回JSON,我们在WebApiConfig.cs中需要这行代码:

config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));