DataverseModel Classe

Protocolo estrutural que permite a passagem de instâncias de entidades tipadas para records.create() e records.update().

Implemente este Protocolo em qualquer classe de entidade (dataclass, modelo Pydantic, rolled manualmente) para permitir que seja passado diretamente para operações CRUD sem especificar o nome da tabela ou converter manualmente para dit.

Variáveis de classe obrigatórias:

  • __entity_logical_name__— Nome da entidade lógica do Dataverse (por exemplo) "account"

  • __entity_set_name__ — Nome do conjunto da entidade OData (por exemplo, "accounts")

Métodos de instância obrigatórios:

  • to_dict() — devolver carga útil de registo como dict

  • from_dict(data) — método de classe para reconstruir a partir de uma resposta dict

Example:


   from dataclasses import dataclass
   from PowerPlatform.Dataverse import DataverseModel

   @dataclass
   class Account:
       __entity_logical_name__ = "account"
       __entity_set_name__ = "accounts"
       name: str = ""
       telephone1: str = ""

       def to_dict(self) -> dict:
           return {"name": self.name, "telephone1": self.telephone1}

       @classmethod
       def from_dict(cls, data: dict) -> "Account":
           return cls(
               name=data.get("name", ""),
               telephone1=data.get("telephone1", ""),
           )

   # isinstance() works today — Protocol is runtime_checkable:
   assert isinstance(Account(), DataverseModel)

   # Type your own helpers against the Protocol now:
   def save(entity: DataverseModel) -> None:
       data = entity.to_dict()
       client.records.create(entity.__entity_logical_name__, data)

Note

Despacho direto (client.records.create(entity) sem nome de tabela

ou DICT) ainda não é suportado e será adicionado numa versão futura.

Construtor

DataverseModel(*args, **kwargs)

Métodos

from_dict

Reconstrua uma instância a partir de um dicionário de respostas.

to_dict

Devolva a carga útil do registo como um dicionário simples.

from_dict

Reconstrua uma instância a partir de um dicionário de respostas.

from_dict(data: dict) -> DataverseModel

Parâmetros

Name Description
data
Necessário

to_dict

Devolva a carga útil do registo como um dicionário simples.

to_dict() -> dict