Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Perbarui definisi entitas yang ada dalam file konfigurasi penyusun API Data. Gunakan perintah ini untuk menyesuaikan metadata sumber, izin, paparan (REST/GraphQL), kebijakan, penembolokan, hubungan, pemetaan, dan metadata deskriptif untuk entitas yang ada.
Petunjuk / Saran
Gunakan dab add untuk membuat entitas baru, dan dab update untuk mengembangkannya. Untuk mengelola metadata bidang, gunakan --fields.name dengan --fields.alias, , --fields.descriptiondan --fields.primary-key.
Syntax
dab update <entity-name> [options]
Sekilas
| Option | Ringkasan |
|---|---|
<entity-name> |
Argumen posisi yang diperlukan. Nama entitas logis. |
-s, --source |
Nama tabel sumber, tampilan, atau prosedur tersimpan. |
-m, --map |
Pemetaan antara bidang database dan nama yang diekspos. |
--permissions |
Peran dan tindakan dalam role:actions format. |
--description |
Ganti deskripsi entitas. |
-c, --config |
Jalur ke file konfigurasi. Resolusi default berlaku jika dihilangkan. |
--help |
Tampilkan layar bantuan. |
--version |
Tampilkan informasi versi. |
Cache
| Option | Ringkasan |
|---|---|
--cache.enabled |
Mengaktifkan atau menonaktifkan penembolokan entitas. |
--cache.ttl |
Cache time-to-live dalam hitungan detik. |
Fields
| Option | Ringkasan |
|---|---|
--fields.exclude |
Daftar bidang yang dikecualikan yang dipisahkan koma. |
--fields.include |
Daftar bidang yang disertakan yang dipisahkan koma (* = semua). |
Metadata bidang
| Option | Ringkasan |
|---|---|
--fields.name |
Nama kolom database yang akan dijelaskan. |
--fields.alias |
Alias untuk bidang . |
--fields.description |
Deskripsi untuk bidang . |
--fields.primary-key |
Atur bidang ini sebagai kunci primer. |
GraphQL
| Option | Ringkasan |
|---|---|
--graphql |
Paparan GraphQL: false, true, singular, atau singular:plural. |
--graphql.operation |
Prosedur tersimpan saja: query atau mutation (mutasi default). |
Izin & Kebijakan
| Option | Ringkasan |
|---|---|
--permissions |
role:actions untuk satu peran. Jalankan beberapa kali untuk beberapa peran. |
--policy-database |
Filter gaya OData disuntikkan dalam kueri database. |
--policy-request |
Filter permintaan prabase. |
Hubungan
| Option | Ringkasan |
|---|---|
--relationship |
Nama hubungan. Gunakan dengan opsi hubungan. |
--cardinality |
Kardinalitas hubungan: one atau many. |
--target.entity |
Nama entitas target. |
--linking.object |
Menautkan objek untuk banyak ke banyak. |
--linking.source.fields |
Menautkan bidang objek yang menunjuk ke sumber. |
--linking.target.fields |
Menautkan bidang objek yang menunjuk ke target. |
--relationship.fields |
Pemetaan bidang untuk hubungan langsung. |
REST
| Option | Ringkasan |
|---|---|
--rest |
Paparan REST: false, true, atau jalur kustom. |
--rest.methods |
Prosedur tersimpan saja. Ganti kata kerja HTTP yang diizinkan. |
Pemetaan
| Option | Ringkasan |
|---|---|
-m, --map |
Pemetaan antara bidang database dan nama yang diekspos. |
MCP
| Option | Ringkasan |
|---|---|
--mcp.dml-tools |
Aktifkan atau nonaktifkan alat MCP DML untuk entitas ini. |
--mcp.custom-tool |
Aktifkan alat kustom MCP (hanya prosedur tersimpan). |
Sumber
| Option | Ringkasan |
|---|---|
-s, --source |
Nama objek database yang mendasar. |
--source.type |
Jenis sumber: table, view, atau stored-procedure. |
--source.params |
Nilai parameter default untuk prosedur tersimpan. |
--source.key-fields |
Bidang kunci primer untuk tampilan atau tabel. |
Parameter (prosedur tersimpan)
| Option | Ringkasan |
|---|---|
--parameters.name |
Daftar nama parameter yang dipisahkan koma. |
--parameters.description |
Daftar deskripsi parameter yang dipisahkan koma. |
--parameters.required |
Daftar bendera yang diperlukan yang dipisahkan koma. |
--parameters.default |
Daftar nilai default yang dipisahkan koma. |
--cache.enabled
Aktifkan atau nonaktifkan penembolokan untuk entitas ini.
Example
dab update \
Book \
--cache.enabled true
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"cache": {}
}
}
}
Nota
Saat penembolokan diaktifkan (default), CLI menulis objek kosong cache . Properti "enabled" hanya muncul secara eksplisit saat diatur ke false.
--cache.ttl
Atur cache time-to-live dalam hitungan detik. Hanya efektif jika penembolokan diaktifkan.
Example
dab update \
Book \
--cache.ttl 600
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"cache": {
"ttl-seconds": 600
}
}
}
}
Nota
Menyediakan TTL (time-to-live) ketika cache dinonaktifkan tidak berpengaruh sampai penembolokan diaktifkan.
--description
Ganti deskripsi entitas.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Book \
--description "Updated description"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"description": "Updated description"
}
}
}
--fields.exclude
Daftar bidang yang dipisahkan koma untuk dikecualikan.
Example
dab update \
Book \
--permissions "anonymous:read" \
--fields.exclude "internal_flag,secret_note"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"fields": {
"exclude": [ "internal_flag", "secret_note" ]
}
}
]
}
]
}
}
}
--fields.include
Daftar bidang yang dipisahkan koma untuk disertakan.
* mencakup semua bidang. Mengganti daftar sertakan yang sudah ada.
Example
dab update \
Book \
--permissions "anonymous:read" \
--fields.include "id,title,author"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"fields": {
"exclude": [],
"include": [ "id", "title", "author" ]
}
}
]
}
]
}
}
}
--graphql
Mengontrol paparan GraphQL.
Example
dab update \
Book \
--graphql book:books
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"graphql": {
"enabled": true,
"type": {
"singular": "book",
"plural": "books"
}
}
}
}
}
--graphql.operation
Prosedur tersimpan saja. Mengatur jenis operasi. Defaultnya adalah mutation.
Example
dab update \
RunReport \
--graphql.operation query
Konfigurasi yang dihasilkan
{
"entities": {
"RunReport": {
"graphql": {
"operation": "query"
}
}
}
}
Nota
Penyediaan --graphql.operation untuk tabel atau tampilan diabaikan.
--permissions
Menambahkan atau memperbarui izin untuk satu peran dan tindakannya.
Anda dapat menjalankan dab update beberapa kali (sekali per peran) untuk menambahkan beberapa peran.
Example
dab update \
Book \
--permissions "anonymous:read"
dab update \
Book \
--permissions "authenticated:create,read,update"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read"
}
]
},
{
"role": "authenticated",
"actions": [
{ "action": "create" },
{ "action": "read" },
{ "action": "update" }
]
}
]
}
}
}
Nota
Jika peran yang ditentukan sudah ada, tindakannya akan diperbarui; jika tidak, peran ditambahkan.
--policy-database
Filter gaya OData ditambahkan ke kueri database.
Example
dab update \
Book \
--permissions "anonymous:read" \
--policy-database "region eq 'US'"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"policy": {
"database": "region eq 'US'"
}
}
]
}
]
}
}
}
--policy-request
Kebijakan tingkat permintaan dievaluasi sebelum mencapai database.
Example
dab update \
Book \
--permissions "anonymous:read" \
--policy-request "@claims.role == 'admin'"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"permissions": [
{
"role": "anonymous",
"actions": [
{
"action": "read",
"policy": {
"request": "@claims.role == 'admin'"
}
}
]
}
]
}
}
}
--relationship
Tentukan atau perbarui hubungan. Gunakan dengan opsi hubungan lainnya.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
Konfigurasi yang dihasilkan
{
"entities": {
"User": {
"relationships": {
"profile": {
"cardinality": "one",
"target.entity": "Profile",
"source.fields": [ "id" ],
"target.fields": [ "user_id" ],
"linking.source.fields": [],
"linking.target.fields": []
}
}
}
}
}
--cardinality
Kardinalitas untuk hubungan. Gunakan dengan --relationship.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
--target.entity
Nama entitas target untuk hubungan. Gunakan dengan --relationship.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
--linking.object
Banyak-ke-banyak saja. Nama objek database yang akan digunakan sebagai objek penautan.
Example
dab update \
Book \
--relationship books_authors \
--target.entity Author \
--cardinality many \
--relationship.fields "id:id" \
--linking.object dbo.books_authors \
--linking.source.fields book_id \
--linking.target.fields author_id
--linking.source.fields
Banyak-ke-banyak saja. Daftar bidang objek penautan yang dipisahkan koma yang menunjuk ke entitas sumber.
Example
dab update \
Book \
--relationship books_authors \
--target.entity Author \
--cardinality many \
--relationship.fields "id:id" \
--linking.object dbo.books_authors \
--linking.source.fields book_id \
--linking.target.fields author_id
--linking.target.fields
Banyak-ke-banyak saja. Daftar bidang objek penautan yang dipisahkan koma yang menunjuk ke entitas target.
Example
dab update \
Book \
--relationship books_authors \
--target.entity Author \
--cardinality many \
--relationship.fields "id:id" \
--linking.object dbo.books_authors \
--linking.source.fields book_id \
--linking.target.fields author_id
--relationship.fields
Pemetaan bidang yang dipisahkan titik dua untuk hubungan langsung.
Nilainya --relationship.fields adalah daftar pasangan yang sourceField:targetField dipisahkan koma.
Example
dab update \
User \
--relationship profile \
--target.entity Profile \
--cardinality one \
--relationship.fields "id:user_id"
Konfigurasi yang dihasilkan
{
"entities": {
"User": {
"relationships": {
"profile": {
"cardinality": "one",
"target.entity": "Profile",
"source.fields": [ "id" ],
"target.fields": [ "user_id" ],
"linking.source.fields": [],
"linking.target.fields": []
}
}
}
}
}
--rest
Mengontrol paparan REST.
Example
dab update \
Book \
--rest BooksApi
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"rest": {
"enabled": true,
"path": "/BooksApi"
}
}
}
}
--rest.methods
Prosedur tersimpan saja. Ganti metode HTTP yang diizinkan. Default ke POST.
Example
dab update \
RunReport \
--rest true \
--rest.methods GET,POST
Konfigurasi yang dihasilkan
{
"entities": {
"RunReport": {
"rest": {
"enabled": true,
"methods": [ "get", "post" ]
}
}
}
}
Nota
Penyediaan --rest.methods saat REST dinonaktifkan tidak berpengaruh.
-s, --source
Perbarui objek database yang mendasar.
Example
dab update \
Book \
--source dbo.Books
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"source": {
"object": "dbo.Books",
"type": "table"
}
}
}
}
--source.type
Ubah jenis objek sumber.
Nota
Tampilan memerlukan --source.key-fields. Mengubah menjadi view tanpa menentukan bidang kunci menghasilkan kesalahan.
Example
dab update \
Book \
--source.type view \
--source.key-fields "id"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"source": {
"type": "view",
"object": "Book"
},
"fields": [
{
"name": "id",
"primary-key": true
}
]
}
}
}
--source.params
Prosedur tersimpan saja. Nilai parameter default sebagai name:value pasangan.
Example
dab update \
RunReport \
--source.params "startDate:2024-01-01,endDate:2024-12-31"
Konfigurasi yang dihasilkan
{
"entities": {
"RunReport": {
"source": {
"type": "stored-procedure",
"parameters": [
{
"name": "startDate",
"required": false,
"default": "2024-01-01"
},
{
"name": "endDate",
"required": false,
"default": "2024-12-31"
}
]
}
}
}
}
--source.key-fields
Tentukan bidang kunci primer untuk tampilan atau tabel tanpa kunci yang disimpulkan.
Example
dab update \
Book \
--source.type view \
--source.key-fields "id"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"source": {
"type": "view",
"object": "Book"
},
"fields": [
{
"name": "id",
"primary-key": true
}
]
}
}
}
Nota
Tampilan selalu memerlukan bidang kunci. Opsi --source.key-fields menambahkan entri ke fields array dengan "primary-key": true.
-m, --map
Tentukan pemetaan antara nama kolom database dan nama bidang REST/GraphQL yang diekspos.
Example
dab update \
Book \
--map "id:bookId,title:bookTitle"
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"fields": [
{
"name": "id",
"alias": "bookId",
"primary-key": false
},
{
"name": "title",
"alias": "bookTitle",
"primary-key": false
}
]
}
}
}
Nota
Opsi --map membuat entri dalam fields array dengan alias kumpulan properti.
--parameters.name
Prosedur tersimpan saja. Daftar nama parameter yang dipisahkan koma.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Petunjuk / Saran
Untuk menentukan parameter prosedur tersimpan, gunakan --parameters.name dengan --parameters.description, --parameters.required, dan --parameters.default.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "StartDate,EndDate" \
--parameters.required "true,true" \
--parameters.description "Beginning of date range,End of date range"
Konfigurasi yang dihasilkan
{
"entities": {
"GetOrdersByDateRange": {
"source": {
"parameters": [
{
"name": "StartDate",
"description": "Beginning of date range",
"required": true
},
{
"name": "EndDate",
"description": "End of date range",
"required": true
}
]
}
}
}
}
--parameters.description
Prosedur tersimpan saja. Daftar deskripsi parameter yang dipisahkan koma yang selaras dengan --parameters.name.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "StartDate,EndDate" \
--parameters.description "Beginning of date range,End of date range"
--parameters.required
Prosedur tersimpan saja. Daftar nilai yang true/false dipisahkan koma yang diratakan ke .--parameters.name
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "StartDate,EndDate" \
--parameters.required "true,true"
--parameters.default
Prosedur tersimpan saja. Daftar nilai default yang dipisahkan koma yang diratakan ke --parameters.name.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
GetOrdersByDateRange \
--parameters.name "CustomerID" \
--parameters.default "null"
--fields.name
Nama kolom database yang akan dijelaskan.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Products \
--fields.name Id \
--fields.primary-key true \
--fields.description "Product Id"
Konfigurasi yang dihasilkan
{
"entities": {
"Products": {
"fields": [
{
"name": "Id",
"description": "Product Id",
"primary-key": true
}
]
}
}
}
--fields.alias
Alias untuk bidang . Gunakan daftar yang dipisahkan koma yang diratakan ke --fields.name.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Petunjuk / Saran
Gunakan --fields.alias dengan --fields.name untuk menentukan nama bidang yang diekspos.
Example
dab update \
Products \
--fields.name "Id,Title" \
--fields.alias "product_id,product_title"
--fields.description
Deskripsi untuk bidang . Gunakan daftar yang dipisahkan koma yang diratakan ke --fields.name.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Products \
--fields.name Id \
--fields.description "Product Id"
--fields.primary-key
Bendera kunci utama untuk bidang . Gunakan daftar true/false nilai yang dipisahkan koma yang diratakan ke .--fields.name
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Petunjuk / Saran
Gunakan --fields.primary-key dengan --fields.name untuk menentukan bidang kunci utama untuk tampilan atau tabel tanpa kunci yang disimpulkan.
Example
dab update \
SalesSummary \
--fields.name "year,region" \
--fields.primary-key "true,true"
Konfigurasi yang dihasilkan
{
"entities": {
"SalesSummary": {
"fields": [
{
"name": "year",
"primary-key": true
},
{
"name": "region",
"primary-key": true
}
]
}
}
}
--mcp.dml-tools
Aktifkan atau nonaktifkan alat MCP DML (bahasa manipulasi data) untuk entitas ini. Defaultnya adalah true.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
Book \
--mcp.dml-tools false
Konfigurasi yang dihasilkan
{
"entities": {
"Book": {
"mcp": {
"dml-tools": false
}
}
}
}
Nota
Saat --mcp.dml-tools digunakan, atur mcp menggunakan formulir objek sehingga konfigurasinya eksplisit.
--mcp.custom-tool
Prosedur tersimpan saja. Aktifkan alat kustom MCP untuk entitas ini. Defaultnya adalah false.
Nota
Opsi ini tersedia di 2.0.0-rc CLI. Penyusun API Data 2.0 saat ini dalam pratinjau. Instal dengan dotnet tool install microsoft.dataapibuilder --version 2.0.0-rc --prerelease.
Example
dab update \
RunReport \
--mcp.custom-tool true
Konfigurasi yang dihasilkan
{
"entities": {
"RunReport": {
"mcp": {
"custom-tool": true
}
}
}
}
-c, --config
Jalur ke file konfigurasi.
Example
dab update \
Book \
--description "Updated description" \
--config dab-config.json
--help
Tampilkan layar bantuan.
Example
dab update --help
--version
Tampilkan informasi versi.
Example
dab update --version
Penting
Mengubah tipe sumber dapat membatalkan properti lain. Misalnya, tampilan selalu memerlukan bidang kunci; prosedur tersimpan tidak dapat menentukan bidang kunci.