您好我在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。有人告诉我为了运行应用程序我应该更改哪个文件?谢谢......
答案 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"));