web-dev-qa-db-fra.com

Comment connecter blazor webassembly à la base de données

J'ai récemment commencé à développer une application Blazor Webassembly, et je règle maintenant sur une connexion de base de données.

Toutes les leçons et les instructions disent que vous devez entrer des informations dans le fichier startup.cs et appsettages.json, mais ces fichiers ne sont pas dans le projet.

Je ne comprends pas. Dans Blazor Webassembly, n'y a-t-il aucun moyen de se connecter à la DB?

Pas directement. Blazor Webassembly est un cadre frontal. Vous devez créer un contrôleur API pour envelopper votre connexion de base de données et utiliser httpClient pour appeler l'API. Une façon directe de le faire est d'utiliser un contrôleur API Web ASP.NET CORE WEB ENVOYAGE D'UNE COUR DE DONT DE BASE DE BASE DE BASE DE CORET D'ENTENDIE.

@inject HttpClient Http
<template_html_here/>
    @code 
    {
         protected override async Task OnInitializedAsync()
        {
            products = await Http.GetFromJsonAsync<Product[]>("api/Products");
        }
    }

Manette:

 [ApiController]
 [Route("api/[controller]")]
 public class ProductsController : ControllerBase
    {
       
        private readonly ProductsDbContext _context; // your database context

        public ProductsController(ProductsDbContext context)
        {
            _context = context;
        }

        [HttpGet]
        public IEnumerable<Product> Get()
        {
           return _context.Products.ToList();
        }
    }

Vous pouvez en savoir plus sur Blazor à https://docs.microsoft.com/en-us/aspnet/core/blazor/call-web-api?view=aspnetcore-3.1 . Et sur ASP.NET CORE WEB API sur https://docs.microsoft.com/en-us/aspnet/core/taturials/first-web-api?view=aspnetcore-3.1&tabs=visual-studio .

5
codinbear107

Si vous vous référez au stockage local (stockage de navigateur), alors ce composant par Chris Sainty pourrait vous aider.

Toutefois, si vous recherchez une connexion à une base de données comme un serveur SQL ou un stockage de document comme Mongo, il ne peut pas être effectué directement.

Blazor Wasm est pour le développement frontal. Vous devrez appeler des API Web qui se connectent aux bases de données stockées sur des serveurs.

0
CobyC