mirror of https://github.com/abpframework/abp.git
csharpabpc-sharpframeworkblazoraspnet-coredotnet-coreaspnetcorearchitecturesaasdomain-driven-designangularmulti-tenancy
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Branch:
TimezoneHelpText
10.0-ai-docs
2024-06-21-Use_User-Defined_Function_Mapping_For_Global_Filter
8.0-prevent-stackoverflow-blazor
8.2-landing-page
9.0-clear-breadcrumbs
BackgroundJob-ApplicationName-Test
Blazorise-Form-Submit
EngincanV-patch-1
EngincanV/maui-docs
EngincanV/modular-monolith-tutorials
EngincanV/rba-docs
EngincanV/update-leptonx-docs
EngincanV/update-tui-editor
ExtensionPropertyPolicy-Test
IApplicationConfigurationContributor
IGuidGenerator
IReadOnlyAppService
InboxProcessor-OutboxSender
InteractiveServerRenderMode(prerender-true)
Issue-#23338
LockoutEnd-Time
MaxTypeFullNameLength
Prevent-Privilege-Escalation
RandomHelper
Shared-User-Account
Testcontainers
Theme-Async
TimezoneHelpText
X509KeyStorageFlags
abp-release-post
abp-searching
abp-studio/issue/2891
abp-united-pre-merge
add-loading-component
advanced-features
article/angular-multithreading
auto-merge/prerel-8-2/2729
auto-merge/prerel-9-0/3134
auto-merge/prerel-9-0/3181
auto-merge/rel-0-0/42712
auto-merge/rel-0-0/42712-1
auto-merge/rel-10-0/4007
auto-merge/rel-10-0/4064
auto-merge/rel-10-0/4133
auto-merge/rel-10-1/4237
auto-merge/rel-7-4/2239
auto-merge/rel-7-4/2263
auto-merge/rel-7-4/2276
auto-merge/rel-8-0/2472
auto-merge/rel-8-0/2715
auto-merge/rel-8-0/2741
auto-merge/rel-8-1/2527
auto-merge/rel-8-2/2851
auto-merge/rel-8-3/3151
auto-merge/rel-9-0/3296
auto-merge/rel-9-0/3304
auto-merge/rel-9-1/3656
auto-merge/rel-9-2/3571
auto-merge/rel-9-2/3652
aws-service-url
before-net10
blazor-full-stack-web-ui-interactiveauto
blazor-full-stack-web-ui-interactiveauto-modified
clear-breadcrumbs
cmskit-cache
copilot/sub-pr-24469
copilot/sub-pr-24636
data-collection-code-review-2
data-collection-review-3
data-collection-review-5
dev
devnot-demo
dgnyldrm7-patch-1
docs-fix
docs-preview-8.3
docs-test-1
docs-unification
docs-unification-1-enhancements
docs/studio-2.1.5
document-abp-run-watch-command
document-index-backgroundjob
documentation/#20827-modular-monolith-application
documentation/#24783-hybrid-localization
documentation/20827
documentation/abp-extensible-form-doc
documentation/angular-dynamic-form-module
ebicoglu-patch-1
ebicoglu-patch-2
enisn-patch-1
enisn/blobstoring-bunnycdn
feat/#23955
feat/dynamic-form-component
feat/mudblazor
feat/mudblazor-mix
feat/typescript-on-mvc
feature/#19594
feature/#23180
feature/data-collection
feature/logo-provider
feature/ssr-migration-schematic
fix-admin-docs-test
fix/#20241
fix/#23795
fix/permission-modal-grant-all-indeterminate-state
fullstackblazor
gizem/HTML-encode-TagHelper-xss-test
gizem/security-logs
halil-presentation-2024-05
hybrid-ui
hybrid-ui-embedding
ingress-nginx/ingress-nginx
issue-#23231
issue-#3417
issue-#3591
issue-#3596
issue-#6679
issue-#6768
issue-18421
issue-19307
issue-20436
issue-20924-2
issue-21015
issue-22408
issue-23113
issue-23231
issue-23231-v2
issue-23286
issue-24272
issue-24438-test
issue-24635-test
issue-24672
issue-24673
issue-24674
issue-24674-2
issue-24714
issue-2884
issue-3384/L
issue-3596
issue-3870/L
issue-5131
issue-5384
issue-volo-21285
issue-vs-7809
issue/22675
issue/abp-ng-upgrade
issue/assign-available-port-for-suite
issue/cms-kit-angular
issue/updateAngularInstallers
jquery-form
leptonx-versions
license-banner-localization
license-banner-localization-1
local-ref-basic-theme
maliming-patch-1
maliming-patch-2
maliming-patch-4
maliming/ParameterApiDescriptionModel
maliming/ShouldValidatePredicates
mansur-vs-internal-#7864
mauiglobalbundle
migrating-abp-packages/core
migrating-abp-packages/identity
migrating-abp-packages/setting-management
migrating-abp-packages/tenant-management
migrating-abp-packages/theme-shared
oauth2-redirect.html
pr/2526
pr/6814
prerel-9.0
rc-tests
rel-1.0
rel-1.1
rel-10.0
rel-10.1
rel-2.0
rel-2.1
rel-2.2
rel-2.3
rel-2.4
rel-2.5
rel-2.6
rel-2.7
rel-2.8
rel-2.9
rel-3.0
rel-3.1
rel-3.2
rel-3.3
rel-4.0
rel-4.1
rel-4.2
rel-4.3
rel-4.4
rel-5.0
rel-5.1
rel-5.2
rel-5.3
rel-6.0
rel-7.0
rel-7.1
rel-7.2
rel-7.3
rel-7.4
rel-8.0
rel-8.1
rel-8.2
rel-8.3
rel-9.0
rel-9.1
rel-9.2
rel-9.3
remove-deprecateds
return-code-vs-exception-article
revert-18876-blazor-full-stack-web-ui
revert-20264-EngincanV/cli-old-vs-new
revert-23436-Mapperly-maliming
salihozkara-patch-1
salihozkara-patch-2
salihozkara/ImproveBundleFile
salihozkara/blazorise-validation-message
salihozkara/complex-property
salihozkara/fix-image
salihozkara/fixDatePicker
salihozkara/mapperly-test
skoc10-patch-1
social-login-usages
studio-custom-command-doc
studio-document-start-and-wait
template-config-provider
templates-version
test-branch-24299
update-bundle
update-cli-docs
update-doc
update-latest-versions-7.4.3
update-latest-versions-8.1.2
update-latest-versions-8.1.5
update-latest-versions-8.2.3
update-latest-versions-9.0.7
update-latest-versions-9.1.0
update-upgrade-cod-23-08-2024
upgrade-command-doc
vsInternal-viewcChangeHistory-localization
vsinternal-7565
zh-hans.json
ìssue-17361
0.10.0
0.11.0
0.12.0
0.13.0
0.14.0
0.15.0
0.16.0
0.17.0.0
0.18.0
0.18.1
0.19.0
0.20.0
0.20.1
0.21.0
0.22.0
0.3.7
0.4.0
0.4.1
0.4.1.1
0.5.0
0.6.0
0.6.1
0.7.0
0.7.1
0.8.0
0.9.0
1.0.0
1.0.2
1.1.0
1.1.1
1.1.2
10.0.0
10.0.0-rc.1
10.0.0-rc.2
10.0.0-rc.3
10.0.1
10.0.2
10.0.3
10.1.0-rc.1
10.1.0-rc.2
2.0.0
2.0.1
2.1.0
2.1.1
2.2.0
2.2.1
2.3
2.3.0
2.4.0
2.4.1
2.5.0
2.6.0
2.6.1
2.6.2
2.7.0
2.8.0
2.9.0
3.0.0
3.0.1
3.0.2
3.0.3
3.0.4
3.0.5
3.1.0
3.1.0-rc.1
3.1.0-rc.2
3.1.0-rc.3
3.1.0-rc.4
3.1.1
3.1.2
3.2.0
3.2.0-rc.1
3.2.0-rc.2
3.2.1
3.3.0
3.3.0-rc.1
3.3.0-rc.2
3.3.1
3.3.2
4.0.0
4.0.0-rc.1
4.0.0-rc.2
4.0.0-rc.3
4.0.0-rc.4
4.0.0-rc.5
4.0.1
4.0.2
4.1.0
4.1.0-rc.1
4.1.0-rc.2
4.1.1
4.1.2
4.2.0
4.2.0-rc.1
4.2.0-rc.2
4.2.1
4.2.2
4.3.0
4.3.0-rc.1
4.3.0-rc.2
4.3.1
4.3.2
4.3.3
4.4.0
4.4.0-rc.1
4.4.0-rc.2
4.4.1
4.4.2
4.4.3
4.4.4
5.0.0
5.0.0-beta.1
5.0.0-beta.2
5.0.0-beta.3
5.0.0-rc.1
5.0.0-rc.2
5.0.1
5.0.2
5.1.0
5.1.1
5.1.2
5.1.3
5.1.4
5.2.0
5.2.0-rc.1
5.2.0-rc.2
5.2.1
5.2.2
5.3.0
5.3.0-rc.1
5.3.0-rc.2
5.3.0-rc.3
5.3.1
5.3.2
5.3.3
5.3.4
5.3.5
6.0.0
6.0.0-rc.1
6.0.0-rc.2
6.0.0-rc.3
6.0.0-rc.4
6.0.0-rc.5
6.0.1
6.0.2
6.0.3
7.0.0
7.0.0-rc.1
7.0.0-rc.2
7.0.0-rc.3
7.0.0-rc.4
7.0.0-rc.5
7.0.0-rc.6
7.0.1
7.0.2
7.0.3
7.1.0
7.1.0-rc.1
7.1.0-rc.2
7.1.0-rc.3
7.1.1
7.2.0-rc.1
7.2.0-rc.2
7.2.1
7.2.2
7.2.3
7.3.0
7.3.0-rc.1
7.3.0-rc.2
7.3.0-rc.3
7.3.1
7.3.2
7.3.3
7.4.0
7.4.0-rc.1
7.4.0-rc.2
7.4.0-rc.3
7.4.0-rc.4
7.4.0-rc.5
7.4.1
7.4.2
7.4.3
7.4.4
7.4.5
8.0.0
8.0.0-rc.1
8.0.0-rc.2
8.0.0-rc.3
8.0.1
8.0.2
8.0.3
8.0.4
8.0.5
8.0.6
8.1.0
8.1.0-rc.1
8.1.0-rc.2
8.1.0-rc.3
8.1.0-rc.4
8.1.1
8.1.2
8.1.3
8.1.4
8.1.5
8.2.0
8.2.0-rc.1
8.2.0-rc.2
8.2.0-rc.3
8.2.0-rc.4
8.2.0-rc.5
8.2.1
8.2.2
8.2.3
8.3.0
8.3.0-rc.1
8.3.0-rc.2
8.3.0-rc.3
8.3.1
8.3.2
8.3.3
8.3.4
9.0.0
9.0.0-rc.1
9.0.0-rc.2
9.0.0-rc.3
9.0.1
9.0.2
9.0.3
9.0.4
9.0.5
9.0.6
9.0.7
9.0.8
9.1.0
9.1.0-rc.1
9.1.0-rc.2
9.1.0-rc.3
9.1.1
9.1.2
9.1.3
9.2.0
9.2.0-rc.1
9.2.0-rc.2
9.2.0-rc.3
9.2.0-rc.4
9.2.1
9.2.2
9.2.3
9.2.4
9.3.0
9.3.0-rc.1
9.3.0-rc.2
9.3.0-rc.3
9.3.0-rc.4
9.3.1
9.3.2
9.3.3
9.3.4
9.3.5
9.3.6
9.3.7
v0.3.1
v0.3.2
v0.3.2.1
v0.3.2.2
v0.3.3
v0.3.3.1
v0.3.3.2
v0.3.4
v0.3.5
v0.3.6
v0.6.2
v1.1.1
v9.2.0-preview
${ noResults }
3.5 KiB
3.5 KiB
BLOB Storing Azure提供程序
BLOB存储Azure提供程序可以将BLOB存储在Azure Blob storage中.
阅读BLOB存储文档了解如何使用BLOB存储系统. 本文档仅介绍如何为容器配置Azure提供程序.
安装
使用ABP CLI添加Volo.Abp.BlobStoring.AzureNuGet包到你的项目:
- 安装 ABP CLI, 如果你还没有安装.
- 在要添加
Volo.Abp.BlobStoring.Azure包的.csproj文件目录打开命令行. - 运行
Volo.Abp.BlobStoring.Azure命令.
如果要手动安装,在你的项目中安装 Volo.Abp.BlobStoring.Azure NuGet包然后将[DependsOn(typeof(AbpBlobStoringAzureModule))]添加到项目内的ABP模块类中.
配置
如同BLOB存储文档所述,配置是在模块类的 ConfigureServices 方法完成的.
示例: 配置为默认使用Azure存储提供程序
Configure<AbpBlobStoringOptions>(options =>
{
options.Containers.ConfigureDefault(container =>
{
container.UseAzure(azure =>
{
azure.ConnectionString = "your azure connection string";
azure.ContainerName = "your azure container name";
azure.CreateContainerIfNotExists = true;
});
});
});
参阅BLOB存储文档 学习如何为指定容器配置提供程序.
选项
- ConnectionString (string): 连接字符串包括应用程序在运行时使用共享密钥授权访问Azure存储帐户中的数据所需的授权信息. 请参考Azure文档.
- ContainerName (string): 你可以在azure中指定容器名称. 如果没有指定它将使用
BlobContainerName属性定义的BLOB容器的名称(请参阅BLOB存储文档). 请注意Azure有一些命名容器的规则,容器名称必须是有效的DNS名称,符合以下命名规则:- 容器名称必须以字母或数字开头或结尾,并且只能包含字母,数字和破折号(-)字符.
- 每个破折号(-)必须紧跟在字母或数字之后;容器名称中不允许使用连续的破折号.
- 容器名称中的所有字母都必须小写.
- 容器名称的长度必须在3到63个字符之间.
- CreateContainerIfNotExists (bool): 默认值为
false, 如果azure中不存在容器,AzureBlobProvider将尝试创建它.
Azure BLOB 名称计算器
Azure BLOB提供程序组织BLOB名称并实现一些约定. 默认情况下BLOB的全名由以下规则确定:
- 如果当前租户为
null(或容器禁用多租户 - 请参阅BLOB存储文档 了解如何禁用容器的多租户),则追加host字符串. - 如果当前租户不为
null,则追加tenants/<tenant-id>字符串. - 追加 BLOB 名称.
其他服务
AzureBlobProvider是实现Azure BLOB存储提供程序的主要服务,如果你想要通过依赖注入覆盖/替换它(不要替换IBlobProvider接口,而是替换AzureBlobProvider类).IAzureBlobNameCalculator服务用于计算文件路径. 默认实现是DefaultAzureBlobNameCalculator. 如果你想自定义文件路径计算,可以替换/覆盖它.