Blazor 服务器应用程序 - 在我的索引上使用 SQLite 值

Blazor Server App - Use SQLite values on my Index

我有计算器并使用输入和系统值来计算结果,

应用:

示例:

输入:

    <div class="col-sm-6">
        <label>Gross Tonnage</label>
        &nbsp;<img src="data:text/plain;base64,AAABAAEAEBAAAAEAI="
                   title="Type the gross tonnage of the vessel." />
        <InputNumber style="width: 100%" @bind-Value="model.GrossTonnage" class="form-control" />
        <ValidationMessage For="@(() => model.GrossTonnage)" />
    </div>

系统值:

    public double methanolcf { get; set; } = 1.375;
    public double ethanolcf { get; set; } = 1.913;

我在一个模型上同时拥有输入和系统值@bind-value,并在这样的计算中使用它们:

   if (model.ethanolcf > model.GrossTonnage)
   {
        model.average=0.5;
   }

像 Methanol 和 Ethanol 这样的值在这些年里会发生变化,所以我创建了一个登录 -> 管理面板页面并使用它创建了一个 SQLite(教程:https://www.youtube.com/watch?v=zPZVMw4i_Qw&t=902s&ab_channel=TechnicalBundle and source code: https://github.com/technicalbundle/blazorservercrudefsqlite)以避免必须修改源代码每次值更改时。

现在我有了这个管理页面,我希望能够在我的索引页面上使用数据库中的值,

例如,如果我在我的管理员上更新甲醇值,那么这也应该更新:

也许这有助于解释:

I update the Methanol value on my Admin then this should also get updated

我认为这只是需要进行透视调整。你在看 索引页面并想知道“如何使管理页面中的值进入索引页面上的模型”...

...数据库是真相的核心来源;管理页面从数据库中读取并向您显示数据。您可以编辑或添加或删除,这些操作会返回到数据库中。当您导航到索引页面时,想法是索引页面应该像管理页面一样进入数据库并获取值,只是索引页面可能会以不同的方式存储和使用它们

页面之间没有(需要)直接通信;通常页面独立查询和更新数据存储..

..即使他们不这样做,并且您有一些显示“所有产品列表”的索引页面,然后从中链接出来您可以“点击产品并查看其所有定价历史记录” ”,这并不意味着索引页面会下载“所有产品及其所有历史记录”,然后将“您单击的 product-with-history”提供给“显示历史记录的页面”

您可以下载一些“所有产品的列表”(只有产品,没有历史记录 - 它又小又快),当您点击一个产品时,您会只提供产品的 ID 到获取历史等的页面。然后该页面接近数据库以获取该产品的长期历史。这样可以避免索引页加载大量可能永远不需要的数据。

总而言之,您的下一步:查看管理页面如何从数据库中提取数据;使索引页以类似的方式拉动它..