我正在嘗試使用Ionic框架創建應用程序,該框架可以將數據發送到MS SQL服務器。爲此,我使用web api。我在收取數據方面沒有問題,但發送新數據時出錯。這裏是我的離子代碼:
angular.module('starter.controllers',[])
.controller('CheckListCtrl', function($scope, ChecklistService, $ionicPopup) {
function addCheck(){
ChecklistService.addCheck()
}
.factory('ChecklistService', ['$http', function ($scope, $http) {
var urlBase = 'http://localhost:56401/api';
var CityService = {};
CityService.addCheck = function(){
var url = urlBase + "/TBLCHECKLISTs"
var checkdata = {
AKTIF : true,
SIL : false,
KAYITTARIHI : Date.now(),
KULLANICIID : 3,
BASLIK : "Onur",
TAMAMLANDI : false,
TAMAMLANMATARIHI : null,
GUN : 1
}
var request = $http({
method: 'POST',
url: url,
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
data: checkdata
});
return request;
}
return CityService;
}]);
,這裏是我的Web API:
[HttpPost]
[ResponseType(typeof(TBLCHECKLIST))]
public IHttpActionResult PostTBLCHECKLIST(TBLCHECKLIST tBLCHECKLIST)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
tBLCHECKLIST.KAYITTARIHI = DateTime.Now;
db.TBLCHECKLISTs.Add(tBLCHECKLIST);
db.SaveChanges();
return CreatedAtRoute("DefaultApi", new { id = tBLCHECKLIST.TABLEID }, tBLCHECKLIST);
}
當我嘗試發送我得到這個異常:
後,我意識到我採取這種例外,因爲我的checkdata從來沒有來到web api。我不知道爲什麼。
這些都不是我發DATAS:
我嘗試了多種不同版本的POST請求,但沒有的。當我嘗試使用PostMan發送數據時,它可以工作,並且可以將數據插入到我的數據庫中。但是爲什麼我不能用我的應用程序來做到這一點?有誰能夠幫助我?
我不知道.NET但你允許跨域頭在你的API – sam
是的,我允許跨域頭 –