DataverseModel Klass

Strukturellt protokoll som gör att typinstanser av entiteter kan skickas till records.create() och records.update().

Implementera det här protokollet på alla entitetsklasser (dataklass, pydantisk modell, handvalsade) så att det kan skickas direkt till CRUD-åtgärder utan att ange tabellnamnet eller konvertera till diktering manuellt.

Obligatoriska klassvariabler:

  • __entity_logical_name__ — Namn på logisk entitet i Dataverse (t.ex. "account")

  • __entity_set_name__ — Namn på OData-entitetsuppsättning (t.ex. "accounts")

Obligatoriska instansmetoder:

  • to_dict() — returnera postnyttolast som dict

  • from_dict(data) — classmethod att rekonstruera från ett svar 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

Direktsändning (client.records.create(entitet) utan tabellnamn

eller diktering) stöds inte ännu och kommer att läggas till i en framtida version.

Konstruktor

DataverseModel(*args, **kwargs)

Metoder

from_dict

Rekonstruera en instans från en svarsordlista.

to_dict

Returnera postens nyttolast som en oformaterad ordlista.

from_dict

Rekonstruera en instans från en svarsordlista.

from_dict(data: dict) -> DataverseModel

Parametrar

Name Description
data
Obligatorisk

to_dict

Returnera postens nyttolast som en oformaterad ordlista.

to_dict() -> dict