Freigeben über


Item class

Wird verwendet, um Vorgänge für ein bestimmtes Element auszuführen.

Siehe Elemente für Vorgänge für alle Elemente; siehe container.items.

Eigenschaften

container
id
url

Gibt eine Verweis-URL für die Ressource zurück. Wird zum Verknüpfen in Berechtigungen verwendet.

Methoden

delete<T>(RequestOptions)

Das Element löschen.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen.

Beispiel

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();

await container.item("id").delete<TodoItem>();
patch<T>(PatchRequestBody, RequestOptions)

Führen Sie ein JSONPatch für das Element aus.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen.

Beispiel

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();

const { resource: patchedItem } = await container.item("id").patch<TodoItem>([
  {
    op: "replace", // Operation type (can be replace, add, remove, set, incr)
    path: "/title", // The path to the property to update
    value: "new-title", // New value for the property
  },
  {
    op: "remove",
    path: "/done",
  },
]);
read<T>(RequestOptions)

Lesen Sie die Definition des Elements.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen. Wenn der Typ "T" eine Klasse ist, werden typeof Vergleiche nicht übergeben, da er keinen Übereinstimmungsprototyp aufweist. Es wird empfohlen, nur Schnittstellen zu verwenden.

Es gibt kein Festgelegtes Schema für JSON-Elemente. Sie können eine beliebige Anzahl von benutzerdefinierten Eigenschaften enthalten.

Beispiel

Verwenden eines benutzerdefinierten Typs für die Antwort

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();
replace(ItemDefinition, RequestOptions)

Ersetzen Sie die Definition des Elements.

Es gibt kein Festgelegtes Schema für JSON-Elemente. Sie können eine beliebige Anzahl von benutzerdefinierten Eigenschaften enthalten.

Beispiel

import { CosmosClient, ItemDefinition } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const item: ItemDefinition = {
  id: "id",
  title: "new_title",
};

const { resource: replacedItem } = await container.item("id").replace(item);
replace<T>(T, RequestOptions)

Ersetzen Sie die Definition des Elements.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen.

Es gibt kein Festgelegtes Schema für JSON-Elemente. Sie können eine beliebige Anzahl von benutzerdefinierten Eigenschaften enthalten.

Beispiel

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();

item.done = true;
const { resource: replacedItem } = await container.item("id").replace<TodoItem>(item);

Details zur Eigenschaft

container

container: Container

Eigenschaftswert

id

id: string

Eigenschaftswert

string

url

Gibt eine Verweis-URL für die Ressource zurück. Wird zum Verknüpfen in Berechtigungen verwendet.

string url

Eigenschaftswert

string

Details zur Methode

delete<T>(RequestOptions)

Das Element löschen.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen.

Beispiel

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();

await container.item("id").delete<TodoItem>();
function delete<T>(options?: RequestOptions): Promise<ItemResponse<T>>

Parameter

options
RequestOptions

Zusätzliche Optionen für die Anforderung

Gibt zurück

Promise<ItemResponse<T>>

patch<T>(PatchRequestBody, RequestOptions)

Führen Sie ein JSONPatch für das Element aus.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen.

Beispiel

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();

const { resource: patchedItem } = await container.item("id").patch<TodoItem>([
  {
    op: "replace", // Operation type (can be replace, add, remove, set, incr)
    path: "/title", // The path to the property to update
    value: "new-title", // New value for the property
  },
  {
    op: "remove",
    path: "/done",
  },
]);
function patch<T>(body: PatchRequestBody, options?: RequestOptions): Promise<ItemResponse<T>>

Parameter

options
RequestOptions

Zusätzliche Optionen für die Anforderung

Gibt zurück

Promise<ItemResponse<T>>

read<T>(RequestOptions)

Lesen Sie die Definition des Elements.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen. Wenn der Typ "T" eine Klasse ist, werden typeof Vergleiche nicht übergeben, da er keinen Übereinstimmungsprototyp aufweist. Es wird empfohlen, nur Schnittstellen zu verwenden.

Es gibt kein Festgelegtes Schema für JSON-Elemente. Sie können eine beliebige Anzahl von benutzerdefinierten Eigenschaften enthalten.

Beispiel

Verwenden eines benutzerdefinierten Typs für die Antwort

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();
function read<T>(options?: RequestOptions): Promise<ItemResponse<T>>

Parameter

options
RequestOptions

Zusätzliche Optionen für die Anforderung

Gibt zurück

Promise<ItemResponse<T>>

replace(ItemDefinition, RequestOptions)

Ersetzen Sie die Definition des Elements.

Es gibt kein Festgelegtes Schema für JSON-Elemente. Sie können eine beliebige Anzahl von benutzerdefinierten Eigenschaften enthalten.

Beispiel

import { CosmosClient, ItemDefinition } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const item: ItemDefinition = {
  id: "id",
  title: "new_title",
};

const { resource: replacedItem } = await container.item("id").replace(item);
function replace(body: ItemDefinition, options?: RequestOptions): Promise<ItemResponse<ItemDefinition>>

Parameter

body
ItemDefinition

Die Definition, durch die die vorhandene Elementdefinitionersetzt werden soll.

options
RequestOptions

Zusätzliche Optionen für die Anforderung

Gibt zurück

replace<T>(T, RequestOptions)

Ersetzen Sie die Definition des Elements.

Jeder bereitgestellte Typ T wird nicht unbedingt vom SDK erzwungen. Möglicherweise erhalten Sie mehr oder weniger Eigenschaften, und es liegt an Ihrer Logik, sie zu erzwingen.

Es gibt kein Festgelegtes Schema für JSON-Elemente. Sie können eine beliebige Anzahl von benutzerdefinierten Eigenschaften enthalten.

Beispiel

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

interface TodoItem {
  title: string;
  done: boolean;
  id: string;
}

const { resource: item } = await container.item("id", "<pkValue>").read<TodoItem>();

item.done = true;
const { resource: replacedItem } = await container.item("id").replace<TodoItem>(item);
function replace<T>(body: T, options?: RequestOptions): Promise<ItemResponse<T>>

Parameter

body

T

Die Definition, durch die die vorhandene Elementdefinitionersetzt werden soll.

options
RequestOptions

Zusätzliche Optionen für die Anforderung

Gibt zurück

Promise<ItemResponse<T>>