我正在寻找一种解决方法,允许在SQL Server 2000提供的数据库上执行CRUD操作。根据我的阅读,SQL Server 2000与ASP.NET提供的实体框架不兼容。我看过一篇文章,详细介绍了如何使用ADO.NET创建与数据库的连接,但是我没有找到任何有关执行CRUD的文章。
例如,我有以下代码可以在本地计算机上使用MySQL服务器:
public class RoutesDemoController : Controller
{
public ActionResult One()
{
string querystring = "SELECT first_name FROM student";
string connectionstring = "server=localhost;database=testdb;user id=uid;password=password;";
string result = "";
using (MySqlConnection connection = new MySqlConnection(connectionstring))
{
MySqlCommand command = new MySqlCommand(querystring, connection);
connection.Open();
MySqlDataReader reader = command.ExecuteReader();
try
{
while (reader.Read())
{
result += reader.GetString(0);
}
}
finally
{
// always call close when done reading.
reader.Close();
}
}
ViewBag.test = result;
return View();
}
}
但是,我正在尝试草拟一个可由Angular的$ http服务调用的API,方式如下:
$http.get('/api').success(function(result){
$scope.somefield = result;
})
非常感谢有关如何构建应用程序以此方式使用API的任何建议或指导。
我发现了一个AngularJS应用程序的简化示例,该应用程序进行API调用如下:
<html>
<head>
<script src="~/Scripts/angular.js"></script>
</head>
<body ng-app ="myApp">
<div>
<div ng-controller="myController">
Response Data: {{data}} <br />
Error: {{error}}
</div>
</div>
<script>
var myApp = angular.module('myApp', []);
myApp.controller("myController", function ($scope, $http) {
var onSuccess = function (data, status, headers, config) {
$scope.data = data;
};
var onError = function (data, status, headers, config) {
$scope.error = status;
}
var promise = $http.get("/demo/getdata").success(onSuccess).error(onError);
});
</script>
</body>
</html>
在该示例中,demo
是API控制器,getdata
是获取所有条目的具体操作,对吗?然后,如何在调用$http.get("/demo/getdata/")
时构建我的API控制器以获取数据?