0
我在jQuery中創建了一些也包含一些計算屬性的對象。我將該對象發送給我的Web API服務,其中此對象被定義爲類對象。來自$ scope變量的所有屬性都設置正確,除了計算變量,其顯示爲NULL表示它們的值在作爲$ http.post方法的一部分發送時未計算。請參閱我的代碼。
jQuery代碼
$scope.EstimationEfforts = {
//Total no. of apps distribution
TotalAppsDistributionNumbers: [
{
Description: "Number of No Issue Apps",
Value: function() { return ($scope.Total_No_Apps * $scope.CalculationAsssumptions.ExprienceBasedAssumptions[0].Ratio)/100 }
},
{
Description: "Number of Apps with vendor upgrade",
Value: function() { return ($scope.Total_No_Apps * $scope.CalculationAsssumptions.ExprienceBasedAssumptions[1].Ratio)/100 }
},
{
Description: "Number of Bespoke Apps not Requiring remediation",
Value: function() { return ($scope.Total_No_Apps * $scope.CalculationAsssumptions.ExprienceBasedAssumptions[2].Ratio)/100 }
},
{
Description: "Number of Bespoke Apps Requiring remediation",
Value: 12
}
]}
現在我在發送後調用這個變量如下..
var EffortModel = $scope.EstimationEfforts;
$http.post('/EffortEstimate/GenerateExcel', $scope.EstimationEfforts).success(function (data) {
alert(data);
});
在服務器端我的示例代碼是這樣的...
public class EffortModel
{
public List<AppDetails> TotalAppsDistributionNumbers { get; set; }
}
public class AppDetails
{
public string Description { get; set; }
public float? Value { get; set; }
}
[HttpPost]
public ActionResult GenerateExcel(EffortModel objEffortModel)
{
float? ss = objEffortModel.TotalAppsDistributionNumbers[0].Value;
return Json(ss, JsonRequestBehavior.AllowGet);
}
在服務器上所有描述都正確顯示,但值(計算屬性)顯示爲NULL。因爲它包含客戶端上的值,然後調用服務器端,我可以通過螢火蟲看到它作爲Value()意味着作爲函數。
我如何在服務器端獲得它們的值?
你正在嘗試發佈一個沒有相應的_.Net_類型的函數。 –
我無法看到'jQuery'代碼? –