DataverseModel Klasa
Protokół strukturalny umożliwiający przekazywanie typowanych wystąpień jednostek do records.create() i records.update().
Zaimplementuj ten protokół na dowolnej klasie jednostek (dataclass, modelu Pydantic, ręcznie rzutowanym), aby umożliwić przekazywanie go bezpośrednio do operacji CRUD bez określania nazwy tabeli lub ręcznego konwertowania na dykt.
Wymagane zmienne klasy:
__entity_logical_name__— Nazwa jednostki logicznej usługi Dataverse (np."account")__entity_set_name__— nazwa zestawu jednostek OData (np."accounts")
Wymagane metody wystąpienia:
to_dict()— zwraca ładunek rekordu jakodictfrom_dict(data)— klasamethod do odtworzenia z odpowiedzidict
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
Wysyłanie bezpośrednie (client.records.create(jednostka) bez nazwy tabeli
lub dict) nie jest jeszcze obsługiwany i zostanie dodany w przyszłej wersji.
Konstruktor
DataverseModel(*args, **kwargs)
Metody
| from_dict |
Rekonstruuj wystąpienie ze słownika odpowiedzi. |
| to_dict |
Zwróć ładunek rekordu jako zwykły słownik. |
from_dict
Rekonstruuj wystąpienie ze słownika odpowiedzi.
from_dict(data: dict) -> DataverseModel
Parametry
| Nazwa | Opis |
|---|---|
|
data
Wymagane
|
|
to_dict
Zwróć ładunek rekordu jako zwykły słownik.
to_dict() -> dict