簡體   English   中英

角承諾返回“未定義”值.NET MVC

[英]Angular promise return “undefined” value .NET MVC

在下面的代碼示例中,我發送“請求”,並且嘗試獲取響應,但返回“未定義”值。 到目前為止,這是我的代碼

$scope.SameNameFunction = function() {
            var payload = { itemname: $scope.EventDetails.Name};
            portalRepository.namecall(payload).then(function (payload) {
                console.log(payload.valuesreturned);
                alert("Detected: " + payload.valuesreturned + " events having the same name");
            });
        };

來自http.post的代碼

            namecall: function (payload) {
                return $http.post("/Api/PortalData/NameNumberResult", payload);
            },

.cs控制器中的代碼:

public ActionResult NameNumberResult(ItemEventNameDTO payload)
{
    var valuetosend = payload.itemname;
    var acf = new AcFunctions();
    var newstorevalue = SqlHelper.ExecuteDataset(acf.AcConn(), "sp_selectbyname", valuetosend);
    payload.valuesreturned = newstorevalue.Tables[0].Rows.Count;
    return payload.GetSuccess();
}

放置一個斷點我從.cs和.js文件的存儲過程中獲取適當的值。 但是,當嘗試在屏幕上打印消息時,沒有出現值,而是顯示了“檢測到的具有相同名稱的未定義事件”。 歡迎任何幫助!

當您按照自己的代碼進行操作時,您正在返回承諾

namecall: function (payload) { 
    return $http.post(url, payload); 
}

您需要使用$http.post()的回調方法

 portalRepository.namecall(payload).then(function(data){
     alert("Detected: " + payload.valuesreturned + " events having the same name");
 });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM