[英]Asp.net asmx web services
我想制作通过角度Javascript $ http.post接受表单数据的Web服务,并将其插入到employee表中,但是在检查器上出现此错误
“发布.........内部服务器错误500”帮助,这是代码
<!doctype html>
<html ng-app="app">
<head>
<title>testgrid</title>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular-touch.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular-animate.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/csv.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/pdfmake.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/vfs_fonts.js"></script>
<script src="http://ui-grid.info/release/ui-grid.js"></script>
<link rel="stylesheet" href="http://ui-grid.info/release/ui-grid.css" type="text/css">
<link rel="stylesheet" href="main.css" type="text/css">
</head>
<body>
<div ng-app="app" ng-controller="myctrl">
<form>
<input name="firstname"/>
<input name="firstname" type="text" ng-model="firstname" /><br/>
<input name="lastname" type="text" ng-model="lastname" /><br/>
<input name="middlename" type="text" ng-model="middlename"/><br />
<input name="addrss" type="text" ng-model="address" /><br />
<input name="email" type="text" ng-model="email" /><br />
<input name="salary" type="text" ng-model="salary" /><br />
<input type="button" value="submit" ng-click="insertdata()"/><br />
</form>
</div>
<script>
var app = angular.module('app', [])
var config = { headers: { "Content-Type": "application/json" } };
app.controller('myctrl', function ($scope, $http) {
$scope.insertdata = function () {
$http.post("insertemployee.asmx/setemployeeData", { 'firstname': $scope.firstname, 'lastname': $scope.lastname, 'middlename': $scope.middlename, 'address': $scope.address, 'email': $scope.email, 'salary': $scope.salary })
.success(function (data, status, headers, config) { console.log("Data inserted successfully");})
}
})
</script>
</body>
</html>
[WebMethod]
public void getEmployeeData()
{
List <Employee>employeelist= new List<Employee>();
string cs = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString;
using(SqlConnection con=new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand("SELECT * FROM Employee",con);
con.Open();
SqlDataReader rdr=cmd.ExecuteReader();
while (rdr.Read())
{
Employee employee = new Employee();
employee.FirstName = rdr["FirstName"].ToString();
employee.LastName = rdr["LastName"].ToString();
employee.Salary = Convert.ToInt32(rdr["salary"]);
employeelist.Add(employee);
}
}
JavaScriptSerializer js = new JavaScriptSerializer();
Context.Response.Write(js.Serialize(employeelist));
}
}
}
ASMX用于SOAP服务。 它们是一项旧技术,您应该避免使用它。 如果您使用的是MS堆栈,则Web API可以与Angular(以及任何其他JS框架)完美配合。 您可以使WCF也可以使用它,但是它需要更多的配置来完成Web API项目几乎不需要配置就可以提供的相同功能。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.