簡體   English   中英

如何在Linq中使用count

[英]How to use count in linq

我正在嘗試通過調用-api / test / name = storm來獲取數據和計數功能以顯示在客戶端,但是我看不到任何計數結果,僅顯示客戶端上的數據。

 public HttpResponseMessage Get([FromUri] Query query)
    {
        var data = db.database.AsQueryable();
        int page = 0;
        int pageSize = 10;

        if (query.name != null)
        {
            data = data.Where(c => c.Name == query.name);
        }
        if (query.cusip != null)
        {
            data = data.Where(c => c.CUSIP == query.cusip);
        }

        if (!data.Any())
        {
            var message = string.Format("No data was found");
            return Request.CreateErrorResponse(HttpStatusCode.NotFound, message);
        }
        if (query.name != null)
        {
            data = data.OrderByDescending(c => c.UploadDate).Skip(page * pageSize).Take(pageSize);
        }
        if (query.cusip != null)
        {
            data = data.OrderByDescending(c => c.UploadDate).Skip(page * pageSize).Take(pageSize);
        }

        int SelectedRows = data.Count();
        return Request.CreateResponse(HttpStatusCode.OK, data);
        Console.Write("{0}records displayed of {0} found.", SelectedRows);
    }

}

輸出響應:

 [{"$id":"1","ID":419035,"Name":"ACIS 2013-1A E","SaleDateTime":null,"Region":null,"CUSIP":"00089PAA6","Size__m_":"2500000","OriginalRating":null,"MaturityDate":null,"Manager":null,"priceTalk":"92-24","Cover":"TALK","LastUpdated":"2013-08-01T09:06:37","UploadDate":"2013-07-31T00:00:00","Type":"CLO","ISINs":null,"Decimal_price":92.75,"CMBS_spread":null,"CMBS_decimal":null,"Current_size":"2500000"},

如果這不是對count函數的不足方法,請有人指導我正確的方法。 非常感謝。

從您的代碼中,您不會返回計數。 您應該將return語句更改為

return Request.CreateResponse(HttpStatusCode.OK, SelectedRows );

同樣,由於您要在Console.Write調用之前返回,因此您可能看不到任何寫入控制台的內容。

如果你有類似的東西

var data = [ {a:b, c:d}, {e:f, g:h, ...}, {..}, ... ]

在客戶端,其中數據是從c#方法返回的所有對象的數組,則可以執行

var count = data.length

使用Javascript並獲取您返回的對象數。 但是在這種情況下,您無需在C#方法中進行計數。

您的“ SelectedRows”僅在控制台中返回。

嘗試:

return Request.CreateResponse(HttpStatusCode.OK, SelectedRows);

似乎我無法對評論進行投票...到底值多少錢,我同意Grundy在原始帖子的評論中...不僅返回數據集,還根據問題的要求返回數據集中的記錄數。

暫無
暫無

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

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