如何同步上次插入的项目

本文关键字:插入 项目 何同步 同步 | 更新日期: 2023-09-27 18:34:54

我尝试获取数据库上最后插入的项目,与Web API相关。我有一个代码来显示所有项目,它可以工作,但是如何使最后插入的项目与 Web API 同步,这是我的问题。这是我的代码

class Program
{
    static HttpClient client = new HttpClient();
    static void Main(string[] args)
    {
        client.BaseAddress = new Uri("http://localhost:1032");
        GetAllItemMongoDB();
        Console.ReadKey();
    }
    static async void GetAllItemMongoDB()
    {
        var jsonResponse = await client.GetStringAsync("api/Symboles");
        var SymboleList = await JsonConvert.DeserializeObjectAsync<List<Symbole>>(jsonResponse);
        foreach (var p in SymboleList)
        {
            Console.WriteLine("{0} {1} {2}", p.SymboleID, p.Name, p.Price);
        }
    }
}

这个想法是控制台应用侦听 Web API,当 ID 递增时将显示最后插入的项目,示例:
如果数据库有:1
件1 价格12
项目2 价格23
项目3 价格3
我插入了item4,应用程序显示"4 item4价格4">


thnx 到 #JᴀʏMᴇᴇ,我尝试使用此代码连续显示上次插入的项目。但是没有什么可显示的(我已经在数据库中添加了数据(

class Program
{
    static HttpClient client = new HttpClient();
    static void Main(string[] args)
    {
        client.BaseAddress = new Uri("http://localhost:1032");
        GetAllItemMongoDB().Wait();
        Console.ReadKey();
    }
    static async Task GetAllItemMongoDB()
    {
        var jsonResponse = await client.GetStringAsync("api/Symboles");
        var SymboleList = await JsonConvert.DeserializeObjectAsync<List<Symbole>>(jsonResponse);
        var mosRecentlyInserted = SymboleList.OrderByDescending(o => o.SymboleID).First();
        while (true)
        {
            var newRecentlyInserted = SymboleList.OrderByDescending(o => o.SymboleID).First();
            if (newRecentlyInserted.SymboleID > mosRecentlyInserted.SymboleID)
            {
                mosRecentlyInserted.SymboleID = newRecentlyInserted.SymboleID;
                foreach (var p in SymboleList)
                {
                    if(newRecentlyInserted.SymboleID >= p.SymboleID)
                        Console.WriteLine("{0} {1} {2}", p.SymboleID, p.Name, p.Price);
                }
            }
        }
    }
}

如何同步上次插入的项目

您可以使用

linq 获取具有最高 id 的项目,如下所示:

var mostRecentlyInserted = SymboleList.OrderByDescending(o => o.Id).First();

假设:

您已添加System.Linq命名空间。

您的财产称为Id