Blazor中最佳的页面初始化方法是使用OnInitializedAsync()生命周期方法,该方法在组件首次渲染前被调用。在该方法中,可以使用异步方式调用数据库并初始化页面。
以下是一个示例代码,该代码在页面初始化时使用MySqlConnection类从MySQL数据库中获取数据:
@page "/mycomponent"
@inject MySqlConnection dbConnection
@code {
protected override async Task OnInitializedAsync()
{
var query = "SELECT * FROM my_table";
using (var cmd = new MySqlCommand(query, dbConnection))
{
var dataReader = await cmd.ExecuteReaderAsync();
while (await dataReader.ReadAsync())
{
// process data
}
}
}
}
需要注意的是,在使用数据库之前,需要先通过依赖注入将数据库连接注入到Blazor组件中。在上述代码中,我们使用@inject指令将MySqlConnection类注入到MyComponent组件中,以便在OnInitializedAsync()方法中访问数据库。