簡體   English   中英

如何使用類似於SQL連接的Javascript連接兩個API

[英]How to join two APIs in Javascript similar to a SQL join

我發現這個問題與我要問的問題類似,但不完全相同: 有什么辦法可以像我在SQL中那樣進行“聯接”兩個javascript數組的內容嗎?

在該問題中,用戶提供了兩個他們希望以類似SQL的方式聯接的數組。

我的不同之處在於,我已經設置了多個API來引用數據庫。 我需要獲取API以“連接”一個值。

這是這些類的粗略示例:

public partial class test_review
{
    [Key]
    public int rating_id { get; set; }
    public int site_id { get; set; }
    public string comments { get; set; }
}

和:

public partial class test_site
{
    [Key]
    public int site_id { get; set; }
    [Required]
    [StringLength(3)]
    public string site_name { get; set; }
}

如果我是用SQL編寫的,我會做類似的事情

SELECT r.rating_id, s.site_name, r.comments 
FROM test_review r
INNER JOIN test_site s on r.site_id = s.site_id

當前,我的ReadReviews.aspx頁面中具有如下代碼:

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <script src="Scripts/jquery-3.3.1.min.js"></script>
    <script type="text/javascript">
        function getReviews() {
            $.getJSON("api/review",
                function (data) {
                    $('#reviews').empty();
                    $.each(data, function (key, val) {
                        var row = '<td>' + val.rating_id + '</td><td>' + val.airport_id + '</td>';
                        $('<tr/>', { html: row })
                            .appendTo($('#reviews'));
                    });
                });
        }
        $(document).ready(getReviews);
    </script>
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <h2> Here are the API reviews</h2>
            <table>
                <thead> 
                    <tr>    
                        <th>Rating_id</th>
                        <th>airport_id</th>
                    </tr>
                </thead>
                <tbody id ="reviews">
                </tbody>
            </table>

</asp:Content>

(注意:此jquery代碼來自https://docs.microsoft.com/zh-cn/aspnet/web-api/overview/getting-started-with-aspnet-web-api/using-web-api-with- aspnet-web-forms

一切都很好,但是在這種情況下,這並不是我想要的。 我需要結合來自兩個API的信息。

創建一些視圖會更好嗎? 我知道我可以這樣做,但是我不確定這比直接從表中提取並以某種方式組合它們更好/更有效/更快。

我最終要做的是創建一個SQL視圖,並專門為該視圖創建第二個API,以返回我需要的所有數據。

暫無
暫無

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

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