Browse Source

Merge branch 'dev' into liangshiwei/efcore-extension

pull/8898/head
liangshiwei 5 years ago
parent
commit
0335547a1e
  1. 5
      .gitignore
  2. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/fr.json
  3. 14
      abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/hi.json
  4. 14
      abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/it.json
  5. 30
      abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/fr.json
  6. 282
      abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/hi.json
  7. 282
      abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/it.json
  8. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/fr.json
  9. 37
      abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/hi.json
  10. 37
      abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/it.json
  11. 30
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en-GB.json
  12. 30
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json
  13. 38
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fr.json
  14. 296
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hi.json
  15. 296
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/it.json
  16. 30
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json
  17. 36
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json
  18. 294
      abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hant.json
  19. 2
      abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/fr.json
  20. 147
      abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/hi.json
  21. 147
      abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/it.json
  22. 37
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en-GB.json
  23. 41
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json
  24. 36
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/fr.json
  25. 202
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hi.json
  26. 202
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/it.json
  27. 37
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json
  28. 35
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hans.json
  29. 37
      abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hant.json
  30. 36
      docs/en/Authorization.md
  31. 86
      docs/en/Blog-Posts/2021-04-05 CmsKit/POST.md
  32. BIN
      docs/en/Blog-Posts/2021-04-05 CmsKit/cms-kit-menu.png
  33. 22
      docs/en/Community-Articles/2021-03-12-Simple-SignalR-Notification/POST.md
  34. 61
      docs/en/Entity-Framework-Core-Migrations.md
  35. 34
      docs/en/Entity-Framework-Core.md
  36. 4
      docs/en/Features.md
  37. 158
      docs/en/Modules/Cms-Kit.md
  38. 98
      docs/en/Modules/cms-kit/Blog-System.md
  39. 117
      docs/en/Modules/cms-kit/Comment-System.md
  40. 116
      docs/en/Modules/cms-kit/Rating-System.md
  41. 128
      docs/en/Modules/cms-kit/Reaction-System.md
  42. 135
      docs/en/Modules/cms-kit/Tag-Management.md
  43. 32
      docs/en/MongoDB.md
  44. 31
      docs/en/Road-Map.md
  45. 125
      docs/en/SimpleStateChecker.md
  46. 24
      docs/en/String-Encryption.md
  47. 30
      docs/en/UI/Angular/Page-Component.md
  48. 19
      docs/en/UI/AspNetCore/Navigation-Menu.md
  49. 4
      docs/en/UI/AspNetCore/Toolbars.md
  50. 87
      docs/en/docs-nav.json
  51. BIN
      docs/en/images/cmskit-module-blog-post-edit.png
  52. BIN
      docs/en/images/cmskit-module-blog-posts-page.png
  53. BIN
      docs/en/images/cmskit-module-blogs-edit.png
  54. BIN
      docs/en/images/cmskit-module-blogs-feature-action.png
  55. BIN
      docs/en/images/cmskit-module-blogs-page.png
  56. BIN
      docs/en/images/cmskit-module-comment-page.png
  57. BIN
      docs/en/images/cmskit-module-comments-detail.png
  58. BIN
      docs/en/images/cmskit-module-features-dialog.png
  59. BIN
      docs/en/images/cmskit-module-pages-edit.png
  60. BIN
      docs/en/images/cmskit-module-pages-page.png
  61. BIN
      docs/en/images/cmskit-module-ratings.png
  62. BIN
      docs/en/images/cmskit-module-reactions.png
  63. BIN
      docs/en/images/cmskit-module-tag-edit.png
  64. BIN
      docs/en/images/cmskit-module-tags-page.png
  65. 2
      docs/zh-Hans/Blob-Storing-Minio.md
  66. 14
      docs/zh-Hans/Entity-Framework-Core.md
  67. 14
      docs/zh-Hans/MongoDB.md
  68. 2
      docs/zh-Hans/Tutorials/Part-1.md
  69. 2
      docs/zh-Hans/Tutorials/Part-3.md
  70. 7
      framework/Volo.Abp.sln
  71. 12
      framework/src/Volo.Abp.AspNetCore.Authentication.OpenIdConnect/Microsoft/Extensions/DependencyInjection/AbpOpenIdConnectExtensions.cs
  72. 14
      framework/src/Volo.Abp.AspNetCore.Components.Web.BasicTheme/Themes/Basic/AppWithoutAuth.razor
  73. 23
      framework/src/Volo.Abp.AspNetCore.Components.Web/Volo/Abp/AspNetCore/Components/Web/Security/AbpComponentsClaimsCache.cs
  74. 13
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/BasicThemeToolbarContributor.cs
  75. 27
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LoginDisplay.razor
  76. 49
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LoginDisplay.razor.cs
  77. 24
      framework/src/Volo.Abp.AspNetCore.Components/Volo/Abp/AspNetCore/Components/AbpComponentBase.cs
  78. 26
      framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/AbpAspNetCoreMultiTenancyOptions.cs
  79. 21
      framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/MultiTenancyMiddleware.cs
  80. 4
      framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/MultiTenancy/FindTenantResultDto.cs
  81. 2
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Form/AbpSelectTagHelper.cs
  82. 5
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Form/AbpSelectTagHelperService.cs
  83. 10
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Pages/Abp/MultiTenancy/AbpTenantAppService.cs
  84. 9
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Pages/Abp/MultiTenancy/TenantSwitchModal.cshtml.cs
  85. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/ar.json
  86. 1
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/cs.json
  87. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/de-DE.json
  88. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/de.json
  89. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en-GB.json
  90. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en.json
  91. 1
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/es-mx.json
  92. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/es.json
  93. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/fi.json
  94. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/fr.json
  95. 13
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/hi.json
  96. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/hu.json
  97. 13
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/it.json
  98. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/nl.json
  99. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/pl-PL.json
  100. 3
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/pt-BR.json

5
.gitignore

@ -310,4 +310,7 @@ abp-build-config.json
/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/Pages/Test/
# Identity Server temp signature file
tempkey.jwk
tempkey.jwk
# ABP Analyzing files
*.abppkg.analyze.json

2
abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/FR.json → abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/fr.json

@ -5,7 +5,7 @@
"Welcome": "Bienvenue",
"UseOneOfTheFollowingLinksToContinue": "Utilisez l'un des liens suivants pour continuer",
"FrameworkHomePage": "Page d'accueil du framework",
"FrameworkDocumentation": "Documentation du cadre",
"FrameworkDocumentation": "Documentation du framework",
"OfficialBlog": "Blog officiel",
"CommercialHomePage": "Page d'accueil commerciale",
"CommercialSupportWebSite": "Site Web de support commercial",

14
abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/hi.json

@ -0,0 +1,14 @@
{
"culture": "hi",
"texts": {
"Account": "ABP खाता - लॉगिन और रजिस्टर | ABP.IO",
"Welcome": "स्वागत हे",
"UseOneOfTheFollowingLinksToContinue": "जारी रखने के लिए निम्न लिंक में से एक का उपयोग करें",
"FrameworkHomePage": "फ्रेमवर्क होम पेज",
"FrameworkDocumentation": "फ्रेमवर्क प्रलेखन",
"OfficialBlog": "आधिकारिक ब्लॉग",
"CommercialHomePage": "वाणिज्यिक मुख पृष्ठ",
"CommercialSupportWebSite": "वाणिज्यिक समर्थन वेब साइट",
"CommunityWebSite": "एबीपी सामुदायिक वेब साइट"
}
}

14
abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/it.json

@ -0,0 +1,14 @@
{
"culture": "it",
"texts": {
"Account": "Account ABP - Accesso e registrazione | ABP.IO",
"Welcome": "benvenuto",
"UseOneOfTheFollowingLinksToContinue": "Usa uno dei seguenti link per continuare",
"FrameworkHomePage": "Home page del framework",
"FrameworkDocumentation": "Documentazione del framework",
"OfficialBlog": "Blog ufficiale",
"CommercialHomePage": "Home page commerciale",
"CommercialSupportWebSite": "Sito web di supporto commerciale",
"CommunityWebSite": "Sito web della comunità ABP"
}
}

30
abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/FR.json → abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/fr.json

@ -10,7 +10,7 @@
"Permission:EnableSendEmail": "Activer l'envoi d'e-mail",
"Permission:SendEmail": "Envoyer un e-mail",
"Permission:NpmPackages": "Packages NPM",
"Permission:NugetPackages": "Nuget: formules de vacances",
"Permission:NugetPackages": "Packages Nuget",
"Permission:Maintenance": "Maintenance",
"Permission:Maintain": "Maintenir",
"Permission:ClearCaches": "Effacer les caches",
@ -49,14 +49,14 @@
"NugetPackageTarget.ApplicationContracts": "Contrats d'application",
"NugetPackageTarget.HttpApi": "Http Api",
"NugetPackageTarget.HttpApiClient": "Client Api Http",
"NugetPackageTarget.Web": "la toile",
"NugetPackageTarget.Web": "Web",
"NugetPackageTarget.EntityFrameworkCore": "DeleteAllEntityFramework Core",
"NugetPackageTarget.MongoDB": "MongoDB",
"Edit": "Éditer",
"Delete": "Effacer",
"Refresh": "Rafraîchir",
"NpmPackages": "Packages NPM",
"NugetPackages": "Nuget: formules de vacances",
"NugetPackages": "Packages Nuget",
"NpmPackageCount": "Nombre de packages NPM",
"NugetPackageCount": "Nombre de paquets Nuget",
"Module": "Modules",
@ -72,7 +72,7 @@
"Menu:NpmPackages": "Packages NPM",
"Menu:Modules": "Modules",
"Menu:Maintenance": "Maintenance",
"Menu:NugetPackages": "Nuget: formules de vacances",
"Menu:NugetPackages": "Packages Nuget",
"CreateAnOrganization": "Créer une organisation",
"Organizations": "Organisations",
"LongName": "Nom long",
@ -92,13 +92,13 @@
"{0}WillBeRemovedFromDevelopers": "{0} Sera supprimé des développeurs, confirmez-vous?",
"{0}WillBeRemovedFromOwners": "{0} Sera supprimé des propriétaires, confirmez-vous?",
"{0}WillBeRemovedFromMembers": "{0} Sera supprimé des membres, confirmez-vous?",
"Computers": "Des ordinateurs",
"Computers": "Ordinateurs",
"UniqueComputerId": "ID d'ordinateur unique",
"LastSeenDate": "Date de la dernière consultation",
"{0}Computer{1}WillBeRemovedFromRecords": "L'ordinateur de {0} ({1}) sera supprimé des enregistrements",
"OrganizationDeletionWarningMessage": "L'organisation sera supprimée",
"DeletingLastOwnerWarningMessage": "Une organisation doit avoir au moins un propriétaire! Par conséquent, vous ne pouvez pas supprimer ce propriétaire",
"This{0}AlreadyExistInThisOrganization": "Cela {0} existe déjà dans cette organisation",
"This{0}AlreadyExistInThisOrganization": "Ce {0} existe déjà dans cette organisation",
"AreYouSureYouWantToDeleteAllComputers": "Voulez-vous vraiment supprimer tous les ordinateurs?",
"DeleteAll": "Tout supprimer",
"DoYouWantToCreateNewUser": "Voulez-vous créer un nouvel utilisateur?",
@ -119,7 +119,7 @@
"Member": "Membre",
"PurchaseOrderNo": "Bon de commande non",
"QuotationDate": "Date du devis",
"CompanyName": "Nom de la compagnie",
"CompanyName": "Nom de la société",
"CompanyAddress": "Adresse de la société",
"Price": "Prix",
"DiscountText": "Texte de remise",
@ -138,7 +138,7 @@
"AddProduct": "Ajouter un produit",
"AddProductWarning": "Vous devez ajouter un produit!",
"TotalPrice": "Prix total",
"Generate": "produire",
"Generate": "Générer",
"MissingQuantityField": "Le champ de quantité est obligatoire!",
"MissingPriceField": "Le champ Prix est obligatoire!",
"CodeUsageStatus": "Statut",
@ -170,11 +170,11 @@
"UnlimitedQuestionCount": "Nombre de questions illimité",
"Notes": "Remarques",
"Menu:Community": "Communauté",
"Menu:Articles": "Des articles",
"Menu:Articles": "Articles",
"Wait": "Attendez",
"Approve": "Approuver",
"Reject": "Rejeter",
"Details": "Des détails",
"Details": "Détails",
"Url": "URL",
"Title": "Titre",
"ContentSource": "Source du contenu",
@ -228,7 +228,7 @@
"Username": "Nom d'utilisateur",
"Tool": "Outil",
"Command": "Commander",
"UiFramework": "Cadre de l'interface utilisateur",
"UiFramework": "Framework de l'interface utilisateur",
"Options": "Options",
"CliAnalytics": "Cli Analytics",
"Permission:CliAnalyticses": "Analyses Cli",
@ -239,13 +239,13 @@
"LicensePublicKey": "Clé publique de licence",
"ApiKey": "Clé d'API NuGet",
"ShowInvoiceRequestsOfOrganization": "Demandes de factures",
"ShowQuestionsOfOrganization": "Des questions",
"ShowQuestionsOfOrganization": "Questions",
"Question": "Question",
"Open": "Ouvert",
"Questions": "Des questions",
"Questions": "Questions",
"InvoiceRequests": "Demandes de factures",
"Address": "Adresse",
"TaxNo": "Impôt non",
"TaxNo": "Numéro de taxe",
"Permission:InvoiceRequest": "Demande de facturation",
"Permission:Question": "Question",
"AddNoteSuccessMessage": "Note ajoutée avec succès",
@ -258,7 +258,7 @@
"Enum:EntityChangeType:0": "Créé",
"Enum:EntityChangeType:1": "Mise à jour",
"Enum:EntityChangeType:2": "Supprimé",
"TenantId": "ID du locataire",
"TenantId": "ID du souscrivant",
"ChangeTime": "Changer le temps",
"EntityTypeFullName": "Nom complet du type d'entité",
"AuditLogsFor{0}Organization": "Journaux d'audit pour l'organisation \"{0}\"",

282
abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/hi.json

@ -0,0 +1,282 @@
{
"culture": "hi",
"texts": {
"Permission:Organizations": "संगठनों",
"Permission:Manage": "संगठनों को प्रबंधित करें",
"Permission:DiscountRequests": "छूट का अनुरोध",
"Permission:DiscountManage": "डिस्काउंट अनुरोध प्रबंधित करें",
"Permission:Disable": "अक्षम",
"Permission:Enable": "सक्षम",
"Permission:EnableSendEmail": "ईमेल सक्षम करें",
"Permission:SendEmail": "ईमेल भेजें",
"Permission:NpmPackages": "एनपीएम पैकेज",
"Permission:NugetPackages": "नगेट संकुल",
"Permission:Maintenance": "रखरखाव",
"Permission:Maintain": "बनाए रखें",
"Permission:ClearCaches": "साफ कैश",
"Permission:Modules": "मॉड्यूल",
"Permission:Packages": "संकुल",
"Permission:Edit": "संपादित करें",
"Permission:Delete": "हटाएं",
"Permission:Create": "सृजन करना",
"Permission:Accounting": "लेखांकन",
"Permission:Accounting:Quotation": "उद्धरण",
"Permission:Accounting:Invoice": "बीजक",
"Menu:Organizations": "संगठनों",
"Menu:Accounting": "लेखांकन",
"Menu:Packages": "संकुल",
"Menu:DiscountRequests": "छूट का अनुरोध",
"NpmPackageDeletionWarningMessage": "यह NPM पैकेज हटा दिया जाएगा। क्या आप इसकी पुष्टि करते हैं?",
"NugetPackageDeletionWarningMessage": "यह नुगेट पैकेज हटा दिया जाएगा। क्या आप इसकी पुष्टि करते हैं?",
"ModuleDeletionWarningMessage": "यह मॉड्यूल हटा दिया जाएगा। क्या आप इसकी पुष्टि करते हैं?",
"Name": "नाम",
"DisplayName": "प्रदर्शित होने वाला नाम",
"ShortDescription": "संक्षिप्त वर्णन",
"NameFilter": "नाम",
"CreationTime": "रचना समय",
"IsPro": "समर्थक है",
"IsFreeToActiveLicenseOwners": "मालिकों को लाइसेंस देना मुफ्त",
"ShowOnModuleList": "मॉड्यूल सूची पर दिखाएं",
"EfCoreConfigureMethodName": "विधि नाम कॉन्फ़िगर करें",
"IsProFilter": "समर्थक है",
"ApplicationType": "आवेदन का प्रकार",
"Target": "लक्ष्य",
"TargetFilter": "लक्ष्य",
"ModuleClass": "मॉड्यूल वर्ग",
"NugetPackageTarget.DomainShared": "डोमेन साझा किया गया",
"NugetPackageTarget.Domain": "डोमेन",
"NugetPackageTarget.Application": "आवेदन",
"NugetPackageTarget.ApplicationContracts": "आवेदन संविदा",
"NugetPackageTarget.HttpApi": "Http Api",
"NugetPackageTarget.HttpApiClient": "Http Api क्लाइंट",
"NugetPackageTarget.Web": "वेब",
"NugetPackageTarget.EntityFrameworkCore": "DeleteAllEntityFramework Core",
"NugetPackageTarget.MongoDB": "MongoDB",
"Edit": "संपादित करें",
"Delete": "हटाएं",
"Refresh": "ताज़ा करना",
"NpmPackages": "एनपीएम पैकेज",
"NugetPackages": "नगेट संकुल",
"NpmPackageCount": "एनपीएम पैकेज की गणना",
"NugetPackageCount": "नगेट पैकेज गणना",
"Module": "मॉड्यूल",
"ModuleInfo": "मॉड्यूल जानकारी",
"CreateANpmPackage": "एक एनपीएम पैकेज बनाएँ",
"CreateAModule": "एक मॉड्यूल बनाएँ",
"CreateANugetPackage": "एक Nuget पैकेज बनाएँ",
"AddNew": "नया जोड़ें",
"PackageAlreadyExist{0}": "\"{0}\" पैकेज पहले से ही जोड़ा गया है।",
"ModuleAlreadyExist{0}": "\"{0}\" मॉड्यूल पहले से ही जोड़ा गया है।",
"ClearCache": "कैश को साफ़ करें",
"SuccessfullyCleared": "सफलतापूर्वक साफ़ हो गया",
"Menu:NpmPackages": "एनपीएम पैकेज",
"Menu:Modules": "मॉड्यूल",
"Menu:Maintenance": "रखरखाव",
"Menu:NugetPackages": "नगेट संकुल",
"CreateAnOrganization": "एक संगठन बनाएं",
"Organizations": "संगठनों",
"LongName": "लंबा नाम",
"LicenseType": "लाइसेंस के प्रकार",
"MissingLicenseTypeField": "लाइसेंस प्रकार क्षेत्र की आवश्यकता है!",
"LicenseStartTime": "लाइसेंस शुरू होने का समय",
"LicenseEndTime": "लाइसेंस समाप्ति का समय",
"AllowedDeveloperCount": "अनुमत डेवलपर गणना",
"UserNameOrEmailAddress": "उपयोगकर्ता का नाम या ईमेल पता",
"AddOwner": "मालिक जोड़ें",
"UserName": "उपयोगकर्ता नाम",
"Email": "ईमेल",
"Developers": "डेवलपर्स",
"AddDeveloper": "डेवलपर जोड़ें",
"Create": "सृजन करना",
"UserNotFound": "उपयोगकर्ता नहीं मिला",
"{0}WillBeRemovedFromDevelopers": "{0} डेवलपर्स से हटा दिया जाएगा, क्या आप पुष्टि करते हैं?",
"{0}WillBeRemovedFromOwners": "{0} मालिकों से हटा दिया जाएगा, क्या आप पुष्टि करते हैं?",
"{0}WillBeRemovedFromMembers": "{0} सदस्यों से हटा दिया जाएगा, क्या आप पुष्टि करते हैं?",
"Computers": "कंप्यूटर",
"UniqueComputerId": "यूनिक कंप्यूटर आई.डी.",
"LastSeenDate": "अंतिम बार देखी गई तारीख",
"{0}Computer{1}WillBeRemovedFromRecords": "{0} ({1}) का कंप्यूटर रिकॉर्ड से हटा दिया जाएगा",
"OrganizationDeletionWarningMessage": "संगठन को हटा दिया जाएगा",
"DeletingLastOwnerWarningMessage": "एक संगठन में कम से कम एक मालिक होना चाहिए! इसलिए आप इस स्वामी को नहीं निकाल सकते",
"This{0}AlreadyExistInThisOrganization": "यह {0} इस संगठन में पहले से मौजूद है",
"AreYouSureYouWantToDeleteAllComputers": "क्या आप वाकई सभी कंप्यूटर हटाना चाहते हैं?",
"DeleteAll": "सभी हटा दो",
"DoYouWantToCreateNewUser": "क्या आप नया उपयोगकर्ता बनाना चाहते हैं?",
"MasterModules": "मास्टर मॉड्यूल",
"OrganizationName": "संगठन का नाम",
"CreationDate": "निर्माण तिथि",
"LicenseStartDate": "लाइसेंस शुरू होने की तारीख",
"LicenseEndDate": "लाइसेंस की अंतिम तिथि",
"OrganizationNamePlaceholder": "संगठन का नाम...",
"TotalQuestionCountPlaceholder": "कुल प्रश्न संख्या ...",
"RemainingQuestionCountPlaceholder": "शेष प्रश्न गणना ...",
"LicenseTypePlaceholder": "लाइसेंस के प्रकार...",
"CreationDatePlaceholder": "निर्माण तिथि...",
"LicenseStartDatePlaceholder": "लाइसेंस शुरू होने की तारीख ...",
"LicenseEndDatePlaceholder": "लाइसेंस की अंतिम तिथि ...",
"UsernameOrEmail": "उपयोगकर्ता का नाम या ईमेल",
"UsernameOrEmailPlaceholder": "उपयोगकर्ता का नाम या ईमेल...",
"Member": "सदस्य",
"PurchaseOrderNo": "खरीद आदेश ्संक्या",
"QuotationDate": "बोली की तारीख",
"CompanyName": "कंपनी का नाम",
"CompanyAddress": "कम्पनी का पता",
"Price": "कीमत",
"DiscountText": "डिस्काउंट पाठ",
"DiscountQuantity": "छूट मात्रा",
"DiscountPrice": "डिस्काउंट कीमत",
"Quotation": "उद्धरण",
"ExtraText": "अतिरिक्त पाठ",
"ExtraAmount": "अतिरिक्त राशि",
"DownloadQuotation": "उद्धरण डाउनलोड करें",
"Invoice": "बीजक",
"TaxNumber": "कर संख्या",
"InvoiceNumber": "बीजक संख्या",
"InvoiceDate": "चालान की तारीख",
"InvoiceNote": "चालान नोट",
"Quantity": "मात्रा",
"AddProduct": "उत्पाद जोड़ें",
"AddProductWarning": "आपको उत्पाद जोड़ने की आवश्यकता है!",
"TotalPrice": "कुल कीमत",
"Generate": "उत्पन्न",
"MissingQuantityField": "मात्रा फ़ील्ड आवश्यक है!",
"MissingPriceField": "मूल्य क्षेत्र की आवश्यकता है!",
"CodeUsageStatus": "स्थिति",
"Country": "देश",
"DeveloperCount": "डेवलपर गणना",
"RequestCode": "अनुरोध कोड",
"WebSite": "वेबसाइट",
"GithubUsername": "Github उपयोगकर्ता नाम",
"PhoneNumber": "फ़ोन नंबर",
"ProjectDescription": "परियोजना विवरण",
"Referrer": "संदर्भ",
"DiscountRequests": "छूट का अनुरोध",
"Copylink": "प्रतिरूप जोड़ना",
"Disable": "अक्षम",
"Enable": "सक्षम",
"EnableSendEmail": "ईमेल सक्षम करें",
"SendEmail": "ईमेल भेजें",
"SuccessfullyDisabled": "सफलतापूर्वक अक्षम किया गया",
"SuccessfullyEnabled": "सफलतापूर्वक सक्षम किया गया",
"EmailSent": "ईमेल भेजा",
"SuccessfullySent": "सफलतापूर्वक भेजा",
"SuccessfullyDeleted": "सफलतापूर्वक हटा दिया गया",
"DiscountRequestDeletionWarningMessage": "छूट अनुरोध हटा दिया जाएगा",
"BusinessType": "व्यापार के प्रकार",
"TotalQuestionCount": "कुल प्रश्न संख्या",
"RemainingQuestionCount": "शेष प्रश्न गणना",
"TotalQuestionMustBeGreaterWarningMessage": "TotalQuestionCount RemainingQuestionCount से अधिक होना चाहिए!",
"QuestionCountsMustBeGreaterThanZero": "TotalQuestionCount और RemainingQuestionCount शून्य या शून्य से अधिक होना चाहिए!",
"UnlimitedQuestionCount": "असीमित प्रश्न गणना",
"Notes": "टिप्पणियाँ",
"Menu:Community": "समुदाय",
"Menu:Articles": "सामग्री",
"Wait": "रुको",
"Approve": "मंजूर",
"Reject": "अस्वीकार",
"Details": "विवरण",
"Url": "यूआरएल",
"Title": "शीर्षक",
"ContentSource": "विषय - वस्तु का स्रोत",
"Status": "स्थिति",
"ReadArticle": "लेख पढ़ें",
"ArticleHasBeenWaiting": "लेख की प्रतीक्षा रही",
"ArticleHasBeenApproved": "अनुच्छेद स्वीकृत किया गया है",
"ArticleHasBeenRejected": "अनुच्छेद अस्वीकार कर दिया गया है",
"Permission:Community": "समुदाय",
"Permission:CommunityArticle": "लेख",
"Link": "संपर्क",
"Enum:ContentSource:0": "Github",
"Enum:ContentSource:1": "बाहरी",
"Enum:Status:0": "इंतज़ार कर रही",
"Enum:Status:1": "अस्वीकृत",
"Enum:Status:2": "मंजूर की",
"Summary": "सारांश",
"AuthorName": "लेखक का नाम",
"CoverImage": "कवर छवि",
"RemoveCacheConfirmationMessage": "क्या आप वाकई \"{0}\" लेख के लिए कैश निकालना चाहते हैं?",
"SuccessfullyRemoved": "सफलतापूर्वक साफ़ हो गया",
"RemoveCache": "कैश निकालें",
"Language": "भाषा: हिन्दी",
"Optional": "ऐच्छिक",
"CreateArticleLanguageInfo": "वह भाषा जिसमें पद लिखा जाता है",
"Enum:ContentSource:2": "वीडियो पोस्ट",
"VideoPreview": "वीडियो पूर्वावलोकन",
"VideoPreviewErrorMessage": "दिया गया वीडियो url Youtube से पुनः प्राप्त नहीं कर सका। यह वीडियो निजी होने के कारण हो सकता है या दिया गया URL उपलब्ध नहीं है।",
"DeleteCoverImage": "कवर छवि हटाएं",
"DeleteCoverImageConfirmationMessage": "क्या आप वाकई \"{0}\" के लिए कवर छवि को हटाना चाहते हैं?",
"DeleteCoverImageSuccessMessage": "कवर छवि सफलतापूर्वक हटा दी गई",
"PaymentsOf": "के भुगतान",
"ShowPaymentsOfOrganization": "भुगतान",
"Date": "तारीख",
"Products": "उत्पादों",
"TotalAmount": "कुल रकम",
"Currency": "मुद्रा",
"Gateway": "द्वार",
"State": "राज्य",
"FailReason": "विफल कारण",
"ReIndexAllPosts": "सभी पदों को फिर से लिखना",
"ReIndexAllPostsConfirmationMessage": "क्या आप वाकई सभी पदों को पुनः प्राप्त करना चाहते हैं?",
"SuccessfullyReIndexAllPosts": "सभी पदों को सफलतापूर्वक रीइंसेक्स किया गया है।",
"Permission:FullSearch": "पूरा पाठ खोजें",
"Menu:CliAnalytics": "Cli Analytics",
"TemplateName": "टेम्पलेट नाम",
"TemplateVersion": "टेम्पलेट संस्करण",
"DatabaseProvider": "डेटाबेस प्रदाता",
"IsTiered": "तीयर है",
"ProjectName": "परियोजना का नाम",
"Username": "उपयोगकर्ता नाम",
"Tool": "साधन",
"Command": "आदेश",
"UiFramework": "उई ढांचा",
"Options": "विकल्प",
"CliAnalytics": "Cli Analytics",
"Permission:CliAnalyticses": "क्ली एनालिटिक्स",
"Permission:CliAnalytics": "Cli Analytics",
"Search": "खोज",
"ClearFilter": "स्पष्ट निस्यंदक",
"LicensePrivateKey": "लाइसेंस निजी कुंजी",
"LicensePublicKey": "लाइसेंस सार्वजनिक कुंजी",
"ApiKey": "NuGet एपीआई कुंजी",
"ShowInvoiceRequestsOfOrganization": "चालान अनुरोध",
"ShowQuestionsOfOrganization": "प्रशन",
"Question": "सवाल",
"Open": "खुला हुआ",
"Questions": "प्रशन",
"InvoiceRequests": "चालान अनुरोध",
"Address": "पता",
"TaxNo": "टैक्स संख्या",
"Permission:InvoiceRequest": "बिल के लिए अनुरोध",
"Permission:Question": "सवाल",
"AddNoteSuccessMessage": "नोट सफलतापूर्वक जोड़ा गया",
"NameSurname": "नाम सरनेम",
"Note": "ध्यान दें",
"Add": "जोड़ना",
"ProjectDownloads": "प्रोजेक्ट डाउनलोड",
"ShowProjectDownloadsOfOrganization": "प्रोजेक्ट डाउनलोड",
"ShowAuditLogsOfOrganization": "ऑडिट लॉग",
"Enum:EntityChangeType:0": "बनाया था",
"Enum:EntityChangeType:1": "अद्यतन",
"Enum:EntityChangeType:2": "हटाए गए",
"TenantId": "किरायेदार आईडी",
"ChangeTime": "समय परिवर्तन करें",
"EntityTypeFullName": "संपूर्ण प्रकार पूर्ण नाम",
"AuditLogsFor{0}Organization": "\"{0}\" संगठन के लिए ऑडिट लॉग",
"Permission:EntityChange": "इकाई परिवर्तन",
"Permission:ProjectDownload": "प्रोजेक्ट डाउनलोड",
"Permission:PaymentRequest": "भुगतान अनुरोध",
"CreatorEmailAddress": "निर्माता का ईमेल पता",
"EmailSendDate": "ईमेल भेजने की तारीख",
"PaymentRequestsFor{0}Organization": "\"{0}\" संगठन के लिए भुगतान अनुरोध",
"PaymentDetails": "भुगतान विवरण",
"PaymentProduct": "भुगतान उत्पाद",
"ProductName": "उत्पाद का नाम",
"Code": "कोड",
"GenerateInvoice": "आनंद उत्पन्न करें",
"ExportOrganizationsToExcel": "एक्सेल में भेजे",
"ThisExtensionIsNotAllowed": "इस एक्सटेंशन की अनुमति नहीं है।",
"TheFileIsTooLarge": "फ़ाइल बहुत बड़ी है!",
"ArticleDeletionConfirmationMessage": "क्या आप वाकई इस लेख को हटाना चाहते हैं?",
"ChooseCoverImage": "कवर छवि चुनें ..."
}
}

282
abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/it.json

@ -0,0 +1,282 @@
{
"culture": "it",
"texts": {
"Permission:Organizations": "Organizzazioni",
"Permission:Manage": "Gestisci organizzazioni",
"Permission:DiscountRequests": "Richieste di sconto",
"Permission:DiscountManage": "Gestisci le richieste di sconto",
"Permission:Disable": "disattivare",
"Permission:Enable": "Abilitare",
"Permission:EnableSendEmail": "Abilita Invia e-mail",
"Permission:SendEmail": "Invia una email",
"Permission:NpmPackages": "Pacchetti NPM",
"Permission:NugetPackages": "Pacchetti Nuget",
"Permission:Maintenance": "Manutenzione",
"Permission:Maintain": "Mantenere",
"Permission:ClearCaches": "Cancella cache",
"Permission:Modules": "Moduli",
"Permission:Packages": "Pacchi",
"Permission:Edit": "modificare",
"Permission:Delete": "Elimina",
"Permission:Create": "Creare",
"Permission:Accounting": "Contabilità",
"Permission:Accounting:Quotation": "Quotazione",
"Permission:Accounting:Invoice": "Fattura",
"Menu:Organizations": "Organizzazioni",
"Menu:Accounting": "Contabilità",
"Menu:Packages": "Pacchi",
"Menu:DiscountRequests": "Richieste di sconto",
"NpmPackageDeletionWarningMessage": "Questo pacchetto NPM verrà eliminato. Lo confermi?",
"NugetPackageDeletionWarningMessage": "Questo pacchetto Nuget verrà eliminato. Lo confermi?",
"ModuleDeletionWarningMessage": "Questo modulo verrà eliminato. Lo confermi?",
"Name": "Nome",
"DisplayName": "Nome da visualizzare",
"ShortDescription": "Breve descrizione",
"NameFilter": "Nome",
"CreationTime": "Tempo di creazione",
"IsPro": "È pro",
"IsFreeToActiveLicenseOwners": "Gratuito per i proprietari di licenze",
"ShowOnModuleList": "Mostra nell'elenco dei moduli",
"EfCoreConfigureMethodName": "Configurare il nome del metodo",
"IsProFilter": "È pro",
"ApplicationType": "Tipo di applicazione",
"Target": "Bersaglio",
"TargetFilter": "Bersaglio",
"ModuleClass": "Classe del modulo",
"NugetPackageTarget.DomainShared": "Dominio condiviso",
"NugetPackageTarget.Domain": "Dominio",
"NugetPackageTarget.Application": "Applicazione",
"NugetPackageTarget.ApplicationContracts": "Contratti applicativi",
"NugetPackageTarget.HttpApi": "Http Api",
"NugetPackageTarget.HttpApiClient": "Client API HTTP",
"NugetPackageTarget.Web": "ragnatela",
"NugetPackageTarget.EntityFrameworkCore": "DeleteAllEntityFramework Core",
"NugetPackageTarget.MongoDB": "MongoDB",
"Edit": "modificare",
"Delete": "Elimina",
"Refresh": "ricaricare",
"NpmPackages": "Pacchetti NPM",
"NugetPackages": "Pacchetti Nuget",
"NpmPackageCount": "Conteggio pacchetti NPM",
"NugetPackageCount": "Conteggio pacchetti Nuget",
"Module": "Moduli",
"ModuleInfo": "Informazioni sul modulo",
"CreateANpmPackage": "Crea un pacchetto NPM",
"CreateAModule": "Crea un modulo",
"CreateANugetPackage": "Crea un pacchetto Nuget",
"AddNew": "Aggiungere nuova",
"PackageAlreadyExist{0}": "Il pacchetto \"{0}\" è già aggiunto.",
"ModuleAlreadyExist{0}": "Il modulo \"{0}\" è già aggiunto.",
"ClearCache": "Cancella cache",
"SuccessfullyCleared": "Cancellato con successo",
"Menu:NpmPackages": "Pacchetti NPM",
"Menu:Modules": "Moduli",
"Menu:Maintenance": "Manutenzione",
"Menu:NugetPackages": "Pacchetti Nuget",
"CreateAnOrganization": "Crea un'organizzazione",
"Organizations": "Organizzazioni",
"LongName": "Nome lungo",
"LicenseType": "Tipo di licenza",
"MissingLicenseTypeField": "Il campo del tipo di licenza è obbligatorio!",
"LicenseStartTime": "Ora di inizio della licenza",
"LicenseEndTime": "Ora di fine della licenza",
"AllowedDeveloperCount": "Conteggio sviluppatori consentito",
"UserNameOrEmailAddress": "Username o Indirizzo Email",
"AddOwner": "Aggiungi proprietario",
"UserName": "Nome utente",
"Email": "E-mail",
"Developers": "Sviluppatori",
"AddDeveloper": "Aggiungi sviluppatore",
"Create": "Creare",
"UserNotFound": "Utente non trovato",
"{0}WillBeRemovedFromDevelopers": "{0} Verrà rimosso dagli sviluppatori, confermi?",
"{0}WillBeRemovedFromOwners": "{0} Verrà rimosso dai proprietari, confermi?",
"{0}WillBeRemovedFromMembers": "{0} Verrà rimosso dai membri, confermi?",
"Computers": "Computer",
"UniqueComputerId": "ID computer univoco",
"LastSeenDate": "Data dell'ultimo accesso",
"{0}Computer{1}WillBeRemovedFromRecords": "Il computer di {0} ({1}) verrà rimosso dai record",
"OrganizationDeletionWarningMessage": "L'organizzazione verrà eliminata",
"DeletingLastOwnerWarningMessage": "Un'organizzazione deve avere almeno un proprietario! Pertanto non puoi rimuovere questo proprietario",
"This{0}AlreadyExistInThisOrganization": "Questo {0} esiste già in questa organizzazione",
"AreYouSureYouWantToDeleteAllComputers": "Sei sicuro di voler eliminare tutti i computer?",
"DeleteAll": "Cancella tutto",
"DoYouWantToCreateNewUser": "Vuoi creare un nuovo utente?",
"MasterModules": "Moduli master",
"OrganizationName": "Nome dell'organizzazione",
"CreationDate": "Data di creazione",
"LicenseStartDate": "Data di inizio della licenza",
"LicenseEndDate": "Data di fine della licenza",
"OrganizationNamePlaceholder": "Nome dell'organizzazione...",
"TotalQuestionCountPlaceholder": "Conteggio totale delle domande ...",
"RemainingQuestionCountPlaceholder": "Numero di domande rimanenti ...",
"LicenseTypePlaceholder": "Tipo di licenza...",
"CreationDatePlaceholder": "Data di creazione...",
"LicenseStartDatePlaceholder": "Data di inizio della licenza ...",
"LicenseEndDatePlaceholder": "Data di fine della licenza ...",
"UsernameOrEmail": "Nome utente o email",
"UsernameOrEmailPlaceholder": "Nome utente o email...",
"Member": "Membro",
"PurchaseOrderNo": "Ordine d'Acquisto N °",
"QuotationDate": "Data di quotazione",
"CompanyName": "Nome della ditta",
"CompanyAddress": "Indirizzo aziendale",
"Price": "Prezzo",
"DiscountText": "Testo di sconto",
"DiscountQuantity": "Quantità di sconto",
"DiscountPrice": "Prezzo scontato",
"Quotation": "Quotazione",
"ExtraText": "Testo extra",
"ExtraAmount": "Importo extra",
"DownloadQuotation": "Scarica preventivo",
"Invoice": "Fattura",
"TaxNumber": "Codice fiscale",
"InvoiceNumber": "Numero di fattura",
"InvoiceDate": "Data fattura",
"InvoiceNote": "Nota fattura",
"Quantity": "Quantità",
"AddProduct": "Aggiungi prodotto",
"AddProductWarning": "Devi aggiungere il prodotto!",
"TotalPrice": "Prezzo totale",
"Generate": "creare",
"MissingQuantityField": "Il campo della quantità è obbligatorio!",
"MissingPriceField": "Il campo Prezzo è obbligatorio!",
"CodeUsageStatus": "Stato",
"Country": "Nazione",
"DeveloperCount": "Conteggio sviluppatori",
"RequestCode": "Codice richiesto",
"WebSite": "Sito web",
"GithubUsername": "Nome utente GitHub",
"PhoneNumber": "Numero di telefono",
"ProjectDescription": "descrizione del progetto",
"Referrer": "Referrer",
"DiscountRequests": "Richiesta di sconto",
"Copylink": "Copia link",
"Disable": "disattivare",
"Enable": "Abilitare",
"EnableSendEmail": "Abilita Invia e-mail",
"SendEmail": "Invia una email",
"SuccessfullyDisabled": "Disabilitato con successo",
"SuccessfullyEnabled": "Abilitato con successo",
"EmailSent": "Email inviata",
"SuccessfullySent": "Inviato con successo",
"SuccessfullyDeleted": "Eliminato con successo",
"DiscountRequestDeletionWarningMessage": "La richiesta di sconto verrà eliminata",
"BusinessType": "tipo di affari",
"TotalQuestionCount": "Conteggio totale delle domande",
"RemainingQuestionCount": "Numero di domande rimanenti",
"TotalQuestionMustBeGreaterWarningMessage": "TotalQuestionCount deve essere maggiore di RemainingQuestionCount!",
"QuestionCountsMustBeGreaterThanZero": "TotalQuestionCount e RemainingQuestionCount devono essere zero o maggiori di zero!",
"UnlimitedQuestionCount": "Conteggio illimitato delle domande",
"Notes": "Appunti",
"Menu:Community": "Comunità",
"Menu:Articles": "Articoli",
"Wait": "Aspettare",
"Approve": "Approvare",
"Reject": "Rifiutare",
"Details": "Dettagli",
"Url": "Url",
"Title": "Titolo",
"ContentSource": "Fonte di contenuto",
"Status": "Stato",
"ReadArticle": "Leggi l'articolo",
"ArticleHasBeenWaiting": "L'articolo è stato in attesa",
"ArticleHasBeenApproved": "L'articolo è stato approvato",
"ArticleHasBeenRejected": "L'articolo è stato respinto",
"Permission:Community": "Comunità",
"Permission:CommunityArticle": "Articolo",
"Link": "Link",
"Enum:ContentSource:0": "Github",
"Enum:ContentSource:1": "Esterno",
"Enum:Status:0": "In attesa",
"Enum:Status:1": "Respinto",
"Enum:Status:2": "Approvato",
"Summary": "Sommario",
"AuthorName": "Nome dell'autore",
"CoverImage": "Immagine di copertina",
"RemoveCacheConfirmationMessage": "Sei sicuro di aver rimosso la cache per l'articolo \"{0}\"?",
"SuccessfullyRemoved": "Cancellato con successo",
"RemoveCache": "Rimuovi cache",
"Language": "linguaggio",
"Optional": "Opzionale",
"CreateArticleLanguageInfo": "La lingua in cui è scritto il post",
"Enum:ContentSource:2": "Post video",
"VideoPreview": "Anteprima video",
"VideoPreviewErrorMessage": "Impossibile recuperare l'URL del video da Youtube. Ciò può essere causato dal fatto che il video è privato o l'URL fornito non è disponibile.",
"DeleteCoverImage": "Elimina immagine di copertina",
"DeleteCoverImageConfirmationMessage": "Sei sicuro di voler eliminare l'immagine di copertina per \"{0}\"?",
"DeleteCoverImageSuccessMessage": "Immagine di copertina eliminata con successo",
"PaymentsOf": "Pagamenti di",
"ShowPaymentsOfOrganization": "Pagamenti",
"Date": "Data",
"Products": "Prodotti",
"TotalAmount": "Importo totale",
"Currency": "Moneta",
"Gateway": "Gateway",
"State": "Stato",
"FailReason": "Motivo fallito",
"ReIndexAllPosts": "Reindicizza tutti i post",
"ReIndexAllPostsConfirmationMessage": "Sei sicuro di voler reindicizzare tutti i post?",
"SuccessfullyReIndexAllPosts": "Tutti i post sono stati reindicizzati con successo.",
"Permission:FullSearch": "Ricerca nel testo completo",
"Menu:CliAnalytics": "Cli Analytics",
"TemplateName": "Nome modello",
"TemplateVersion": "Versione modello",
"DatabaseProvider": "Provider di database",
"IsTiered": "È a livelli",
"ProjectName": "Nome del progetto",
"Username": "Nome utente",
"Tool": "Attrezzo",
"Command": "Comando",
"UiFramework": "Framework dell'interfaccia utente",
"Options": "Opzioni",
"CliAnalytics": "Cli Analytics",
"Permission:CliAnalyticses": "Cli Analyticses",
"Permission:CliAnalytics": "Cli Analytics",
"Search": "Ricerca",
"ClearFilter": "Filtro pulito",
"LicensePrivateKey": "Chiave privata della licenza",
"LicensePublicKey": "Licenza chiave pubblica",
"ApiKey": "Chiave API NuGet",
"ShowInvoiceRequestsOfOrganization": "Richieste di fattura",
"ShowQuestionsOfOrganization": "Domande",
"Question": "Domanda",
"Open": "Aperto",
"Questions": "Domande",
"InvoiceRequests": "Richieste di fattura",
"Address": "Indirizzo",
"TaxNo": "No fiscale",
"Permission:InvoiceRequest": "Richiesta di fattura",
"Permission:Question": "Domanda",
"AddNoteSuccessMessage": "Nota aggiunta con successo",
"NameSurname": "Nome cognome",
"Note": "Nota",
"Add": "Inserisci",
"ProjectDownloads": "Download del progetto",
"ShowProjectDownloadsOfOrganization": "Download del progetto",
"ShowAuditLogsOfOrganization": "Registri di controllo",
"Enum:EntityChangeType:0": "Creato",
"Enum:EntityChangeType:1": "Aggiornato",
"Enum:EntityChangeType:2": "Eliminato",
"TenantId": "ID inquilino",
"ChangeTime": "Cambia il tempo",
"EntityTypeFullName": "Nome completo del tipo di entità",
"AuditLogsFor{0}Organization": "Log di controllo per l'organizzazione \"{0}\"",
"Permission:EntityChange": "Modifica entità",
"Permission:ProjectDownload": "Download del progetto",
"Permission:PaymentRequest": "Richiesta di pagamento",
"CreatorEmailAddress": "Indirizzo email del creatore",
"EmailSendDate": "Data di invio dell'e-mail",
"PaymentRequestsFor{0}Organization": "Richieste di pagamento per l'organizzazione \"{0}\"",
"PaymentDetails": "Dettagli di pagamento",
"PaymentProduct": "Prodotto di pagamento",
"ProductName": "nome del prodotto",
"Code": "Codice",
"GenerateInvoice": "Genera fattura",
"ExportOrganizationsToExcel": "esportare in Excel",
"ThisExtensionIsNotAllowed": "Questa estensione non è consentita.",
"TheFileIsTooLarge": "Il file è troppo grande!",
"ArticleDeletionConfirmationMessage": "Sei sicuro di voler eliminare definitivamente questo articolo?",
"ChooseCoverImage": "Scegli un'immagine di copertina ..."
}
}

2
abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/FR.json → abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/fr.json

@ -14,7 +14,7 @@
"Volo.AbpIo.Domain:020002": "Impossible de supprimer ce package NPM car les modules \"{Modules}\" utilisent ce package.",
"Volo.AbpIo.Domain:020003": "Impossible de supprimer ce package NPM car les modules \"{Modules}\" utilisent ce package et les packages Nuget \"{NugetPackages}\" dépendent de ce package.",
"Volo.AbpIo.Domain:020004": "Impossible de supprimer ce package Nuget car les modules \"{Modules}\" utilisent ce package.",
"WantToLearn?": "Vouloir apprendre?",
"WantToLearn?": "Vous voulez apprendre?",
"ReadyToGetStarted?": "Prêt à commencer?",
"JoinOurCommunity": "Rejoignez notre communauté",
"GetStartedUpper": "COMMENCER",

37
abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/hi.json

@ -0,0 +1,37 @@
{
"culture": "hi",
"texts": {
"Volo.AbpIo.Domain:010004": "अधिकतम सदस्य संख्या तक पहुँच गया!",
"Volo.AbpIo.Domain:010005": "अधिकतम मालिक की गिनती तक पहुँच गया!",
"Volo.AbpIo.Domain:010006": "यह उपयोगकर्ता पहले से ही इस संगठन का मालिक है!",
"Volo.AbpIo.Domain:010007": "यह उपयोगकर्ता इस संगठन में पहले से ही एक डेवलपर है!",
"Volo.AbpIo.Domain:010008": "अनुमत डेवलपर गणना कम नहीं हो सकती है तो वर्तमान डेवलपर गणना!",
"Volo.AbpIo.Domain:010009": "अनुमत डेवलपर गणना 0 से कम नहीं हो सकती है!",
"Volo.AbpIo.Domain:010010": "अधिकतम मैक पता गणना पार हो गई है!",
"Volo.AbpIo.Domain:010011": "व्यक्तिगत लाइसेंस में 1 से अधिक डेवलपर नहीं हो सकते हैं!",
"Volo.AbpIo.Domain:010012": "लाइसेंस की अवधि समाप्त होने के एक महीने बाद तक लाइसेंस नहीं बढ़ाया जा सकता है!",
"Volo.AbpIo.Domain:020001": "इस NPM पैकेज को नहीं हटाया जा सका क्योंकि \"{NugetPackages}\" नुगेट पैकेज इस पैकेज पर निर्भर हैं।",
"Volo.AbpIo.Domain:020002": "यह NPM पैकेज नहीं हटा सका क्योंकि \"{मॉड्यूल}\" मॉड्यूल इस पैकेज का उपयोग कर रहे हैं।",
"Volo.AbpIo.Domain:020003": "इस NPM पैकेज को नहीं हटाया जा सका क्योंकि \"{मॉड्यूल}\" मॉड्यूल इस पैकेज का उपयोग कर रहे हैं और \"{NugetPackages}\" नुगेट पैकेज इस पैकेज पर निर्भर हैं।",
"Volo.AbpIo.Domain:020004": "इस Nuget पैकेज को हटाया नहीं जा सका क्योंकि \"{Modules}\" मॉड्यूल इस पैकेज का उपयोग कर रहे हैं।",
"WantToLearn?": "सीखना चाहते है?",
"ReadyToGetStarted?": "आरंभ करने के लिए तैयार हैं?",
"JoinOurCommunity": "हमारी संस्था से जुड़े",
"GetStartedUpper": "शुरू हो जाओ",
"ForkMeOnGitHub": "GitHub पर मेरे कांटा",
"Features": "विशेषताएं",
"GetStarted": "शुरू हो जाओ",
"Documents": "दस्तावेज़",
"Community": "समुदाय",
"ContributionGuide": "योगदान गाइड",
"Blog": "ब्लॉग",
"Commercial": "व्यावसायिक",
"MyAccount": "मेरा खाता",
"Permission:License": "लाइसेंस",
"Permission:UserInfo": "हमें जानकारी",
"SeeDocuments": "दस्तावेज़ देखें",
"Samples": "नमूने",
"Framework": "ढांचा",
"Support": "सहयोग"
}
}

37
abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/it.json

@ -0,0 +1,37 @@
{
"culture": "it",
"texts": {
"Volo.AbpIo.Domain:010004": "Numero massimo di membri raggiunto!",
"Volo.AbpIo.Domain:010005": "Numero massimo di proprietari raggiunto!",
"Volo.AbpIo.Domain:010006": "Questo utente è già proprietario di questa organizzazione!",
"Volo.AbpIo.Domain:010007": "Questo utente è già uno sviluppatore in questa organizzazione!",
"Volo.AbpIo.Domain:010008": "Il numero di sviluppatori consentito non può essere inferiore al numero di sviluppatori corrente!",
"Volo.AbpIo.Domain:010009": "Il numero di sviluppatori consentito non può essere inferiore a 0!",
"Volo.AbpIo.Domain:010010": "Il numero massimo di indirizzi mac è stato superato!",
"Volo.AbpIo.Domain:010011": "La licenza personale non può avere più di 1 sviluppatore!",
"Volo.AbpIo.Domain:010012": "La licenza non può essere estesa un mese dopo la scadenza della licenza!",
"Volo.AbpIo.Domain:020001": "Impossibile eliminare questo pacchetto NPM perché i pacchetti Nuget \"{NugetPackages}\" dipendono da questo pacchetto.",
"Volo.AbpIo.Domain:020002": "Impossibile eliminare questo pacchetto NPM perché i moduli \"{Modules}\" utilizzano questo pacchetto.",
"Volo.AbpIo.Domain:020003": "Impossibile eliminare questo pacchetto NPM perché i moduli \"{Modules}\" utilizzano questo pacchetto e i pacchetti Nuget \"{NugetPackages}\" dipendono da questo pacchetto.",
"Volo.AbpIo.Domain:020004": "Impossibile eliminare questo pacchetto Nuget perché i moduli \"{Modules}\" utilizzano questo pacchetto.",
"WantToLearn?": "Vuoi imparare?",
"ReadyToGetStarted?": "Pronto per iniziare?",
"JoinOurCommunity": "Unisciti alla nostra community",
"GetStartedUpper": "INIZIARE",
"ForkMeOnGitHub": "Fork me su GitHub",
"Features": "Caratteristiche",
"GetStarted": "Iniziare",
"Documents": "Documenti",
"Community": "Comunità",
"ContributionGuide": "Guida al contributo",
"Blog": "Blog",
"Commercial": "Commerciale",
"MyAccount": "Il mio conto",
"Permission:License": "Licenza",
"Permission:UserInfo": "Informazioni utente",
"SeeDocuments": "Vedi Documenti",
"Samples": "Campioni",
"Framework": "Struttura",
"Support": "Supporto"
}
}

30
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en-GB.json

@ -34,6 +34,34 @@
"JoinOurMarketingNewsletter": "Join our marketing newsletter",
"WouldLikeToReceiveMarketingMaterials": "I would like to receive marketing materials e.g. product deals & special offers.",
"StartUsingYourLicenseNow": "Start using your license now!",
"WelcomePage": "Welcome Page"
"WelcomePage": "Welcome Page",
"CompanyName": "Company name",
"YourCompanyName": "Your company name",
"FirstName": "First name",
"LastName": "Last name",
"Optional": "Optional",
"YourFirstName": "Your first name",
"YourLastName": "Your last name",
"SpecialOffer": "Special Offer",
"SpecialOfferMessage": "Hurry up! Prices are valid for a limited time.",
"DiscountRequest": "Discount Request",
"DiscountRequestDescribeCustomerQuestion": "Which of the following describes you?",
"DiscountRequestStudentEmailMessage": "Email Address must contain 'edu'.",
"DiscountRequestDeveloperCount": "How many developers are you?",
"DiscountRequestDeveloperCountExceedMessage": "We don't provide discounted license for companies that has over {0} developers.",
"DiscountRequestOrganizationName": "Company/organization/school name",
"Website": "Website",
"GithubUsername": "GitHub username",
"PhoneNumber": "Phone number",
"Country": "Country",
"DescribeABPCommercialUsage": "Describe the project you are planning to develop based on APB Commercial",
"DiscountRequestCertifyInformationMessage": "I certify all information is true and correct.",
"DiscountRequestReceived": "We have received your discount request.",
"DiscountRequestStatusMessage": "We will respond to you after checking the information you have provided.",
"MVCOrRazorPages": "MVC (Razor Pages)",
"Angular": "Angular",
"Blazor": "Blazor",
"New": "New",
"MongoDB": "MongoDB"
}
}

30
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/en.json

@ -291,6 +291,34 @@
"PayViaAmexCard": "How can I pay via my AMEX card?",
"PayViaAmexCardDescription": "The default payment gateway 'Iyzico' may decline some AMEX credit cards due to the security measures. In this case, you can pay through the alternative payment gateway '2Checkout'.",
"ThankYou": "Thank you",
"InvalidReCaptchaErrorMessage": "There was an error verifying reCAPTCHA. Please try again."
"InvalidReCaptchaErrorMessage": "There was an error verifying reCAPTCHA. Please try again.",
"CompanyName": "Company name",
"YourCompanyName": "Your company name",
"FirstName": "First name",
"LastName": "Last name",
"Optional": "Optional",
"YourFirstName": "Your first name",
"YourLastName": "Your last name",
"SpecialOffer": "Special Offer",
"SpecialOfferMessage": "Hurry up! Prices are valid for a limited time.",
"DiscountRequest": "Discount Request",
"DiscountRequestDescribeCustomerQuestion": "Which of the following describes you?",
"DiscountRequestStudentEmailMessage": "Email Address must contain 'edu'.",
"DiscountRequestDeveloperCount": "How many developers are you?",
"DiscountRequestDeveloperCountExceedMessage": "We don't provide discounted license for companies that has over {0} developers.",
"DiscountRequestOrganizationName": "Company/organization/school name",
"Website": "Website",
"GithubUsername": "GitHub username",
"PhoneNumber": "Phone number",
"Country": "Country",
"DescribeABPCommercialUsage": "Describe the project you are planning to develop based on APB Commercial",
"DiscountRequestCertifyInformationMessage": "I certify all information is true and correct.",
"DiscountRequestReceived": "We have received your discount request.",
"DiscountRequestStatusMessage": "We will respond to you after checking the information you have provided.",
"MVCOrRazorPages": "MVC (Razor Pages)",
"Angular": "Angular",
"Blazor": "Blazor",
"New": "New",
"MongoDB": "MongoDB"
}
}

38
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/FR.json → abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/fr.json

@ -8,16 +8,16 @@
"DeveloperCount": "Développeurs alloués / totaux",
"QuestionCount": "Questions restantes / totales",
"Unlimited": "Illimité",
"Owners": "Les propriétaires",
"Owners": "Propriétaires",
"AddMember": "Ajouter un membre",
"AddOwner": "Ajouter un propriétaire",
"AddDeveloper": "Ajouter un développeur",
"UserName": "Nom d'utilisateur",
"Name": "Nom",
"EmailAddress": "Adresse e-mail",
"Developers": "Les développeurs",
"Developers": "Développeurs",
"LicenseType": "Type de licence",
"Manage": "Faire en sorte",
"Manage": "Gérer",
"StartDate": "Date de début",
"EndDate": "Date de fin",
"Modules": "Modules",
@ -42,7 +42,7 @@
"NotOrganizationMember": "Vous n'êtes membre d'aucune organisation.",
"UnsubscribeLicenseExpirationEmailSuccessTitle": "Désabonnement réussi",
"UnsubscribeLicenseExpirationEmailSuccessMessage": "Vous ne recevrez plus d'e-mails de rappel de la date d'expiration de la licence.",
"IndexPageHeroSection": "<span class = \"first-line\"> Une plate-forme de développement Web </span> <span class = \"second-line\"> complète </span> <span class = \"third-line\"> intégrée <img src = \"{0}\" width = \"110\" class = \"ml-1\" /> cadre </span>",
"IndexPageHeroSection": "<span class = \"first-line\">Une plate-forme de développement Web</span><span class = \"second-line\"> complète </span> <span class = \"third-line\"> intégrée <img src = \"{0}\" width = \"110\" class = \"ml-1\" /> cadre </span>",
"AbpCommercialShortDescription": "ABP Commercial fournit des modules d'application prédéfinis, des outils de développement rapide d'applications, des thèmes d'interface utilisateur professionnels, un support premium et plus encore.",
"LiveDemo": "Démo en direct",
"GetLicence": "Obtenez une licence",
@ -52,7 +52,7 @@
"Templates": "Modèles",
"Developer": "Développeur",
"Tools": "Outils",
"Premium": "Prime",
"Premium": "Premium",
"PremiumSupport": "Assistance Premium",
"PremiumForumSupport": "Assistance du forum Premium",
"UI": "UI",
@ -61,26 +61,26 @@
"Send": "Envoyer",
"Learn": "Apprendre",
"AdditionalServices": "Des services supplémentaires",
"WhatIsABPFramework": "QUEL EST LE CADRE ABP?",
"WhatIsABPFramework": "QU'EST-CE QUE LE FRAMEWORK ABP?",
"OpenSourceBaseFramework": "Framework de base Open Source",
"ABPFrameworkExplanation": "<p class = \"lead\"> ABP Commercial est basé sur ABP Framework, un framework d'applications Web open source et communautaire pour ASP.NET Core. </p> <p> ABP Framework fournit une excellente infrastructure pour écrire maintenable et extensible et du code testable avec les meilleures pratiques. </p> <p> Construit et intégré à des outils populaires que vous connaissez déjà. Faible courbe d'apprentissage, adaptation facile, développement confortable. </p>",
"Modular": "Modulaire",
"MicroserviceCompatible": "Compatible avec les microservices",
"DomainDrivenDesignInfrastructure": "Infrastructure de conception pilotée par domaine",
"MultiTenancy": "Locations multiples",
"MultiTenancy": "Multi-souscrivant",
"DistributedMessaging": "Messagerie distribuée",
"DynamicProxying": "Proxying dynamique",
"BackgroundJobs": "Emplois d'arrière-plan",
"BackgroundJobs": "Tâches d'arrière-plan",
"AuditLogging": "Journalisation d'audit",
"BLOBStoring": "Stockage BLOB",
"BundlingMinification": "Regroupement et minification",
"BundlingMinification": "Bundling et minification",
"AdvancedLocalization": "Localisation avancée",
"ManyMore": "Beaucoup plus",
"ExploreTheABPFramework": "Explorez le cadre ABP",
"WhyUseTheABPCommercial": "Pourquoi utiliser la publicité ABP?",
"ExploreTheABPFramework": "Explorez le Framework ABP",
"WhyUseTheABPCommercial": "Pourquoi utiliser ABP Commercial?",
"WhyUseTheABPCommercialExplanation": "<p class = \"lead mt- 5\"> La création d'applications Web de niveau entreprise peut être complexe et prendre du temps. </p> <p> ABP Commercial offre l'infrastructure de base parfaite nécessaire pour tous les ASP.NET Core modernes de niveau entreprise solutions basées. De la conception au déploiement, l'ensemble du cycle de développement est optimisé par les fonctionnalités et modules intégrés d'ABP. </p>",
"StartupTemplatesShortDescription": "Les modèles de démarrage vous permettent de démarrer votre projet en quelques secondes.",
"UIFrameworksOptions": "Options de cadres d'interface utilisateur;",
"UIFrameworksOptions": "Options de frameworks d'interface utilisateur;",
"DatabaseProviderOptions": "Options du fournisseur de base de données;",
"PreBuiltApplicationModules": "Modules d'application prédéfinis",
"PreBuiltApplicationModulesShortDescription": "Les exigences d'application les plus courantes sont déjà développées pour vous en tant que modules réutilisables.",
@ -92,19 +92,19 @@
"LanguageManagement": "Gestion de la langue",
"TextTemplateManagement": "Gestion des modèles de texte",
"See All Modules": "VoirTousModules",
"ABPSuite": "Suite ABP",
"ABPSuite": "ABP Suite",
"AbpSuiteShortDescription": "ABP Suite est un outil complémentaire à ABP Commercial.",
"AbpSuiteExplanation": "Il vous permet de créer des pages Web en quelques minutes. C'est un outil global .NET Core qui peut être installé à partir de la ligne de commande. Il peut créer une nouvelle solution ABP, générer des pages CRUD de la base de données vers le front-end.",
"Details": "Des détails",
"Details": "Détails",
"LeptonTheme": "Thème Lepton",
"ProfessionalModernUIThemes": "Thèmes d'interface utilisateur professionnels et modernes",
"LeptonThemeExplanation": "Lepton fournit une gamme de thèmes d'administration Bootstrap qui servent de base solide pour tout projet nécessitant un tableau de bord d'administration.",
"DefaultTheme": "Thème par défaut",
"MaterialTheme": "Thème matériel",
"MaterialTheme": "Thème Material",
"Default2Theme": "Thème par défaut 2",
"DarkTheme": "Thème sombre",
"DarkBlueTheme": "Thème bleu foncé",
"LightTheme": "Thème léger",
"LightTheme": "Thème clair",
"ProudToWorkWith": "Fier de travailler avec",
"OurConsumers": "Des centaines d'entreprises et de développeurs dans plus de 50 pays dans le monde font confiance à ABP Commercial.",
"JoinOurConsumers": "Rejoignez-les et créez rapidement des produits incroyables.",
@ -125,14 +125,14 @@
"Contact": "Contacter",
"TellUsWhatYouNeed": "Dites-nous ce dont vous avez besoin.",
"YourMessage": "Votre message",
"YourFullName": "Ton nom complet",
"YourFullName": "Votre nom complet",
"EmailField": "Adresse e-mail",
"YourEmailAddress": "Votre adresse email",
"HowMayWeHelpYou": "Comment pouvons nous vous aider?",
"SendMessage": "Envoyer le message",
"Success": "Succès",
"WeWillReplyYou": "Nous avons reçu votre message et vous contacterons sous peu.",
"GoHome": "Rentrer chez soi",
"GoHome": "Retour à l'acceuil",
"CreateLiveDemo": "Créer une démo en direct",
"RegisterToTheNewsletter": "Inscrivez-vous à la newsletter pour recevoir des informations concernant ABP.IO, y compris les nouvelles versions, etc.",
"EnterYourEmailOrLogin": "Saisissez votre adresse e-mail pour créer votre démo ou <a href=\"{0}\"> Connectez-vous </a> à l'aide de votre compte existant.",
@ -264,7 +264,7 @@
"Documentation": "Documentation",
"SeeModulesDocument": "Voir le document des modules pour une liste de tous les modules commerciaux (pro) et leurs documents.",
"Pricing": "Tarification",
"PricingExplanation": "Choisissez les fonctionnalités et fonctionnalités dont votre entreprise a besoin aujourd'hui. Mettez à niveau facilement au fur et à mesure que votre entreprise se développe.",
"PricingExplanation": "Choisissez les fonctionnalités dont votre entreprise a besoin aujourd'hui. Mettez à niveau facilement au fur et à mesure que votre entreprise se développe.",
"Team": "Équipe",
"Business": "Affaires",
"Enterprise": "Entreprise",

296
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/hi.json

@ -0,0 +1,296 @@
{
"culture": "hi",
"texts": {
"OrganizationManagement": "संगठन का प्रबंधन",
"OrganizationList": "संगठन सूची",
"Volo.AbpIo.Commercial:010003": "आप इस संगठन के मालिक नहीं हैं!",
"OrganizationNotFoundMessage": "कोई संगठन नहीं मिला!",
"DeveloperCount": "आवंटित / कुल डेवलपर्स",
"QuestionCount": "शेष / कुल प्रश्न",
"Unlimited": "असीमित",
"Owners": "मालिकों",
"AddMember": "सदस्य जोड़ें",
"AddOwner": "मालिक जोड़ें",
"AddDeveloper": "डेवलपर जोड़ें",
"UserName": "उपयोगकर्ता नाम",
"Name": "नाम",
"EmailAddress": "ईमेल पता",
"Developers": "डेवलपर्स",
"LicenseType": "लाइसेंस के प्रकार",
"Manage": "प्रबंधित",
"StartDate": "आरंभ करने की तिथि",
"EndDate": "समाप्ति तिथि",
"Modules": "मॉड्यूल",
"LicenseExtendMessage": "आपकी लाइसेंस समाप्ति तिथि {0} तक बढ़ा दी गई है",
"LicenseUpgradeMessage": "आपका लाइसेंस {0} में अपग्रेड किया गया है",
"LicenseAddDeveloperMessage": "{0} डेवलपर्स ने आपके लाइसेंस में जोड़ा",
"Volo.AbpIo.Commercial:010004": "निर्दिष्ट उपयोगकर्ता नहीं मिल सकता है! उपयोगकर्ता को पहले से ही पंजीकृत होना चाहिए।",
"MyOrganizations": "मेरे संगठन",
"ApiKey": "एपीआई कुंजी",
"UserNameNotFound": "उपयोगकर्ता नाम {0} का कोई उपयोगकर्ता नहीं है",
"SuccessfullyAddedToNewsletter": "हमारे न्यूज़लेटर की सदस्यता के लिए धन्यवाद!",
"MyProfile": "मेरी प्रोफाइल",
"EmailNotValid": "कृपया एक वैध ई - मेल एड्रेस डालें।",
"JoinOurMarketingNewsletter": "हमारे विपणन समाचार पत्र में शामिल हों",
"WouldLikeToReceiveMarketingMaterials": "मैं उत्पाद सौदों और विशेष प्रस्तावों जैसे विपणन सामग्री प्राप्त करना चाहता हूं।",
"StartUsingYourLicenseNow": "अब अपने लाइसेंस का उपयोग शुरू करें!",
"WelcomePage": "स्वागत पृष्ठ",
"UnsubscriptionExpireEmail": "लाइसेंस समाप्ति तिथि अनुस्मारक ईमेल से सदस्यता समाप्त करें",
"UnsubscribeLicenseExpireEmailReminderMessage": "इस ईमेल सदस्यता में केवल आपकी लाइसेंस समाप्ति तिथि याद दिलाने की होती है।",
"UnsubscribeFromLicenseExpireEmails": "यदि आप अपने लाइसेंस की समाप्ति तिथि के बारे में ईमेल प्राप्त नहीं करना चाहते हैं, तो आप किसी भी समय अपनी सदस्यता समाप्त कर सकते हैं।",
"Unsubscribe": "सदस्यता रद्द",
"NotOrganizationMember": "आप किसी संगठन के सदस्य नहीं हैं।",
"UnsubscribeLicenseExpirationEmailSuccessTitle": "सफलतापूर्वक सदस्यता समाप्त कर दी गई",
"UnsubscribeLicenseExpirationEmailSuccessMessage": "अब आपको लाइसेंस समाप्ति तिथि अनुस्मारक ईमेल प्राप्त नहीं होंगे।",
"IndexPageHeroSection": "<span class = \"first-line\"> एक पूर्ण </ span> <span class = \"दूसरी-पंक्ति\"> वेब विकास मंच </ span> <span class = \"third-line\"> अंतर्निहित <img src = \"{0}\" चौड़ाई = \"110\" वर्ग = \"एमएल -1\" /> ढांचा </ span>",
"AbpCommercialShortDescription": "एबीपी कमर्शियल प्री-बिल्ट एप्लिकेशन मॉड्यूल, रैपिड एप्लिकेशन डेवलपमेंट टूलिंग, पेशेवर यूआई थीम, प्रीमियम सपोर्ट आदि प्रदान करता है।",
"LiveDemo": "लाइव डेमो",
"GetLicence": "एक लाइसेंस प्राप्त करें",
"Application": "आवेदन",
"StartupTemplates": "स्टार्टअप टेम्पलेट",
"Startup": "चालू होना",
"Templates": "टेम्पलेट्स",
"Developer": "डेवलपर",
"Tools": "उपकरण",
"Premium": "प्रीमियम",
"PremiumSupport": "प्रीमियम सहायता",
"PremiumForumSupport": "प्रीमियम फोरम समर्थन",
"UI": "यूआई",
"Themes": "विषयों",
"JoinOurNewsletter": "हमारे समाचार पत्र शामिल हों",
"Send": "संदेश",
"Learn": "सीखना",
"AdditionalServices": "अतिरिक्त सेवाएं",
"WhatIsABPFramework": "ABP फ्रेमवर्क क्या है?",
"OpenSourceBaseFramework": "ओपन सोर्स बेस फ्रेमवर्क",
"ABPFrameworkExplanation": "<p class = \"lead\"> ABP कमर्शियल ASP.NET Core पर एक खुला स्रोत और समुदाय संचालित वेब एप्लीकेशन फ्रेमवर्क है। और सर्वोत्तम प्रथाओं के साथ परीक्षण योग्य कोड। </ p> <p> आप पहले से ही जानते हैं कि लोकप्रिय उपकरणों पर निर्मित और एकीकृत। कम सीखने की अवस्था, आसान अनुकूलन, आरामदायक विकास। </ p>",
"Modular": "मॉड्यूलर",
"MicroserviceCompatible": "माइक्रोसिस्ट सेवा संगत",
"DomainDrivenDesignInfrastructure": "डोमेन संचालित डिज़ाइन इन्फ्रास्ट्रक्चर",
"MultiTenancy": "बहु किरायेदारी",
"DistributedMessaging": "वितरित संदेश",
"DynamicProxying": "गतिशील प्रॉक्सी",
"BackgroundJobs": "बैकग्राउंड जॉब्स",
"AuditLogging": "ऑडिट लॉगिंग",
"BLOBStoring": "ब्लॉब भंडारण",
"BundlingMinification": "बंडलिंग और न्यूनतमकरण",
"AdvancedLocalization": "उन्नत स्थानीयकरण",
"ManyMore": "बहुत सारी",
"ExploreTheABPFramework": "ABP फ्रेमवर्क का अन्वेषण करें",
"WhyUseTheABPCommercial": "एबीपी कमर्शियल का उपयोग क्यों करें?",
"WhyUseTheABPCommercialExplanation": "<p class = \"lead mt- 5\"> बिल्डिंग एंटरप्राइज-ग्रेड वेब एप्लिकेशन जटिल और समय लेने वाली हो सकती हैं। </ p> <p> ABP कमर्शियल सभी आधुनिक एंटरप्राइज-ग्रेड ASP.NET Core के लिए आवश्यक सही आधारभूत संरचना प्रदान करता है। आधारित समाधान। डिज़ाइन से परिनियोजन तक, संपूर्ण विकास चक्र ABP की अंतर्निहित विशेषताओं और मॉड्यूल द्वारा सशक्त है। </ p",
"StartupTemplatesShortDescription": "स्टार्टअप टेम्प्लेट आपको कुछ ही सेकंड में अपने प्रोजेक्ट के लिए जंप-स्टार्ट करते हैं।",
"UIFrameworksOptions": "यूआई चौखटे विकल्प;",
"DatabaseProviderOptions": "डेटाबेस प्रदाता विकल्प;",
"PreBuiltApplicationModules": "पूर्व निर्मित अनुप्रयोग मॉड्यूल",
"PreBuiltApplicationModulesShortDescription": "अधिकांश सामान्य अनुप्रयोग आवश्यकताएं आपके लिए पुन: प्रयोज्य मॉड्यूल के रूप में पहले से ही विकसित हैं।",
"Account": "लेखा",
"Blogging": "ब्लॉगिंग",
"Identity": "पहचान",
"IdentityServer": "पहचान सर्वर",
"Saas": "सास",
"LanguageManagement": "भाषा प्रबंधन",
"TextTemplateManagement": "पाठ टेम्पलेट प्रबंधन",
"See All Modules": "SeeAllModules",
"ABPSuite": "एबीपी सूट",
"AbpSuiteShortDescription": "ABP सुइट ABP वाणिज्यिक का एक पूरक उपकरण है।",
"AbpSuiteExplanation": "यह आपको कुछ ही मिनटों में वेब पेज बनाने की अनुमति देता है। यह .NET कोर ग्लोबल टूल है जिसे कमांड लाइन से इंस्टॉल किया जा सकता है। यह एक नया ABP समाधान बना सकता है, डेटाबेस से फ्रंट-एंड तक CRUD पेज बना सकता है।",
"Details": "विवरण",
"LeptonTheme": "लिप्टन थीम",
"ProfessionalModernUIThemes": "पेशेवर, आधुनिक यूआई थीम",
"LeptonThemeExplanation": "लेप्टान बूटस्ट्रैप व्यवस्थापक थीम का एक सरगम प्रदान करता है जो किसी भी परियोजना के लिए एक ठोस नींव के रूप में कार्य करता है जिसमें व्यवस्थापक डैशबोर्ड की आवश्यकता होती है।",
"DefaultTheme": "पूर्व निर्धारित विषय",
"MaterialTheme": "सामग्री थीम",
"Default2Theme": "डिफ़ॉल्ट 2 थीम",
"DarkTheme": "डार्क थीम",
"DarkBlueTheme": "डार्क ब्लू थीम",
"LightTheme": "प्रकाश थीम",
"ProudToWorkWith": "गर्व के साथ काम करने के लिए",
"OurConsumers": "दुनिया भर में 50 से अधिक देशों के सैकड़ों उद्यम और डेवलपर्स एबीपी कमर्शियल पर निर्भर हैं।",
"JoinOurConsumers": "उनके साथ जुड़ें और तेजी से अद्भुत उत्पादों का निर्माण करें।",
"AdditionalServicesExplanation": "क्या आपको अतिरिक्त या कस्टम सेवाओं की आवश्यकता है? <strong> हम और हमारे साथी प्रदान कर सकते हैं; </ strong>",
"CustomProjectDevelopment": "कस्टम परियोजना विकास",
"CustomProjectDevelopmentExplanation": "अपने कस्टम प्रोजेक्ट्स के लिए समर्पित डेवलपर्स।",
"PortingExistingProjects": "मौजूदा परियोजनाओं को पोर्ट करना",
"PortingExistingProjectsExplanation": "एबीपी प्लेटफॉर्म पर अपनी विरासत परियोजनाओं को माइग्रेट करना।",
"LiveSupport": "लाइव सहायता",
"LiveSupportExplanation": "जरूरत पड़ने पर लाइव रिमोट सपोर्ट का विकल्प।",
"Training": "प्रशिक्षण",
"TrainingExplanation": "अपने डेवलपर्स के लिए समर्पित प्रशिक्षण।",
"OnBoarding": "ज्ञानप्राप्ति",
"OnBoardingExplanation": "अपने विकास, CI और सीडी वातावरण को सेटअप करने में मदद करें।",
"PrioritizedTechnicalSupport": "प्राथमिक तकनीकी सहायता",
"PremiumSupportExplanation": "एबीपी ढांचे के महान सामुदायिक समर्थन के अलावा, हमारी सहायता टीम उच्च प्राथमिकता वाले वाणिज्यिक उपयोगकर्ताओं की तकनीकी सवालों और समस्याओं का जवाब देती है।",
"SeeTheSupportOptions": "समर्थन विकल्प देखें",
"Contact": "संपर्क करें",
"TellUsWhatYouNeed": "अपनी ज़रूरत के बारे में हमें बताएं।",
"YourMessage": "आपका संदेश",
"YourFullName": "आपका पूरा नाम",
"EmailField": "ईमेल पता",
"YourEmailAddress": "आपका ईमेल पता",
"HowMayWeHelpYou": "हम कैसे आपकी सहायता कर सकते हैं?",
"SendMessage": "मेसेज भेजें",
"Success": "सफलता",
"WeWillReplyYou": "हमें आपका संदेश प्राप्त हुआ और शीघ्र ही संपर्क में आएगा।",
"GoHome": "घर जाओ",
"CreateLiveDemo": "लाइव डेमो बनाएँ",
"RegisterToTheNewsletter": "ABP.IO के बारे में जानकारी प्राप्त करने के लिए न्यूज़लेटर के लिए रजिस्टर करें, जिसमें नई रिलीज़ आदि शामिल हैं।",
"EnterYourEmailOrLogin": "अपने मौजूदा खाते का उपयोग करके अपना डेमो बनाने के लिए अपना ई-मेल पता दर्ज करें या अपना प्रदर्शन <a href=\"lights0 Ideal\"> लॉगिन </a> करें।",
"ApplicationTemplate": "एप्लिकेशन टेम्पलेट",
"ApplicationTemplateExplanation": "एप्लिकेशन स्टार्टअप टेम्पलेट का उपयोग एक नया वेब एप्लिकेशन बनाने के लिए किया जाता है।",
"EfCoreProvider": "इकाई ढाँचा (SQL सर्वर, MySQL, PostgreSQL, Oracle <a href=\"https://docs.microsoft.com/en-us/ef/core/providers/\"> और अन्य </a> का समर्थन करता है)",
"AlreadyIncludedInTemplateModules": "निम्नलिखित मॉड्यूल पहले से ही इस टेम्पलेट में शामिल और कॉन्फ़िगर किए गए हैं:",
"ApplicationTemplateArchitecture": "यह एप्लिकेशन टेम्पलेट tiered आर्किटेक्चर का भी समर्थन करता है जहां UI लेयर, API लेयर और ऑथेंटिकेशन सर्विस को शारीरिक रूप से अलग किया जाता है।",
"SeeTheGuideOrGoToTheLiveDemo": "इस टेम्पलेट के बारे में तकनीकी जानकारी के लिए डेवलपर गाइड देखें या लाइव डेमो पर जाएं।",
"DeveloperGuide": "डेवलपर गाइड",
"ModuleTemplate": "मॉड्यूल टेम्पलेट",
"ModuleTemplateExplanation1": "आप एक मॉड्यूल बनाना और विभिन्न अनुप्रयोगों में पुन: उपयोग करना चाहते हैं? यह स्टार्टअप टेम्पलेट एक पुन: प्रयोज्य <strong> अनुप्रयोग मॉड्यूल </ strong> या <strong> microservice </ strong> बनाने के लिए शुरू करने के लिए सब कुछ तैयार करता है।",
"ModuleTemplateExplanation2": "<p> आप एकल मॉड्यूल के लिए एकल या एकाधिक UI फ्रेमवर्क, एकल या एकाधिक डेटाबेस प्रदाता का समर्थन कर सकते हैं। स्टार्टअप टेम्प्लेट को चलाने के लिए कॉन्फ़िगर किया गया है और <strong> अपने मॉड्यूल का परीक्षण करें </ strong> यूनिट और एकीकरण परीक्षण के बुनियादी ढांचे के अलावा न्यूनतम आवेदन में। </ p> <p> इस टेम्पलेट के बारे में तकनीकी जानकारी के लिए डेवलपर गाइड देखें। </ p>",
"WithAllStyleOptions": "सभी शैली विकल्पों के साथ",
"Demo": "डेमो",
"SeeAllModules": "सभी मॉड्यूल देखें",
"ABPCLIExplanation": "ABP CLI (कमांड लाइन इंटरफेस) ABP आधारित समाधानों के लिए कुछ सामान्य ऑपरेशन करने के लिए एक कमांड लाइन टूल है।",
"ABPSuiteEasilyCURD": "एबीपी सूट एक उपकरण है जो आपको आसानी से CRUD पेज बनाने की अनुमति देता है",
"WeAreHereToHelp": "हम यहाँ हैं <span class = \"zero-text\"> मदद </ span>",
"BrowseOrAskQuestion": "आप हमारे सहायता विषयों को ब्राउज़ कर सकते हैं या अक्सर पूछे जाने वाले प्रश्नों में खोज कर सकते हैं, या आप <a href=\" जटिलताओं0arios\" class=\"text-success\"> संपर्क फ़ॉर्म </a> का उपयोग करके हमसे एक प्रश्न पूछ सकते हैं।",
"SearchQuestionPlaceholder": "अक्सर पूछे जाने वाले प्रश्नों में खोजें",
"WhatIsTheABPCommercial": "ABP कमर्शियल क्या है?",
"WhatAreDifferencesThanAbpFramework": "ओपन सोर्स ABP फ्रेमवर्क और ABP कमर्शियल के बीच क्या अंतर हैं?",
"ABPCommercialExplanation": "एबीपी कमर्शियल, खुले स्रोत के शीर्ष पर बनाए गए प्रीमियम मॉड्यूल, टूल, थीम और सेवाओं का एक सेट है जो <a target=\"_blank\" href=\"ministr0arios\"> ABP फ्रेमवर्क </a> है। एबीपी कमर्शियल को एबीपी फ्रेमवर्क के पीछे उसी टीम द्वारा विकसित और समर्थित किया जा रहा है।",
"WhatAreDifferencesThanABPFrameworkExplanation": "<p> <a target=\"_blank\" href=\"lights0 Ideal\"> ABP फ्रेमवर्क </a> ASP.NET Core के लिए एक मॉड्यूलर, थीमेबल, माइक्रो-सर्विस संगत एप्लिकेशन डेवलपमेंट फ्रेमवर्क है। यह आपको हर नई परियोजना के लिए खुद को दोहराने के बजाय अपने खुद के व्यवसाय कोड पर ध्यान केंद्रित करने के लिए एक पूर्ण वास्तुकला और एक मजबूत बुनियादी ढांचा प्रदान करता है। यह सॉफ्टवेयर विकास सर्वोत्तम प्रथाओं और लोकप्रिय उपकरणों पर आधारित है जिन्हें आप पहले से जानते हैं। </ p> <p> एबीपी फ्रेमवर्क पूरी तरह से मुक्त, खुला स्रोत और समुदाय-संचालित है। यह एक मुफ्त थीम और कुछ पूर्व-निर्मित मॉड्यूल (जैसे पहचान प्रबंधन और किरायेदार प्रबंधन) प्रदान करता है। </ p>",
"VisitTheFrameworkVSCommercialDocument": "अधिक जानकारी के लिए, निम्न लिंक पर जाएं <a href=\"ministr0arios\" target=\"_blank\"> {1} </a>",
"ABPCommercialFollowingBenefits": "एबीपी वाणिज्यिक एबीपी ढांचे के शीर्ष पर निम्नलिखित लाभ जोड़ता है;",
"Professional": "पेशेवर",
"UIThemes": "यूआई थीम",
"EnterpriseModules": "एंटरप्राइज रेडी, फीचर से भरपूर, पहले से निर्मित <a href=\"lights0 Ideal\"> एप्लिकेशन मॉड्यूल </a> (जैसे पहचान सर्वर प्रबंधन, सास प्रबंधन, भाषा प्रबंधन)",
"ToolingToSupport": "अपनी विकास उत्पादकता का समर्थन करने का टूल",
"PremiumSupportLink": "प्रीमियम <a href=\"ministr0arios\" target=\"_blank\"> समर्थन </a>",
"WhatDoIDownloadABPCommercial": "जब मैं एबीपी कमर्शियल खरीदता हूं तो क्या डाउनलोड करता हूं?",
"CreateUnlimitedSolutions": "एक बार जब आप एक एबीपी कमर्शियल लाइसेंस खरीदते हैं, तो आप असीमित समाधान बना पाएंगे, जैसे कि <a href=\"find0 Ideal\"> Get Started </a> दस्तावेज़ में वर्णित है।",
"ABPCommercialSolutionExplanation": "जब आप एक नया एप्लिकेशन बनाते हैं, तो आपको अपनी प्राथमिकताओं के आधार पर एक विज़ुअल स्टूडियो समाधान (एक स्टार्टअप टेम्प्लेट) मिलता है। डाउनलोड किए गए समाधान में आपके लिए पहले से इंस्टॉल और कॉन्फ़िगर किए गए वाणिज्यिक मॉड्यूल और थीम हैं। यदि आप चाहें तो आप पहले से स्थापित मॉड्यूल को हटा सकते हैं या किसी अन्य मॉड्यूल को जोड़ सकते हैं। सभी मॉड्यूल और थीम डिफ़ॉल्ट रूप से एक NuGet / NPM पैकेज का उपयोग किया जाता है।",
"StartDevelopWithTutorials": "डाउनलोड किया गया समाधान अच्छी तरह से वास्तुकला और दस्तावेज है। आप अपने स्वयं के व्यवसाय कोड को इस आधार पर विकसित करना शुरू कर सकते हैं कि वह <a href=\"directory0 Ideal\"> ट्यूटोरियल्स </a> का अनुसरण कर सकता है",
"TryTheCommercialDemo": "ABP कमर्शियल स्टार्टअप टेम्प्लेट का उपयोग करके बनाए गए एक नमूना अनुप्रयोग को देखने के लिए आप <a href=\" जटिलताओं0 Ideal\"> डेमो </a> का प्रयास कर सकते हैं।",
"HowManyProducts": "ABP वाणिज्यिक का उपयोग करके मैं कितने विभिन्न उत्पाद / समाधान बना सकता हूं?",
"HowManyProductsExplanation": "ABP प्रोजेक्ट बनाने की कोई सीमा नहीं है। आप जितने चाहें उतने प्रोजेक्ट बना सकते हैं, उन्हें विकसित कर सकते हैं और उन्हें विभिन्न सर्वरों पर अपलोड कर सकते हैं।",
"HowManyDevelopers": "एबीपी कमर्शियल पर कितने डेवलपर काम कर सकते हैं?",
"HowManyDevelopersExplanation": "एबीपी वाणिज्यिक लाइसेंस प्रति डेवलपर हैं। विभिन्न लाइसेंस प्रकारों में अलग-अलग डेवलपर सीमाएँ होती हैं। हालाँकि, जब भी आपको आवश्यकता हो, आप किसी भी प्रकार के लाइसेंस में अधिक डेवलपर्स जोड़ सकते हैं। लाइसेंस प्रकार, डेवलपर सीमा और अतिरिक्त डेवलपर लागतों के लिए <a href=\" जटिलताओं0 Ideal\"> कीमतें </a> पृष्ठ देखें।",
"ChangingLicenseType": "क्या मैं भविष्य में अपना लाइसेंस प्रकार बदल सकता हूं?",
"ChangingLicenseTypeExplanation": "आप अपने समान लाइसेंस प्रकार में हमेशा नए डेवलपर्स को जोड़ सकते हैं। यह भी देखें \"एबीपी कमर्शियल पर कितने डेवलपर काम कर सकते हैं?\"। आप गणना मूल्य अंतर का भुगतान करके एक उच्च लाइसेंस के लिए भी अपग्रेड कर सकते हैं। जब आप उच्च लाइसेंस योजना में अपग्रेड करते हैं, तो आपको नई योजना का लाभ मिलता है, लेकिन लाइसेंस अपग्रेड लाइसेंस की समाप्ति की तारीख को नहीं बदलता है।",
"LicenseExtendUpgradeDiff": "लाइसेंस विस्तार और उन्नयन के बीच क्या अंतर है?",
"LicenseExtendUpgradeDiffExplanation": "<strong> विस्तार: </ strong> अपने लाइसेंस का विस्तार / नवीनीकरण करके, आप प्रीमियम समर्थन प्राप्त करना और मॉड्यूल और थीम के लिए प्रमुख अपडेट प्राप्त करना जारी रखेंगे। इसके अलावा, आप नई परियोजनाओं को जारी रखने में सक्षम होंगे। और आप अभी भी एबीपी सूट का उपयोग कर पाएंगे जो आपके विकास को गति देता है। <hr /> <strong> उन्नयन: </ strong> अपने लाइसेंस को अपग्रेड करके, आप एक उच्च लाइसेंस योजना को बढ़ावा देंगे जिससे आप अतिरिक्त लाभ प्राप्त कर सकेंगे। । लाइसेंस योजनाओं के बीच अंतर की जांच करने के लिए <a href=\"/pricing\"> लाइसेंस तुलना तालिका </a> देखें। <strong> दूसरी ओर, जब आप अपग्रेड करते हैं, तो आपकी लाइसेंस की समाप्ति तिथि नहीं बदलेगी! </ Strong> > अपनी लाइसेंस की अंतिम तिथि बढ़ाने के लिए, आपको अपने लाइसेंस का विस्तार करना होगा।",
"LicenseRenewalCost": "1 वर्ष के बाद लाइसेंस नवीनीकरण लागत क्या है?",
"LicenseRenewalCostExplanation": "सभी एबीपी वाणिज्यिक स्थायी लाइसेंसों का नवीकरण (विस्तार) दर लाइसेंस सूची मूल्य का {0} है। मानक टीम लाइसेंस का नवीनीकरण मूल्य $ {1} है, मानक व्यवसाय लाइसेंस $ {2} है और मानक एंटरप्राइज़ लाइसेंस $ {3} है। यदि आप पहले से ही ग्राहक हैं, तो उपलब्ध नवीनीकरण मूल्य निर्धारण की समीक्षा करने के लिए <a href='ministr4 Ideal' target='_blank'> अपने खाते में लॉग इन करें </a>।",
"HowDoIRenewMyLicense": "मैं अपने लाइसेंस का नवीनीकरण कैसे करूँ?",
"HowDoIRenewMyLicenseExplanation": "आप अपने लाइसेंस को <a href='elling0 Ideal' target='_blank'> संगठन प्रबंधन पृष्ठ </a> पर नेविगेट करके नवीनीकृत कर सकते हैं। हमारी रियायती अर्ली रिन्यूअल दरों का लाभ उठाने के लिए, सुनिश्चित करें कि आप अपने लाइसेंस की समय सीमा समाप्त होने से पहले नवीनीकरण करें। हालाँकि, जब आपका प्रारंभिक नवीनीकरण अवसर बंद हो जाता है, तो यह जानने की चिंता न करें। आपकी सदस्यता समाप्त होने से पहले आपको 2 अनुस्मारक ई-मेल प्राप्त होंगे। हम उन्हें 30 दिन, समाप्ति से 7 दिन पहले भेज देंगे।",
"IsSourceCodeIncluded": "क्या मेरे लाइसेंस में वाणिज्यिक मॉड्यूल और थीम का स्रोत कोड शामिल है?",
"IsSourceCodeIncludedExplanation1": "आपके द्वारा खरीदे गए लाइसेंस प्रकार पर निर्भर करता है:",
"IsSourceCodeIncludedExplanation2": "<strong> टीम </ strong>: आपका समाधान मॉड्यूल और थीम को NuGet और NPM पैकेज के रूप में उपयोग करता है। इसमें उनका स्रोत कोड शामिल नहीं है। इस तरह, जब भी कोई नया संस्करण उपलब्ध हो, आप इन मॉड्यूल और थीम को आसानी से अपग्रेड कर सकते हैं। हालाँकि, आप मॉड्यूल और थीम के स्रोत कोड प्राप्त नहीं कर सकते।",
"IsSourceCodeIncludedExplanation3": "<strong> व्यवसाय / उद्यम </ strong>: टीम लाइसेंस के अतिरिक्त, आप किसी भी मॉड्यूल या थीम की आवश्यकता के स्रोत कोड को डाउनलोड करने में सक्षम हैं। तुम भी एक विशेष मॉड्यूल के लिए NuGet / NPM पैकेज संदर्भ निकाल सकते हैं और इसे पूरी तरह से बदलने के लिए अपने समाधान के लिए अपने स्रोत कोड को सीधे जोड़ सकते हैं।",
"IsSourceCodeIncludedExplanation4": "<p> एक मॉड्यूल के स्रोत कोड को आपके समाधान में शामिल करना आपको उस मॉड्यूल को अनुकूलित करने की अधिकतम स्वतंत्रता देता है। हालाँकि, तब नया संस्करण जारी होने पर मॉड्यूल को स्वचालित रूप से अपग्रेड करना संभव नहीं होगा। </ p> <p> किसी भी लाइसेंस में ABP सुइट स्रोत कोड शामिल नहीं है, जो एक बाहरी उपकरण है जो आपके लिए कोड बनाता है और सहायता करता है आपके विकास के लिए। </ p> <p> लाइसेंस प्रकारों के अन्य अंतरों के लिए <a href=\"lights0 Ideal\"> मूल्य निर्धारण </a> पृष्ठ देखें। </ p>",
"ChangingDevelopers": "क्या मैं भविष्य में अपने संगठन के पंजीकृत डेवलपर्स को बदल सकता हूं?",
"ChangingDevelopersExplanation": "अपने लाइसेंस में नए डेवलपर्स को जोड़ने के अलावा, आप मौजूदा डेवलपर्स को भी बदल सकते हैं (आप एक डेवलपर को हटा सकते हैं और एक ही सीट पर एक नया जोड़ सकते हैं) बिना किसी अतिरिक्त लागत के।",
"WhatHappensWhenLicenseEnds": "मेरे लाइसेंस की अवधि समाप्त होने पर क्या होता है?",
"WhatHappensWhenLicenseEndsExplanation1": "ABP कमर्शियल लाइसेंस का प्रकार <a href=\" जटिलताओं0arios\" target=\"_blank\"> स्थायी लाइसेंस </a> है। आपके लाइसेंस की समय सीमा समाप्त होने के बाद, आप अपना प्रोजेक्ट विकसित करना जारी रख सकते हैं। और आप अपने लाइसेंस को नवीनीकृत करने के लिए बाध्य नहीं हैं। आपका लाइसेंस एक वर्ष के अपडेट और समर्थन योजना के साथ आता है। नई सुविधाओं को प्राप्त करने के लिए, प्रदर्शन में वृद्धि, बग फिक्स, समर्थन और एबीपी सूट का उपयोग करना जारी रखें, प्रत्येक वर्ष अपनी योजना को नवीनीकृत करना सुनिश्चित करें। जब आपका लाइसेंस समाप्त हो जाता है, तो आप निम्नलिखित लाभ प्राप्त नहीं कर पाएंगे;",
"WhatHappensWhenLicenseEndsExplanation2": "आप एबीपी कमर्शियल का उपयोग करके नए समाधान नहीं बना सकते हैं, लेकिन आप अपने मौजूदा अनुप्रयोगों को हमेशा के लिए विकसित कर सकते हैं।",
"WhatHappensWhenLicenseEndsExplanation3": "आप अपने मुख्य संस्करण के भीतर मॉड्यूल और विषयों के लिए अद्यतन प्राप्त करने में सक्षम होंगे। उदाहरण के लिए; यदि आप किसी मॉड्यूल के v3.2.0 का उपयोग कर रहे हैं, तो आप उस मॉड्यूल के v3.x.x (v3.3.0, v3.5.2 ... आदि) के लिए अपडेट प्राप्त कर सकते हैं। लेकिन आपको अगले प्रमुख संस्करण के लिए अपडेट नहीं मिल सकता है (जैसे v4.x, v5.x)",
"WhatHappensWhenLicenseEndsExplanation4": "आप अपने लाइसेंस समाप्त होने के बाद एबीपी वाणिज्यिक मंच में जोड़े गए नए मॉड्यूल और थीम स्थापित नहीं कर सकते।",
"WhatHappensWhenLicenseEndsExplanation5": "आप एबीपी सूट का उपयोग नहीं कर सकते।",
"WhatHappensWhenLicenseEndsExplanation6": "आपको अब और <a href=\" जटिलताओं0 Ideal\"> प्रीमियम सहायता </a> नहीं मिल सकती है।",
"WhatHappensWhenLicenseEndsExplanation7": "यदि आप इन लाभों को प्राप्त करना जारी रखना चाहते हैं तो आप अपनी सदस्यता को नवीनीकृत कर सकते हैं। जब आप अपनी सदस्यता को नवीनीकृत करते हैं तो 20% छूट मिलती है।",
"WhenShouldIRenewMyLicense": "मुझे अपना लाइसेंस कब नवीनीकृत करना चाहिए?",
"WhenShouldIRenewMyLicenseExplanation1": "यदि आप अपना लाइसेंस समाप्त होने के बाद अपने लाइसेंस का नवीनीकरण <strong> 1 महीने </ strong> के भीतर करते हैं, तो कुल लाइसेंस मूल्य पर% 20 छूट लागू होगी।",
"WhenShouldIRenewMyLicenseExplanation2": "यदि आप अपनी लाइसेंस की समाप्ति तिथि से 1 महीने के बाद अपना लाइसेंस नवीनीकृत करते हैं, तो नवीनीकरण मूल्य लाइसेंस खरीद मूल्य के समान होगा और आपके नवीकरण के लिए कोई छूट नहीं होगी।",
"TrialPlan": "क्या आपके पास एक परीक्षण योजना है?",
"TrialPlanExplanation": "अभी के लिए, एबीपी कमर्शियल में ट्रायल प्लान नहीं है। टीम लाइसेंस के लिए हम 30 दिन की मनी बैक गारंटी प्रदान करते हैं। आप पहले 30 दिनों में धनवापसी का अनुरोध कर सकते हैं। बिजनेस और एंटरप्राइज लाइसेंस के लिए, हम 30 दिनों में 60% रिफंड प्रदान करते हैं। ऐसा इसलिए है क्योंकि व्यवसाय और एंटरप्राइज़ लाइसेंस में सभी मॉड्यूल और थीम का पूर्ण स्रोत कोड शामिल है।",
"DoYouAcceptBankWireTransfer": "क्या आप बैंक वायर ट्रांसफर स्वीकार करते हैं?",
"DoYouAcceptBankWireTransferExplanation": "हां, हम बैंक वायर ट्रांसफर स्वीकार करते हैं। <br /> बैंक वायर ट्रांसफर के माध्यम से लाइसेंस राशि भेजने के बाद, हमें अपनी रसीद और अनुरोधित लाइसेंस प्रकार ई-मेल के माध्यम से भेजें। <br /> हमारे अंतरराष्ट्रीय बैंक खाते की जानकारी:",
"HowToUpgrade": "नया संस्करण उपलब्ध होने पर मौजूदा एप्लिकेशन को कैसे अपग्रेड किया जाए?",
"HowToUpgradeExplanation1": "जब आप ABP कमर्शियल का उपयोग करके एक नया एप्लिकेशन बनाते हैं, तो सभी मॉड्यूल और थीम को NuGet और NPM पैकेज के रूप में उपयोग किया जाता है। इसलिए, नया संस्करण उपलब्ध होने पर आप आसानी से संकुल को अपग्रेड कर सकते हैं।",
"HowToUpgradeExplanation2": "मानक NuGet / NPM अपग्रेड के अलावा, <a href=\"lights0arios\"> ABP CLI </a> एक अपडेट कमांड प्रदान करता है जो आपके समाधान में सभी एबीपी से संबंधित पैकेजों को स्वचालित रूप से ढूंढता है और उन्हें अपग्रेड करता है।",
"DatabaseSupport": "कौन से डेटाबेस सिस्टम समर्थित हैं?",
"DatabaseSupportExplanation": "ABP फ्रेमवर्क स्वयं ही डेटाबेस अज्ञेयवादी है और अपनी प्रकृति के अनुसार किसी भी डेटाबेस प्रदाता के साथ काम कर सकता है। वर्तमान में कार्यान्वित प्रदाताओं की सूची के लिए <a href=\" जटिलताओं0arios\" target=\"_blank\"> डेटा एक्सेस दस्तावेज़ </a> देखें।",
"UISupport": "कौन से UI फ्रेमवर्क समर्थित हैं?",
"Supported": "समर्थित",
"UISupportExplanation": "ABP फ्रेमवर्क स्वयं UI फ्रेमवर्क अज्ञेयवादी है और किसी भी UI फ्रेमवर्क के साथ काम कर सकता है। हालाँकि, सभी UI फ्रेमवर्क के लिए स्टार्टअप टेम्प्लेट, मॉड्यूल UI और थीम लागू नहीं किए गए थे। UI विकल्पों की अप-टू-डेट सूची के लिए <a href=\" जटिलताओं0arios\"> आरंभ किया गया दस्तावेज़ </a> देखें।",
"MicroserviceSupport": "क्या यह सूक्ष्म सेवा वास्तुकला का समर्थन करता है?",
"MicroserviceSupportExplanation1": "एबीपी ढांचे का एक प्रमुख लक्ष्य सूक्ष्म सेवा समाधान बनाने के लिए एक सुविधाजनक बुनियादी ढांचा प्रदान करना है। यह समझने के लिए कि यह माइक्रो-सर्विस सिस्टम बनाने में कैसे मदद करता है, यह समझने के लिए <a href=\" जटिलताओं0 Ideal\"> माइक्रो-सर्विस आर्किटेक्चर </a> दस्तावेज़ देखें।",
"MicroserviceSupportExplanation2": "सभी एबीपी कमर्शियल मॉड्यूल्स को <a href=\" जटिलताओं0arios\"> मॉड्यूल डेवलपमेंट बेस्ट प्रैक्टिस </a> दस्तावेज़ का पालन करके माइक्रो-सर्विस परिनियोजन परिदृश्य (अपने एपीआई और डेटाबेस के साथ) का समर्थन करने के लिए डिज़ाइन किया गया है।",
"MicroserviceSupportExplanation3": "हम आपको अपना स्वयं का समाधान बनाने में मदद करने के लिए एक माइक्रो-सेवा वास्तुकला कार्यान्वयन को प्रदर्शित करने वाला एक नमूना <a href=\"ministr0 Ideal\"> माइक्रो-सर्विस डेमो समाधान </a> प्रदान करते हैं।",
"MicroserviceSupportExplanation4": "तो, संक्षिप्त उत्तर \"<strong> हां है, यह सूक्ष्म सेवा वास्तुकला का समर्थन करता है </ strong>\"।",
"MicroserviceSupportExplanation5": "हालाँकि, एक माइक्रो-सर्विस सिस्टम एक समाधान है और हर समाधान में अलग-अलग आवश्यकताएं, नेटवर्क टोपोलॉजी, संचार परिदृश्य, प्रमाणीकरण संभावनाएं, डेटाबेस पृथक्करण / साझा करने के निर्णय, रनटाइम कॉन्फ़िगरेशन, 3 पार्टी सिस्टम एकीकरण और कई और अधिक होंगे।",
"MicroserviceSupportExplanation6": "ABP फ्रेमवर्क और ABP कमर्शियल आपको अपने स्वयं के समाधान का निर्माण करने में मदद करने के लिए सूक्ष्म सेवा परिदृश्य, सूक्ष्म सेवा संगत मॉड्यूल, नमूने और प्रलेखन के लिए बुनियादी ढाँचा प्रदान करता है। लेकिन अपने सपनों के समाधान को सीधे आपके लिए पहले से डाउनलोड करने की उम्मीद न करें। आपको इसे समझने और अपनी आवश्यकताओं के आधार पर कुछ हिस्सों को एक साथ लाने की आवश्यकता होगी।",
"WhereCanIDownloadSourceCode": "मैं स्रोत-कोड कहां से डाउनलोड कर सकता हूं?",
"WhereCanIDownloadSourceCodeExplanation": "आप एबीपी सूट या एबीपी सीएलआई के माध्यम से सभी एबीपी मॉड्यूल, कोणीय पैकेज और थीम के स्रोत कोड डाउनलोड कर सकते हैं। <a href=\"find0 Ideal\"> स्रोत-कोड डाउनलोड कैसे करें? </a> देखें",
"ComputerLimitation": "एबीपी विकसित करते समय एक डेवलपर कितने कंप्यूटरों पर लॉगिन कर सकता है?",
"ComputerLimitationExplanation": "हम विशेष रूप से प्रति व्यक्ति / लाइसेंस प्राप्त डेवलपर के लिए <strong> {0} कंप्यूटर </ strong> की अनुमति देते हैं। जब भी किसी तीसरे मशीन पर एबीपी कमर्शियल उत्पादों को विकसित करने के लिए डेवलपर की आवश्यकता होती है, तो स्थिति को समझाते हुए लाइसेंस@abp.io को एक ई-मेल भेजा जाना चाहिए और फिर हम अपने सिस्टम में उचित आवंटन करेंगे।",
"RefundPolicy": "क्या आपके पास धनवापसी नीति है?",
"RefundPolicyExplanation": "आप अपनी लाइसेंस खरीद के <strong> 30 दिन </ strong> के भीतर धनवापसी का अनुरोध कर सकते हैं। व्यवसाय और उद्यम लाइसेंस प्रकार में स्रोत-कोड डाउनलोड विकल्प होता है, इसलिए व्यापार और उद्यम के लिए धनवापसी उपलब्ध नहीं होती है (और कोई भी लाइसेंस जिसमें स्रोत-कोड प्राप्त करने का अधिकार शामिल होता है)। इसके अलावा, नवीनीकरण और दूसरे लाइसेंस खरीद के लिए कोई भी रिफंड नहीं किया जाता है।",
"HowCanIRefundVat": "मैं VAT कैसे वापस कर सकता हूँ?",
"HowCanIRefundVatExplanation1": "यदि आपने 2 चेकआउट का उपयोग करके भुगतान किया है, तो आप अपने 2 चेकआउट खाते के माध्यम से वैट वापस कर सकते हैं:",
"HowCanIRefundVatExplanation2": "अपने <a href=\"https://secure.2checkout.com/cpanel/login.php\" target=\"_blank\"> 2 चेकआउट </a> खाते में लॉग इन करें",
"HowCanIRefundVatExplanation3": "उपयुक्त आदेश खोजें और \"रिफंड बेल्ड वैट\" दबाएं (अपनी वैट आईडी दर्ज करें)",
"HowCanIGetMyInvoice": "मैं अपना चालान कैसे प्राप्त कर सकता हूं?",
"HowCanIGetMyInvoiceExplanation": "लाइसेंस खरीदने के लिए 2 भुगतान गेटवे हैं: PayU और 2 चेकआउट। यदि आप 2Checkout गेटवे के माध्यम से अपना लाइसेंस खरीदते हैं, तो यह आपके ईमेल पते पर पीडीएफ चालान भेजता है, देखें <a href = \"https://knowledgecenter.2checkout.com/Documentation/03Billing-and-payments/Payment-operations/How-do -invoices- काम \"> 2 चेकआउट चालान। </a> यदि आप पेयू गेटवे या बैंक वायर ट्रांसफर के माध्यम से खरीदते हैं, तो हम आपका चालान तैयार करेंगे और भेजेंगे। आप अपने चालान का अनुरोध <a href=\" जटिलताओं0 Ideal\"> संगठन प्रबंधन पृष्ठ </a> से कर सकते हैं",
"Forum": "मंच",
"SupportExplanation": "ABP कमर्शियल लाइसेंस एक टीम द्वारा प्रीमियम फ़ोरम सपोर्ट प्रदान करता है जिसमें ABP फ्रेमवर्क विशेषज्ञ होते हैं।",
"PrivateTicket": "निजी टिकट",
"PrivateTicketExplanation": "एंटरप्राइज लाइसेंस में ई-मेल और टिकट प्रणाली के साथ एक निजी सहायता भी शामिल है।",
"AbpSuiteExplanation1": "ABP सुइट आपको कुछ ही मिनटों में वेब पेज बनाने की अनुमति देता है। यह .NET कोर ग्लोबल टूल है जिसे कमांड लाइन से इंस्टॉल किया जा सकता है।",
"AbpSuiteExplanation2": "यह एक नया ABP समाधान बना सकता है, डेटाबेस से फ्रंट-एंड तक CRUD पेज बना सकता है। तकनीकी ओवरव्यू के लिए <a href=\" जटिलताओं0 Ideal\"> दस्तावेज़ </a> देखें",
"FastEasy": "तेज और आसान",
"AbpSuiteExplanation3": "ABP सुइट आपको आसानी से CRUD पेज बनाने की अनुमति देता है। आपको बस अपनी इकाई और उसके गुणों को परिभाषित करने की आवश्यकता है, बाकी को आप के लिए एबीपी सूट करने दें! एबीपी सूट कुछ ही सेकंड में आपके सीआरयूडी पृष्ठ के लिए सभी आवश्यक कोड उत्पन्न करता है। यह Angular, MVC और Blazor यूजर इंटरफेस को सपोर्ट करता है।",
"RichOptions": "अमीर विकल्प",
"AbpSuiteExplanation4": "ABP सुइट <a href=\"https://docs.microsoft.com/en-us/aspnet/core/razor-pages\"> रेजर पेज </a> और <a href = \"https: / जैसे कई UI विकल्पों का समर्थन करता है /angular.io\">Angular </a>। यह <a href=\"https://www.mongodb.com\"> MongoDB </a> जैसे कई डेटाबेस का समर्थन करता है और सभी डेटाबेस <strong> EntityFramework Core <द्वारा समर्थित है / strong> (MS SQL सर्वर, Oracle, MySql, PostgreSQL और <a href=\"https://docs.microsoft.com/en-us/ef/core/providers/?tabs=dotnet-core-cii] और </a>)।",
"AbpSuiteExplanation5": "अच्छी बात यह है कि, आपको उन विकल्पों के बारे में चिंता करने की ज़रूरत नहीं है। एबीपी सूट आपके प्रोजेक्ट के प्रकार को समझता है और आपकी परियोजना के लिए कोड बनाता है और उत्पन्न कोड को आपके प्रोजेक्ट में सही जगह पर रखता है।",
"SourceCode": "सोर्स कोड",
"AbpSuiteExplanation6": "ABP स्वीट आपके लिए सोर्स कोड जेनरेट करता है! यह वेब पेज जनरेट करने के लिए मैजिक फाइल्स जेनरेट नहीं करता है। एबीपी सूट <strong> इकाई, रिपोजिटरी, एप्लीकेशन सर्विस, कोड फर्स्ट माइग्रेशन, जावास्क्रिप्ट / टाइपस्क्रिप्ट और सीएसएचटीएमएल / एचटीएमएल </ strong> और आवश्यक इंटरफेस के लिए भी स्रोत कोड उत्पन्न करता है। ABP Suite सॉफ्टवेयर डेवलपमेंट के <strong> बेस्ट प्रैक्टिसेस </ strong> के अनुसार कोड भी तैयार करता है, इसलिए आपको जनरेट किए गए कोड की गुणवत्ता के बारे में चिंता करने की आवश्यकता नहीं है।",
"AbpSuiteExplanation7": "चूँकि आपके पास सही एप्लिकेशन लेयर्स में जेनरेट किए गए CRUD पेज के बिल्डिंग ब्लॉक्स का सोर्स कोड है, आप आसानी से सोर्स कोड को संशोधित कर सकते हैं और अपने कस्टम / bussiness लॉजिक को जेनरेट कोड में इंजेक्ट कर सकते हैं।",
"CrossPlatform": "क्रास प्लेटफार्म",
"AbpSuiteExplanation8": "ABP सुइट .NET .NET के साथ बनाया गया है और यह क्रॉस प्लेटफॉर्म है। यह आपके स्थानीय कंप्यूटर पर एक वेब एप्लिकेशन के रूप में चलता है। आप इसे <strong> Windows </ strong>, <strong> Mac </ strong> और <strong> Linux </ strong> पर चला सकते हैं",
"OtherFeatures": "अन्य सुविधाओं",
"OtherFeatures1": "अपडेट्स <strong> NuGet </ strong> और <strong> NPM </ strong> पैकेज आपके समाधान पर आसानी से।",
"OtherFeatures2": "खरोंच से पहले से ही उत्पन्न पृष्ठों को पुन: उत्पन्न करता है।",
"OtherFeatures3": "नए समाधान बनाता है",
"ThanksForCreatingProject": "अपना प्रोजेक्ट बनाने के लिए धन्यवाद!",
"HotToRunSolution": "अपना हल कैसे चलाएं?",
"HotToRunSolutionExplanation": "अपने समाधान को कॉन्फ़िगर करने और चलाने का तरीका जानने के लिए आरंभ किया गया दस्तावेज़ देखें।",
"GettingStarted": "शुरू करना",
"WebAppDevTutorial": "वेब ऐप देव ट्यूटोरियल",
"WebAppDevTutorialExplanation": "कदम विकास नमूना द्वारा एक कदम के लिए वेब अनुप्रयोग विकास ट्यूटोरियल दस्तावेज़ देखें।",
"Document": "डाक्यूमेंट",
"UsingABPSuiteToCURD": "CRUD पेज जनरेशन और टूलिंग के लिए ABP सूट का उपयोग करना",
"SeeABPSuiteDocument": "ABP सुइट का उपयोग जानने के लिए ABP सुइट दस्तावेज़ देखें।",
"AskQuestionsOnSupport": "आप एबीपी कमर्शियल सपोर्ट पर सवाल पूछ सकते हैं।",
"Documentation": "प्रलेखन",
"SeeModulesDocument": "सभी वाणिज्यिक (समर्थक) मॉड्यूल और उनके दस्तावेजों की सूची के लिए मॉड्यूल दस्तावेज़ देखें।",
"Pricing": "मूल्य निर्धारण",
"PricingExplanation": "आज अपनी व्यावसायिक आवश्यकताओं के लिए सुविधाओं और कार्यक्षमता का चयन करें। जैसे ही आपका व्यवसाय बढ़ता है, आसानी से अपग्रेड करें।",
"Team": "टीम",
"Business": "व्यापार",
"Enterprise": "उद्यम",
"Custom": "रिवाज",
"IncludedDeveloperLicenses": "डेवलपर लाइसेंस शामिल हैं",
"CustomLicenceOrAdditionalServices": "कस्टम लाइसेंस या अतिरिक्त सेवाओं की आवश्यकता है?",
"CustomOrVolumeLicense": "कस्टम या वॉल्यूम लाइसेंस",
"LiveTrainingSupport": "लाइव प्रशिक्षण और समर्थन",
"AndMore": "और अधिक",
"AdditionalDeveloperLicense": "अतिरिक्त डेवलपर लाइसेंस",
"ProjectCount": "प्रोजेक्ट की गिनती",
"AllProModules": "सभी प्रो मॉड्यूल",
"AllProThemes": "सभी प्रो थीम",
"AllProStartupTemplates": "सभी प्रो स्टार्टअप टेम्प्लेट",
"SourceCodeOfAllModules": "सभी मॉड्यूल का स्रोत कोड",
"SourceCodeOfAllThemes": "सभी विषयों का स्रोत कोड",
"PerpetualLicense": "हमेशा के लिए लाइसेंस",
"UnlimitedServerDeployment": "असीमित सर्वर की तैनाती",
"YearUpgrade": "1 साल का उन्नयन",
"YearPremiumForumSupport": "1 साल का प्रीमियम फोरम सपोर्ट",
"ForumSupportIncidentCountYear": "फोरम समर्थन घटना गिनती / वर्ष",
"PrivateTicketEmailSupport": "निजी टिकट और ईमेल समर्थन",
"BuyNow": "अभी खरीदें",
"PayViaAmexCard": "मैं अपने AMEX कार्ड के माध्यम से कैसे भुगतान कर सकता हूं?",
"PayViaAmexCardDescription": "डिफ़ॉल्ट भुगतान गेटवे 'Iyzico' सुरक्षा उपायों के कारण कुछ AMEX क्रेडिट कार्डों को अस्वीकार कर सकता है। इस मामले में, आप वैकल्पिक भुगतान गेटवे '2 चेकआउट' के माध्यम से भुगतान कर सकते हैं।",
"ThankYou": "धन्यवाद",
"InvalidReCaptchaErrorMessage": "ReCAPTCHA को सत्यापित करने में एक त्रुटि हुई थी। कृपया पुन: प्रयास करें।"
}
}

296
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/it.json

@ -0,0 +1,296 @@
{
"culture": "it",
"texts": {
"OrganizationManagement": "Gestione dell'organizzazione",
"OrganizationList": "Elenco delle organizzazioni",
"Volo.AbpIo.Commercial:010003": "Non sei il proprietario di questa organizzazione!",
"OrganizationNotFoundMessage": "Nessuna organizzazione trovata!",
"DeveloperCount": "Sviluppatori allocati / totali",
"QuestionCount": "Domande rimanenti / totali",
"Unlimited": "Illimitato",
"Owners": "Proprietari",
"AddMember": "Aggiungi membro",
"AddOwner": "Aggiungi proprietario",
"AddDeveloper": "Aggiungi sviluppatore",
"UserName": "Nome utente",
"Name": "Nome",
"EmailAddress": "Indirizzo e-mail",
"Developers": "Sviluppatori",
"LicenseType": "Tipo di licenza",
"Manage": "Gestire",
"StartDate": "Data d'inizio",
"EndDate": "Data di fine",
"Modules": "Moduli",
"LicenseExtendMessage": "La data di fine della tua licenza è estesa a {0}",
"LicenseUpgradeMessage": "La tua licenza è stata aggiornata a {0}",
"LicenseAddDeveloperMessage": "{0} sviluppatori aggiunti alla tua licenza",
"Volo.AbpIo.Commercial:010004": "Impossibile trovare l'utente specificato! L'utente deve essere già registrato.",
"MyOrganizations": "Le mie organizzazioni",
"ApiKey": "Chiave API",
"UserNameNotFound": "Nessun utente con nome utente {0}",
"SuccessfullyAddedToNewsletter": "Grazie per esserti iscritto alla nostra newsletter!",
"MyProfile": "Il mio profilo",
"EmailNotValid": "Si prega di inserire un indirizzo email valido.",
"JoinOurMarketingNewsletter": "Iscriviti alla nostra newsletter di marketing",
"WouldLikeToReceiveMarketingMaterials": "Vorrei ricevere materiale di marketing come offerte di prodotti e offerte speciali.",
"StartUsingYourLicenseNow": "Inizia subito a usare la tua licenza!",
"WelcomePage": "Pagina di benvenuto",
"UnsubscriptionExpireEmail": "Annulla l'iscrizione alle e-mail di promemoria della data di scadenza della licenza",
"UnsubscribeLicenseExpireEmailReminderMessage": "Questa sottoscrizione e-mail contiene solo il promemoria della data di scadenza della licenza.",
"UnsubscribeFromLicenseExpireEmails": "Se non desideri ricevere le e-mail sulla data di scadenza della licenza, puoi annullare l'iscrizione in qualsiasi momento lo desideri.",
"Unsubscribe": "Annulla l'iscrizione",
"NotOrganizationMember": "Non sei membro di nessuna organizzazione.",
"UnsubscribeLicenseExpirationEmailSuccessTitle": "Iscrizione annullata con successo",
"UnsubscribeLicenseExpirationEmailSuccessMessage": "Non riceverai più email di promemoria della data di scadenza della licenza.",
"IndexPageHeroSection": "<span class = \"first-line\"> Una completa </span> <span class = \"second-line\"> piattaforma di sviluppo web </span> <span class = \"third-line\"> integrata <img src = \"{0}\" width = \"110\" class = \"ml-1\" /> framework </span>",
"AbpCommercialShortDescription": "ABP Commercial fornisce moduli applicativi predefiniti, strumenti per lo sviluppo rapido di applicazioni, temi dell'interfaccia utente professionale, supporto premium e altro ancora.",
"LiveDemo": "Dimostrazione dal vivo",
"GetLicence": "Ottieni una licenza",
"Application": "Applicazione",
"StartupTemplates": "Modelli di avvio",
"Startup": "Avviare",
"Templates": "Modelli",
"Developer": "Sviluppatore",
"Tools": "Utensili",
"Premium": "Premium",
"PremiumSupport": "Supporto premium",
"PremiumForumSupport": "Supporto forum premium",
"UI": "UI",
"Themes": "Temi",
"JoinOurNewsletter": "Iscriviti alla nostra newsletter",
"Send": "Spedire",
"Learn": "Imparare",
"AdditionalServices": "Servizi aggiuntivi",
"WhatIsABPFramework": "QUAL È IL QUADRO ABP?",
"OpenSourceBaseFramework": "Framework di base open source",
"ABPFrameworkExplanation": "<p class = \"lead\"> ABP Commercial si basa su ABP Framework, un framework per applicazioni web open source e guidato dalla comunità per ASP.NET Core. </p> <p> ABP Framework fornisce un'eccellente infrastruttura per la scrittura gestibile ed estensibile e codice testabile con best practice. </p> <p> Costruito e integrato in strumenti popolari che già conosci. Bassa curva di apprendimento, facile adattamento, sviluppo confortevole. </p>",
"Modular": "Modulare",
"MicroserviceCompatible": "Compatibile con microservizi",
"DomainDrivenDesignInfrastructure": "Infrastruttura di progettazione basata sul dominio",
"MultiTenancy": "Multi-Tenancy",
"DistributedMessaging": "Messaggistica distribuita",
"DynamicProxying": "Proxying dinamico",
"BackgroundJobs": "Lavori in background",
"AuditLogging": "Registrazione di audit",
"BLOBStoring": "Archiviazione BLOB",
"BundlingMinification": "Raggruppamento e minimizzazione",
"AdvancedLocalization": "Localizzazione avanzata",
"ManyMore": "Molti altri",
"ExploreTheABPFramework": "Esplora il framework ABP",
"WhyUseTheABPCommercial": "Perché utilizzare lo spot pubblicitario ABP?",
"WhyUseTheABPCommercialExplanation": "<p class = \"lead mt- 5\"> La creazione di applicazioni Web di livello aziendale può essere complessa e richiede tempo. </p> <p> ABP Commercial offre l'infrastruttura di base perfetta necessaria per tutti i moderni ASP.NET Core di livello aziendale soluzioni basate. Dalla progettazione all'implementazione, l'intero ciclo di sviluppo è potenziato dalle funzionalità e dai moduli integrati di ABP. </p>",
"StartupTemplatesShortDescription": "I modelli di avvio ti consentono di avviare rapidamente il tuo progetto in pochi secondi.",
"UIFrameworksOptions": "Opzioni dei framework dell'interfaccia utente;",
"DatabaseProviderOptions": "Opzioni del provider di database;",
"PreBuiltApplicationModules": "Moduli applicativi predefiniti",
"PreBuiltApplicationModulesShortDescription": "I requisiti delle applicazioni più comuni sono già stati sviluppati per te come moduli riutilizzabili.",
"Account": "account",
"Blogging": "Blogging",
"Identity": "Identità",
"IdentityServer": "Identity Server",
"Saas": "Saas",
"LanguageManagement": "Gestione della lingua",
"TextTemplateManagement": "Gestione dei modelli di testo",
"See All Modules": "SeeAllModules",
"ABPSuite": "ABP Suite",
"AbpSuiteShortDescription": "ABP Suite è uno strumento complementare all'ABP Commercial.",
"AbpSuiteExplanation": "Ti consente di creare pagine web in pochi minuti. È uno strumento .NET Core Global che può essere installato dalla riga di comando. Può creare una nuova soluzione ABP, generare pagine CRUD dal database al front-end.",
"Details": "Dettagli",
"LeptonTheme": "Tema Lepton",
"ProfessionalModernUIThemes": "Temi dell'interfaccia utente moderni e professionali",
"LeptonThemeExplanation": "Lepton fornisce una gamma di temi di amministrazione Bootstrap che fungono da solida base per qualsiasi progetto che richieda dashboard di amministrazione.",
"DefaultTheme": "Tema predefinito",
"MaterialTheme": "Tema materiale",
"Default2Theme": "Tema predefinito 2",
"DarkTheme": "Tema scuro",
"DarkBlueTheme": "Tema blu scuro",
"LightTheme": "Tema chiaro",
"ProudToWorkWith": "Orgoglioso di lavorare con",
"OurConsumers": "Centinaia di aziende e sviluppatori in oltre 50 paesi in tutto il mondo si affidano a ABP Commercial.",
"JoinOurConsumers": "Unisciti a loro e crea prodotti sorprendenti velocemente.",
"AdditionalServicesExplanation": "Hai bisogno di servizi aggiuntivi o personalizzati? <strong> Noi e i nostri partner possiamo fornire; </strong>",
"CustomProjectDevelopment": "Sviluppo di progetti personalizzati",
"CustomProjectDevelopmentExplanation": "Sviluppatori dedicati per i tuoi progetti personalizzati.",
"PortingExistingProjects": "Porting di progetti esistenti",
"PortingExistingProjectsExplanation": "Migrazione dei tuoi progetti legacy alla piattaforma ABP.",
"LiveSupport": "Supporto dal vivo",
"LiveSupportExplanation": "Opzione di supporto remoto dal vivo quando ne hai bisogno.",
"Training": "Formazione",
"TrainingExplanation": "Formazione dedicata per i tuoi sviluppatori.",
"OnBoarding": "Onboarding",
"OnBoardingExplanation": "Aiuta a configurare i tuoi ambienti di sviluppo, CI e CD.",
"PrioritizedTechnicalSupport": "Assistenza tecnica prioritaria",
"PremiumSupportExplanation": "Oltre al grande supporto della comunità del framework ABP, il nostro team di supporto risponde alle domande tecniche e ai problemi degli utenti commerciali con alta priorità.",
"SeeTheSupportOptions": "Vedi le opzioni di supporto",
"Contact": "Contatto",
"TellUsWhatYouNeed": "Dicci di cosa hai bisogno.",
"YourMessage": "Il tuo messaggio",
"YourFullName": "Il tuo nome completo",
"EmailField": "Indirizzo e-mail",
"YourEmailAddress": "Il tuo indirizzo di posta elettronica",
"HowMayWeHelpYou": "Come possiamo aiutarti?",
"SendMessage": "Invia messaggio",
"Success": "Successo",
"WeWillReplyYou": "Abbiamo ricevuto il tuo messaggio e ti contatteremo a breve.",
"GoHome": "Andare a casa",
"CreateLiveDemo": "Crea demo live",
"RegisterToTheNewsletter": "Registrati alla newsletter per ricevere informazioni su ABP.IO, comprese le nuove versioni ecc.",
"EnterYourEmailOrLogin": "Inserisci il tuo indirizzo e-mail per creare la tua demo o <a href=\"{0}\"> Accedi </a> utilizzando il tuo account esistente.",
"ApplicationTemplate": "Modello di applicazione",
"ApplicationTemplateExplanation": "Il modello di avvio dell'applicazione viene utilizzato per creare una nuova applicazione web.",
"EfCoreProvider": "Entity Framework (supporta SQL Server, MySQL, PostgreSQL, Oracle <a href=\"https://docs.microsoft.com/en-us/ef/core/providers/\"> e altri </a>)",
"AlreadyIncludedInTemplateModules": "I seguenti moduli sono già inclusi e configurati in questo modello:",
"ApplicationTemplateArchitecture": "Questo modello di applicazione supporta anche un'architettura a più livelli in cui il livello dell'interfaccia utente, il livello API e il servizio di autenticazione sono fisicamente separati.",
"SeeTheGuideOrGoToTheLiveDemo": "Consulta la guida per sviluppatori per informazioni tecniche su questo modello o vai alla demo live.",
"DeveloperGuide": "Guida per sviluppatori",
"ModuleTemplate": "Modello di modulo",
"ModuleTemplateExplanation1": "Vuoi creare un modulo e riutilizzarlo in diverse applicazioni? Questo modello di avvio prepara tutto per iniziare a creare un <strong> modulo dell'applicazione </strong> riutilizzabile o un <strong> microservizio </strong>.",
"ModuleTemplateExplanation2": "<p> Puoi supportare uno o più framework UI, uno o più provider di database per un singolo modulo. Il modello di avvio è configurato per eseguire e <strong> testare il modulo </strong> in un'applicazione minima oltre all'unità e all'infrastruttura di test di integrazione. </p> <p> Consulta la guida per sviluppatori per informazioni tecniche su questo modello. </p>",
"WithAllStyleOptions": "con tutte le opzioni di stile",
"Demo": "Demo",
"SeeAllModules": "Vedi tutti i moduli",
"ABPCLIExplanation": "ABP CLI (Command Line Interface) è uno strumento a riga di comando per eseguire alcune operazioni comuni per soluzioni basate su ABP.",
"ABPSuiteEasilyCURD": "ABP Suite è uno strumento che ti permette di creare facilmente pagine CRUD",
"WeAreHereToHelp": "Siamo qui per <span class = \"zero-text\"> Aiuto </span>",
"BrowseOrAskQuestion": "Puoi sfogliare i nostri argomenti della guida o cercare nelle domande frequenti oppure puoi farci una domanda utilizzando il <a href=\"{0}\" class=\"text-success\"> modulo di contatto </a>.",
"SearchQuestionPlaceholder": "Cerca nelle domande frequenti",
"WhatIsTheABPCommercial": "Cos'è l'ABP Commercial?",
"WhatAreDifferencesThanAbpFramework": "Quali sono le differenze tra ABP Framework open source e ABP Commercial?",
"ABPCommercialExplanation": "ABP Commercial è un insieme di moduli, strumenti, temi e servizi premium basati sul <a target=\"_blank\" href=\"{0}\"> framework ABP </a> open source. ABP Commercial è sviluppato e supportato dallo stesso team dietro il framework ABP.",
"WhatAreDifferencesThanABPFrameworkExplanation": "<p> <a target=\"_blank\" href=\"{0}\"> ABP framework </a> è un framework di sviluppo di applicazioni compatibile con micro-servizi per ASP.NET Core modulare. Fornisce un'architettura completa e una solida infrastruttura per farti concentrare sul tuo codice aziendale piuttosto che ripetere te stesso per ogni nuovo progetto. Si basa sulle migliori pratiche di sviluppo software e su strumenti popolari che già conosci. </p> <p> Il framework ABP è completamente gratuito, open source e guidato dalla comunità. Fornisce inoltre un tema gratuito e alcuni moduli predefiniti (ad es. Gestione delle identità e gestione dei tenant). </p>",
"VisitTheFrameworkVSCommercialDocument": "Visita il seguente link, per ulteriori informazioni <a href=\"{0}\" target=\"_blank\"> {1} </a>",
"ABPCommercialFollowingBenefits": "ABP Commercial aggiunge i seguenti vantaggi al framework ABP;",
"Professional": "Professionale",
"UIThemes": "Temi dell'interfaccia utente",
"EnterpriseModules": "<a href=\"{0}\"> moduli applicativi </a> preconfigurati, ricchi di funzionalità (ad es. Gestione di Identity Server, gestione SaaS, gestione della lingua)",
"ToolingToSupport": "Strumenti per supportare la produttività dello sviluppo (ad es. <a href=\"{0}\"> ABP Suite </a>)",
"PremiumSupportLink": "Supporto <a href=\"{0}\" target=\"_blank\"> Premium </a> premium",
"WhatDoIDownloadABPCommercial": "Cosa devo scaricare quando acquisto ABP Commercial?",
"CreateUnlimitedSolutions": "Dopo aver acquistato una licenza commerciale ABP, sarai in grado di creare soluzioni illimitate come descritto nel documento <a href=\"{0}\"> Guida introduttiva </a>.",
"ABPCommercialSolutionExplanation": "Quando crei una nuova applicazione, ottieni una soluzione Visual Studio (un modello di avvio) in base alle tue preferenze. La soluzione scaricata ha moduli e temi commerciali già installati e configurati per te. Puoi rimuovere un modulo preinstallato o aggiungere un altro modulo, se lo desideri. Tutti i moduli e temi vengono usati come pacchetti NuGet / NPM per impostazione predefinita.",
"StartDevelopWithTutorials": "La soluzione scaricata è ben progettata e documentata. Puoi iniziare a sviluppare il tuo codice aziendale basato su di esso seguendo <a href=\"{0}\"> i tutorial </a>",
"TryTheCommercialDemo": "Puoi provare <a href=\"{0}\"> la demo </a> per vedere un'applicazione di esempio creata utilizzando il modello di avvio di ABP Commercial.",
"HowManyProducts": "Quanti prodotti / soluzioni differenti posso costruire utilizzando ABP Commercial?",
"HowManyProductsExplanation": "Non ci sono limiti per creare un progetto ABP. Puoi creare tutti i progetti che desideri, svilupparli e caricarli su server diversi.",
"HowManyDevelopers": "Quanti sviluppatori possono lavorare su ABP Commercial?",
"HowManyDevelopersExplanation": "Le licenze commerciali ABP sono per sviluppatore. Diversi tipi di licenza hanno diversi limiti per sviluppatori. Tuttavia, puoi aggiungere più sviluppatori a qualsiasi tipo di licenza ogni volta che ne hai bisogno. Consulta la pagina dei <a href=\"{0}\"> prezzi </a> per i tipi di licenza, i limiti per gli sviluppatori e i costi aggiuntivi per gli sviluppatori.",
"ChangingLicenseType": "Posso cambiare il mio tipo di licenza in futuro?",
"ChangingLicenseTypeExplanation": "Puoi sempre aggiungere nuovi sviluppatori con lo stesso tipo di licenza. Vedi anche \"Quanti sviluppatori possono lavorare su ABP Commercial?\". Puoi anche passare a una licenza superiore pagando la differenza di prezzo calcolata. Quando esegui l'aggiornamento a un piano di licenza superiore, ottieni i vantaggi del nuovo piano, ma l'aggiornamento della licenza non modifica la data di scadenza della licenza.",
"LicenseExtendUpgradeDiff": "Qual è la differenza tra estensione della licenza e aggiornamento?",
"LicenseExtendUpgradeDiffExplanation": "<strong> Estensione: </strong> estendendo / rinnovando la tua licenza, continuerai a ricevere supporto premium e a ricevere aggiornamenti importanti per moduli e temi. Inoltre, potrai continuare a creare nuovi progetti. E sarai ancora in grado di utilizzare ABP Suite che accelera il tuo sviluppo. <Hr /> <strong> Upgrade: </strong> aggiornando la tua licenza, promuoverai un piano di licenza superiore che ti consentirà di ottenere ulteriori vantaggi . Consulta la <a href=\"/pricing\"> tabella di confronto delle licenze </a> per verificare le differenze tra i piani di licenza. <strong> D'altra parte, quando esegui l'upgrade, la data di scadenza della licenza non cambierà! </ Strong > Per estendere la data di fine della licenza, è necessario estendere la licenza.",
"LicenseRenewalCost": "Qual è il costo del rinnovo della licenza dopo 1 anno?",
"LicenseRenewalCostExplanation": "La tariffa di rinnovo (estensione) di tutte le licenze perpetue ABP Commercial è {0} del prezzo di listino della licenza. Il prezzo di rinnovo della licenza Team standard è $ {1}, la licenza Business standard è $ {2} e la licenza Enterprise standard è $ {3}. Se sei già un cliente, <a href='{4}' target='_blank'> accedi al tuo account </a> per esaminare i prezzi di rinnovo disponibili.",
"HowDoIRenewMyLicense": "Come rinnovo la mia licenza?",
"HowDoIRenewMyLicenseExplanation": "Puoi rinnovare la licenza accedendo alla <a href='{0}' target='_blank'> pagina di gestione dell'organizzazione </a>. Per poter usufruire delle nostre tariffe scontate di rinnovo anticipato, assicurati di rinnovare prima della scadenza della licenza. Tuttavia, non preoccuparti di non sapere quando si chiude la tua opportunità di rinnovo anticipato. Riceverai 2 e-mail di promemoria prima della scadenza dell'abbonamento. Li invieremo a 30 giorni, 7 giorni prima della scadenza.",
"IsSourceCodeIncluded": "La mia licenza include il codice sorgente dei moduli e dei temi commerciali?",
"IsSourceCodeIncludedExplanation1": "Dipende dal tipo di licenza che hai acquistato:",
"IsSourceCodeIncludedExplanation2": "<strong> Team </strong>: la soluzione utilizza i moduli e i temi come pacchetti NuGet e NPM. Non include il loro codice sorgente. In questo modo, puoi aggiornare facilmente questi moduli e temi ogni volta che è disponibile una nuova versione. Tuttavia, non è possibile ottenere il codice sorgente dei moduli e dei temi.",
"IsSourceCodeIncludedExplanation3": "<strong> Business / Enterprise </strong>: oltre alla licenza Team, puoi scaricare il codice sorgente di qualsiasi modulo o tema di cui hai bisogno. È anche possibile rimuovere i riferimenti al pacchetto NuGet / NPM per un particolare modulo e aggiungere il relativo codice sorgente direttamente alla soluzione per modificarlo completamente.",
"IsSourceCodeIncludedExplanation4": "<p> Includere il codice sorgente di un modulo nella tua soluzione ti dà la massima libertà di personalizzare quel modulo. Tuttavia, non sarà possibile aggiornare automaticamente il modulo quando viene rilasciata una nuova versione. </p> <p> Nessuna delle licenze include il codice sorgente di ABP Suite, che è uno strumento esterno che genera codice per te e assiste al tuo sviluppo. </p> <p> Vedi <a href=\"{0}\"> la pagina dei prezzi </a> per altre differenze tra i tipi di licenza. </p>",
"ChangingDevelopers": "Posso cambiare gli sviluppatori registrati della mia organizzazione in futuro?",
"ChangingDevelopersExplanation": "Oltre ad aggiungere nuovi sviluppatori alla tua licenza, puoi anche modificare gli sviluppatori esistenti (puoi rimuovere uno sviluppatore e aggiungerne uno nuovo alla stessa postazione) senza alcun costo aggiuntivo.",
"WhatHappensWhenLicenseEnds": "Cosa succede al termine del periodo di licenza?",
"WhatHappensWhenLicenseEndsExplanation1": "Il tipo di licenza commerciale ABP è <a href=\"{0}\" target=\"_blank\"> licenza perpetua </a>. Dopo la scadenza della licenza, puoi continuare a sviluppare il tuo progetto. E non sei obbligato a rinnovare la tua licenza. La tua licenza viene fornita con un anno di aggiornamenti e piano di supporto pronto all'uso. Per continuare a ricevere nuove funzionalità, miglioramenti delle prestazioni, correzioni di bug, supporto e continuare a utilizzare ABP Suite, assicurati di rinnovare il tuo piano ogni anno. Quando la tua licenza scade, non sarai in grado di ottenere più dei seguenti vantaggi;",
"WhatHappensWhenLicenseEndsExplanation2": "Non è possibile creare nuove soluzioni utilizzando ABP Commercial, ma è possibile continuare a sviluppare le applicazioni esistenti per sempre.",
"WhatHappensWhenLicenseEndsExplanation3": "Sarai in grado di ottenere aggiornamenti per i moduli e i temi nella tua versione MAJOR. Per esempio; se stai usando la v3.2.0 di un modulo, puoi comunque ottenere gli aggiornamenti per la v3.x.x (v3.3.0, v3.5.2 ... ecc.) di quel modulo. Ma non puoi ottenere aggiornamenti per la prossima versione principale (come v4.x, v5.x)",
"WhatHappensWhenLicenseEndsExplanation4": "Non è possibile installare nuovi moduli e temi aggiunti alla piattaforma ABP Commercial al termine della licenza.",
"WhatHappensWhenLicenseEndsExplanation5": "Non è possibile utilizzare ABP Suite.",
"WhatHappensWhenLicenseEndsExplanation6": "Non puoi più ottenere l '<a href=\"{0}\"> assistenza premium </a>.",
"WhatHappensWhenLicenseEndsExplanation7": "Puoi rinnovare l'abbonamento se desideri continuare a usufruire di questi vantaggi. C'è uno sconto del 20% quando rinnovi l'abbonamento.",
"WhenShouldIRenewMyLicense": "Quando devo rinnovare la mia licenza?",
"WhenShouldIRenewMyLicenseExplanation1": "Se rinnovi la licenza entro <strong> 1 mese </strong> dalla scadenza della licenza, verrà applicato uno sconto del 20% sul prezzo totale della licenza.",
"WhenShouldIRenewMyLicenseExplanation2": "Se rinnovi la licenza dopo 1 mese dalla data di scadenza della licenza, il prezzo di rinnovo sarà lo stesso del prezzo di acquisto della licenza e non ci saranno sconti per il rinnovo.",
"TrialPlan": "Hai un piano di prova?",
"TrialPlanExplanation": "Per ora, ABP Commercial non ha un piano di prova. Per le licenze Team forniamo una garanzia di rimborso di 30 giorni. Puoi richiedere un rimborso solo nei primi 30 giorni. Per le licenze Business ed Enterprise, forniamo un rimborso del 60% in 30 giorni. Questo perché le licenze Business ed Enterprise includono il codice sorgente completo di tutti i moduli e i temi.",
"DoYouAcceptBankWireTransfer": "Accettate bonifici bancari?",
"DoYouAcceptBankWireTransferExplanation": "Sì, accettiamo bonifico bancario. <br /> Dopo aver inviato l'importo della licenza tramite bonifico bancario, inviaci la ricevuta e il tipo di licenza richiesto tramite e-mail. <br /> Informazioni sul nostro conto bancario internazionale:",
"HowToUpgrade": "Come aggiornare le applicazioni esistenti quando è disponibile una nuova versione?",
"HowToUpgradeExplanation1": "Quando crei una nuova applicazione utilizzando ABP Commercial, tutti i moduli e il tema vengono utilizzati come pacchetti NuGet e NPM. Quindi, puoi facilmente aggiornare i pacchetti quando è disponibile una nuova versione.",
"HowToUpgradeExplanation2": "Oltre agli aggiornamenti NuGet / NPM standard, <a href=\"{0}\"> ABP CLI </a> fornisce un comando di aggiornamento che trova e aggiorna automaticamente tutti i pacchetti relativi a ABP nella soluzione.",
"DatabaseSupport": "Quali sistemi di database sono supportati?",
"DatabaseSupportExplanation": "Lo stesso ABP Framework è indipendente dal database e può funzionare con qualsiasi provider di database per sua natura. Consulta il <a href=\"{0}\" target=\"_blank\"> documento di accesso ai dati </a> per un elenco dei fornitori attualmente implementati.",
"UISupport": "Quali framework dell'interfaccia utente sono supportati?",
"Supported": "Supportato",
"UISupportExplanation": "Lo stesso ABP Framework è indipendente dal framework dell'interfaccia utente e può funzionare con qualsiasi framework dell'interfaccia utente. Tuttavia, i modelli di avvio, le interfacce utente dei moduli e i temi non sono stati implementati per tutti i framework dell'interfaccia utente. Consulta il <a href=\"{0}\"> documento introduttivo </a> per l'elenco aggiornato delle opzioni dell'interfaccia utente.",
"MicroserviceSupport": "Supporta l'architettura dei micro-servizi?",
"MicroserviceSupportExplanation1": "Uno degli obiettivi principali del framework ABP è fornire un'infrastruttura conveniente per creare soluzioni di micro-servizi. Consulta il documento sull '<a href=\"{0}\"> architettura dei micro-servizi </a> per capire come aiuta a creare sistemi di micro-servizi.",
"MicroserviceSupportExplanation2": "Tutti i moduli ABP Commercial sono progettati per supportare scenari di distribuzione di micro-servizi (con la propria API e database) seguendo il documento <a href=\"{0}\"> best practice per lo sviluppo di moduli </a>.",
"MicroserviceSupportExplanation3": "Forniamo una <a href=\"{0}\"> soluzione demo di micro-servizi </a> di esempio che dimostra l'implementazione di un'architettura di micro-servizi per aiutarti a creare la tua soluzione.",
"MicroserviceSupportExplanation4": "Quindi, la risposta breve è \"<strong> sì, supporta l'architettura di micro-servizi </strong>\".",
"MicroserviceSupportExplanation5": "Tuttavia, un sistema di micro-servizi è una soluzione e ogni soluzione avrà requisiti diversi, topologia di rete, scenari di comunicazione, possibilità di autenticazione, decisioni di separazione / condivisione del database, configurazioni di runtime, integrazioni di sistemi di terze parti e molto altro.",
"MicroserviceSupportExplanation6": "L'ABP Framework e l'ABP Commercial forniscono un'infrastruttura per scenari di micro-servizi, moduli compatibili con micro-servizi, esempi e documentazione per aiutarti a creare la tua soluzione. Ma non aspettarti di scaricare direttamente la soluzione dei tuoi sogni precostruita per te. Dovrai capirlo e riunire alcune parti in base alle tue esigenze.",
"WhereCanIDownloadSourceCode": "Dove posso scaricare il codice sorgente?",
"WhereCanIDownloadSourceCodeExplanation": "È possibile scaricare il codice sorgente di tutti i moduli ABP, pacchetti e temi Angular tramite ABP Suite o ABP CLI. Vedi <a href=\"{0}\"> Come scaricare il codice sorgente? </a>",
"ComputerLimitation": "Quanti computer può accedere uno sviluppatore durante lo sviluppo di ABP?",
"ComputerLimitationExplanation": "Autorizziamo specificamente <strong> {0} computer </strong> per singolo sviluppatore / con licenza. Ogni volta che è necessario che uno sviluppatore sviluppi prodotti ABP Commercial su una terza macchina, deve essere inviata un'e-mail a license@abp.io spiegando la situazione e quindi effettueremo l'allocazione appropriata nel nostro sistema.",
"RefundPolicy": "Hai una politica di rimborso?",
"RefundPolicyExplanation": "Puoi richiedere un rimborso entro <strong> 30 giorni </strong> dall'acquisto della licenza. I tipi di licenza Business ed Enterprise hanno l'opzione di download del codice sorgente, pertanto i rimborsi non sono disponibili per Business ed Enterprise (e qualsiasi licenza che includa il diritto di ricevere il codice sorgente). Inoltre, non vengono effettuati rimborsi per rinnovi e acquisti di seconde licenze.",
"HowCanIRefundVat": "Come posso rimborsare l'IVA?",
"HowCanIRefundVatExplanation1": "Se hai effettuato il pagamento utilizzando 2Checkout, puoi rimborsare l'IVA tramite il tuo account 2Checkout:",
"HowCanIRefundVatExplanation2": "Accedi al tuo account <a href=\"https://secure.2checkout.com/cpanel/login.php\" target=\"_blank\"> 2Checkout </a>",
"HowCanIRefundVatExplanation3": "Trova l'ordine appropriato e premi \"Rimborsa IVA tardiva\" (inserisci il tuo numero di partita IVA)",
"HowCanIGetMyInvoice": "Come posso ricevere la mia fattura?",
"HowCanIGetMyInvoiceExplanation": "Esistono 2 gateway di pagamento per l'acquisto di una licenza: PayU e 2Checkout. Se acquisti la tua licenza tramite il gateway 2Checkout, invia la fattura in PDF al tuo indirizzo e-mail, vedi <a href = \"https://knowledgecenter.2checkout.com/Documentation/03Billing-and-payments/Payment-operations/How-do -invoices-work \"> Fatturazione 2Checkout. </a> Se acquisti tramite il gateway PayU o tramite bonifico bancario, prepareremo e invieremo la tua fattura. Puoi richiedere la fattura dalla <a href=\"{0}\"> pagina di gestione dell'organizzazione. </a>",
"Forum": "Forum",
"SupportExplanation": "Le licenze commerciali di ABP forniscono un supporto forum premium da parte di un team composto dagli esperti di ABP Framework.",
"PrivateTicket": "Biglietto privato",
"PrivateTicketExplanation": "Enterprise License include anche un supporto privato con e-mail e sistema di ticket.",
"AbpSuiteExplanation1": "ABP Suite ti consente di creare pagine web in pochi minuti. È uno strumento .NET Core Global che può essere installato dalla riga di comando.",
"AbpSuiteExplanation2": "Può creare una nuova soluzione ABP, generare pagine CRUD dal database al front-end. Per una panoramica tecnica, vedere <a href=\"{0}\"> il documento </a>",
"FastEasy": "Veloce e facile",
"AbpSuiteExplanation3": "ABP Suite ti consente di creare facilmente pagine CRUD. Devi solo definire la tua entità e le sue proprietà, lascia che il resto sia ABP Suite per te! ABP Suite genera tutto il codice necessario per la tua pagina CRUD in pochi secondi. Supporta le interfacce utente Angular, MVC e Blazor.",
"RichOptions": "Opzioni ricche",
"AbpSuiteExplanation4": "ABP Suite supporta più opzioni dell'interfaccia utente come <a href=\"https://docs.microsoft.com/en-us/aspnet/core/razor-pages\"> Razor Pages </a> e <a href = \"https: / /angular.io\">Angular </a>. Supporta anche più database come <a href=\"https://www.mongodb.com\"> MongoDB </a> e tutti i database supportati da <strong> EntityFramework Core < / strong> (MS SQL Server, Oracle, MySql, PostgreSQL e <a href=\"https://docs.microsoft.com/en-us/ef/core/providers/?tabs=dotnet-core-cli\"> altro </a>).",
"AbpSuiteExplanation5": "La cosa buona è che non devi preoccuparti di quelle opzioni. ABP Suite comprende il tipo di progetto e genera il codice per il progetto e inserisce il codice generato nella posizione corretta nel progetto.",
"SourceCode": "Codice sorgente",
"AbpSuiteExplanation6": "ABP Suite genera il codice sorgente per te! Non genera file magici per generare la pagina web. ABP Suite genera il codice sorgente per <strong> Entity, Repository, Application Service, Code First Migration, JavaScript / TypeScript e CSHTML / HTML </strong> e anche le interfacce necessarie. ABP Suite genera anche il codice in base alle <strong> Best Practices </strong> di sviluppo software, quindi non devi preoccuparti della qualità del codice generato.",
"AbpSuiteExplanation7": "Dal momento che hai il codice sorgente dei blocchi costitutivi della pagina CRUD generata nei livelli di applicazione corretti, puoi facilmente modificare il codice sorgente e inserire la tua logica personalizzata / aziendale nel codice generato.",
"CrossPlatform": "Piattaforma multipla",
"AbpSuiteExplanation8": "ABP Suite è costruito con .NET Core ed è multipiattaforma. Funziona come un'applicazione web sul tuo computer locale. Puoi eseguirlo su <strong> Windows </strong>, <strong> Mac </strong> e <strong> Linux </strong>",
"OtherFeatures": "Altre caratteristiche",
"OtherFeatures1": "Aggiorna facilmente i pacchetti <strong> NuGet </strong> e <strong> NPM </strong> sulla tua soluzione.",
"OtherFeatures2": "Rigenera le pagine già generate da zero.",
"OtherFeatures3": "Crea nuove soluzioni",
"ThanksForCreatingProject": "Grazie per aver creato il tuo progetto!",
"HotToRunSolution": "Come eseguire la tua soluzione?",
"HotToRunSolutionExplanation": "Vedere il documento introduttivo per apprendere come configurare ed eseguire la soluzione.",
"GettingStarted": "Iniziare",
"WebAppDevTutorial": "Tutorial per sviluppatori di app Web",
"WebAppDevTutorialExplanation": "Vedere il documento tutorial sullo sviluppo di applicazioni Web per un esempio di sviluppo passo passo.",
"Document": "Documento",
"UsingABPSuiteToCURD": "Utilizzo di ABP Suite per la generazione di pagine CRUD e gli strumenti",
"SeeABPSuiteDocument": "Vedere il documento ABP Suite per apprendere l'utilizzo di ABP Suite.",
"AskQuestionsOnSupport": "Puoi porre domande sul supporto commerciale ABP.",
"Documentation": "Documentazione",
"SeeModulesDocument": "Vedere il documento dei moduli per un elenco di tutti i moduli commerciali (pro) e dei relativi documenti.",
"Pricing": "Prezzi",
"PricingExplanation": "Scegli le caratteristiche e le funzionalità di cui la tua azienda ha bisogno oggi. Esegui facilmente l'upgrade man mano che la tua attività cresce.",
"Team": "Squadra",
"Business": "Attività commerciale",
"Enterprise": "Enterprise",
"Custom": "Personalizzato",
"IncludedDeveloperLicenses": "Licenze per sviluppatori incluse",
"CustomLicenceOrAdditionalServices": "Hai bisogno di una licenza personalizzata o di servizi aggiuntivi?",
"CustomOrVolumeLicense": "Licenza personalizzata o multilicenza",
"LiveTrainingSupport": "Formazione e supporto dal vivo",
"AndMore": "e altro ancora",
"AdditionalDeveloperLicense": "Licenza aggiuntiva per sviluppatori",
"ProjectCount": "Conteggio del progetto",
"AllProModules": "Tutti i moduli professionali",
"AllProThemes": "Tutti i temi professionali",
"AllProStartupTemplates": "Tutti i modelli di avvio professionali",
"SourceCodeOfAllModules": "Codice sorgente di tutti i moduli",
"SourceCodeOfAllThemes": "Codice sorgente di tutti i temi",
"PerpetualLicense": "Licenza perpetua",
"UnlimitedServerDeployment": "Distribuzione illimitata del server",
"YearUpgrade": "1 anno di aggiornamento",
"YearPremiumForumSupport": "1 anno di supporto forum premium",
"ForumSupportIncidentCountYear": "Conteggio degli incidenti di supporto del forum / anno",
"PrivateTicketEmailSupport": "Ticket privato e supporto via e-mail",
"BuyNow": "Acquista ora",
"PayViaAmexCard": "Come posso pagare tramite la mia carta AMEX?",
"PayViaAmexCardDescription": "Il gateway di pagamento predefinito \"Iyzico\" potrebbe rifiutare alcune carte di credito AMEX a causa delle misure di sicurezza. In questo caso, puoi pagare tramite il gateway di pagamento alternativo \"2Checkout\".",
"ThankYou": "Grazie",
"InvalidReCaptchaErrorMessage": "Si è verificato un errore durante la verifica di reCAPTCHA. Per favore riprova."
}
}

30
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/tr.json

@ -31,6 +31,34 @@
"SuccessfullyAddedToNewsletter": "Bültenimize abone olduğunuz için teşekkürler!",
"MyProfile": "Profilim",
"EmailNotValid": "Lütfen uygun bir e-posta adresi giriniz",
"InvalidReCaptchaErrorMessage": "ReCAPTCHA doğrulanırken hata oluştu, lütfen tekrar deneyin."
"InvalidReCaptchaErrorMessage": "ReCAPTCHA doğrulanırken hata oluştu, lütfen tekrar deneyin.",
"CompanyName": "Şirket",
"YourCompanyName": "Şirketiniz",
"FirstName": "Ad",
"LastName": "Soyad",
"Optional": "Opsiyonel",
"YourFirstName": "Adınız",
"YourLastName": "Soyadınız",
"SpecialOffer": "Özel Teklif",
"SpecialOfferMessage": "Acele et! Fiyatlar sınırlı bir süre için geçerlidir.",
"DiscountRequest": "İndirim İsteği",
"DiscountRequestDescribeCustomerQuestion": "Aşağıdakilerden hangisi sizi tanımlar?",
"DiscountRequestStudentEmailMessage": "E-posta Adresi \".edu\" içermelidir.",
"DiscountRequestDeveloperCount": "Kaç geliştiriciye sahipsiniz?",
"DiscountRequestDeveloperCountExceedMessage": "{0}'ten fazla geliştiricisi olan şirketler için indirimli lisans sağlamıyoruz.",
"DiscountRequestOrganizationName": "Şirket/organizasyon/okul adı",
"Website": "İnternet sitesi",
"GithubUsername": "GitHub kullanıcı adı",
"PhoneNumber": "Telefon numarası",
"Country": "Ülke",
"DescribeABPCommercialUsage": "ABP Commercial kullanarak geliştirmeyi planladığınız projeyi tanımlayın",
"DiscountRequestCertifyInformationMessage": "Tüm bilgilerin gerçek ve doğru olduğunu onaylıyorum.",
"DiscountRequestReceived": "İndirim talebinizi aldık.",
"DiscountRequestStatusMessage": "Verdiğiniz bilgileri kontrol ettikten sonra size cevap vereceğiz.",
"MVCOrRazorPages": "MVC (Razor Pages)",
"Angular": "Angular",
"Blazor": "Blazor",
"New": "Yeni",
"MongoDB": "MongoDB"
}
}

36
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hans.json

@ -143,7 +143,7 @@
"ApplicationTemplateArchitecture": "应用程序模板还支持UI,API,身份验证服务器物理分离的分层架构.",
"SeeTheGuideOrGoToTheLiveDemo": "查看开发人员指南或者查看在线演示了解更多关于模板的信息.",
"DeveloperGuide": "开发人员指南",
"ModuleTemplate": "模块模块",
"ModuleTemplate": "模块模板",
"ModuleTemplateExplanation1": "你是否想要创建可在不同应用程序之间重用的模块? 这个启动模板准备好了一切来创建可重用的<strong>应用程序模块</strong>或<strong>微服务</strong>.",
"ModuleTemplateExplanation2": "<p>你可以为一个模块支持单个或多个UI框架, 单个或多个数据库提供程序. 除了单元测试和集成测试基础架构外,启动模板被配置为在一个最小的应用程序中运行和<strong>测试你的模块</strong>. </p> <p>查看开发人员指南了解有关此模板的技术信息.</p>",
"WithAllStyleOptions": "使用所有的样式选项",
@ -288,8 +288,36 @@
"ForumSupportIncidentCountYear": "论坛支持事件数量/年",
"PrivateTicketEmailSupport": "私有票和email支持",
"BuyNow": "现在购买",
"PayViaAmexCard": "我如何通过我的AMEX卡付款?",
"PayViaAmexCardDescription": "由于安全措施,默认付款网关“ Iyzico”可能会拒绝某些AMEX信用卡。 在这种情况下,您可以通过备用付款网关“ 2Checkout”付款。",
"InvalidReCaptchaErrorMessage": "验证reCAPTCHA时出错,请重试。"
"PayViaAmexCard": "我如何通过我的AMEX卡付款?",
"PayViaAmexCardDescription": "由于安全措施,默认付款网关'Iyzico'可能会拒绝某些AMEX信用卡. 在这种情况下, 完全可以通过备用付款网关'2Checkout'付款.",
"InvalidReCaptchaErrorMessage": "验证reCAPTCHA时出错,请重试.",
"CompanyName": "公司名称",
"YourCompanyName": "你的公司名称",
"FirstName": "名",
"LastName": "姓",
"Optional": "可选的",
"YourFirstName": "你的名字",
"YourLastName": "你的姓氏",
"SpecialOffer": "特别优惠",
"SpecialOfferMessage": "尽快付款,价格在一定时间内有效.",
"DiscountRequest": "折扣申请",
"DiscountRequestDescribeCustomerQuestion": "以下哪个选项描述了你?",
"DiscountRequestStudentEmailMessage": "Email地址必须包含'edu'.",
"DiscountRequestDeveloperCount": "你有多少开发人员?",
"DiscountRequestDeveloperCountExceedMessage": "对于超过 {0} 开发人员的公司,我们不提供折扣.",
"DiscountRequestOrganizationName": "公司/组织/学校名称",
"Website": "网站",
"GithubUsername": "GitHub用户名",
"PhoneNumber": "手机号",
"Country": "国家",
"DescribeABPCommercialUsage": "描述你基于ABP商业版进行开发的项目",
"DiscountRequestCertifyInformationMessage": "我证明所有的信息都是真实的.",
"DiscountRequestReceived": "我们收到了你的折扣请求.",
"DiscountRequestStatusMessage": "我们会检查你提供的信息并且给你答复.",
"MVCOrRazorPages": "MVC (Razor Pages)",
"Angular": "Angular",
"Blazor": "Blazor",
"New": "新的",
"MongoDB": "MongoDB"
}
}

294
abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/zh-Hant.json

@ -25,6 +25,298 @@
"Volo.AbpIo.Commercial:010004": "不能找到指定的使用者! 使用者必須已經註冊.",
"MyOrganizations": "我的組織",
"ApiKey": "API key",
"UserNameNotFound": "沒有使用者名稱為{0}的使用者"
"UserNameNotFound": "沒有使用者名稱為{0}的使用者",
"SuccessfullyAddedToNewsletter": "感謝你訂閱我們的新聞簡訊!",
"MyProfile": "我的資料",
"EmailNotValid": "請輸入有效的電子郵件地址",
"JoinOurMarketingNewsletter": "加入我們的營銷簡訊",
"WouldLikeToReceiveMarketingMaterials": "我想收到市場營銷資料,例如產品交易和特別優惠.",
"StartUsingYourLicenseNow": "立即開始使用你的許可",
"WelcomePage": "歡迎頁面",
"UnsubscriptionExpireEmail": "退訂許可到期提醒郵件",
"UnsubscribeLicenseExpireEmailReminderMessage": "此電子郵件訂閱僅提醒你許可的到期日期.",
"UnsubscribeFromLicenseExpireEmails": "如果你不想收到關於許可到期郵件,你可以在任何時間取消訂閱.",
"Unsubscribe": "取消訂閱",
"NotOrganizationMember": "你不是任何組織的成員.",
"UnsubscribeLicenseExpirationEmailSuccessTitle": "退訂成功",
"UnsubscribeLicenseExpirationEmailSuccessMessage": "你不會再收到任何許可到期提醒郵件.",
"IndexPageHeroSection": "<span class=\"first-line\">一個完整的</span><span class=\"second-line\">web開發平臺</span><span class=\"third-line\">基於 <img src=\"{0}\" width=\"110\" class=\"ml-1\" /> 框架</span>",
"AbpCommercialShortDescription": "ABP商業版提供了預構建的應用程序模塊, 快速的應用程序開發工具, 專業的UI主題, 高級支持等.",
"LiveDemo": "在線演示",
"GetLicence" :"獲得許可",
"Application": "應用程序",
"StartupTemplates": "啟動模板",
"Startup": "啟動",
"Templates": "模板",
"Developer": "開發人員",
"Tools": "工具",
"Premium": "高級",
"PremiumSupport": "高級支持",
"PremiumForumSupport": "高級論壇支持",
"UI": "UI",
"Themes": "主題",
"JoinOurNewsletter": "加入我們的時事通訊",
"Send": "發送",
"Learn": "學習",
"AdditionalServices": "額外的服務",
"WhatIsABPFramework": "什麽是ABP框架?",
"OpenSourceBaseFramework": "開源的框架",
"ABPFrameworkExplanation": "<p class=\"lead\">ABP商業版基於ABP框架, 這是一個開源和社區驅動的ASP.NET Core web應用程序開發框架.</p><p>ABP框架提供了出色的基礎設施, 使用最佳實踐編寫可維護,可擴展,可測試的代碼.</p><p>基於你已經知道的流行工具. 低學習曲線,容易適應,舒適的開發體檢.</p>",
"Modular": "模塊化",
"MicroserviceCompatible": "微服務兼容",
"DomainDrivenDesignInfrastructure": "領域驅動設計基礎設施",
"MultiTenancy": "多租戶",
"DistributedMessaging": "分布式消息",
"DynamicProxying": "動態代理",
"BackgroundJobs": "後臺作業",
"AuditLogging": "審計日誌",
"BLOBStoring": "BLOB存儲",
"BundlingMinification": "捆綁 & 壓縮",
"AdvancedLocalization": "高級本地化",
"ManyMore": "以及更多",
"ExploreTheABPFramework": "探索ABP框架",
"WhyUseTheABPCommercial": "為什麽使用ABP商業版?",
"WhyUseTheABPCommercialExplanation": "<p class=\"lead mt- 5\">構建企業級的web應用程序可能復雜和耗時.</p><p>ABP商業版提供所有現代企業級基於ASP.NET Core的解決方案所需要的基礎設施. 從設計到部署,整個開發生命周期都由ABP的內置功能和模塊提供支持.</p>",
"StartupTemplatesShortDescription": "啟動模板使你在幾秒內快速啟動項目.",
"UIFrameworksOptions": "UI框架選項;",
"DatabaseProviderOptions": "數據庫提供程序選項;",
"PreBuiltApplicationModules": "預構建的應用程序模塊",
"PreBuiltApplicationModulesShortDescription": "大多數常見的應用程序需求已經做為可重用的模塊為你開發了.",
"Account": "賬戶",
"Blogging": "博客",
"Identity": "Identity",
"IdentityServer": "Identity Server",
"Saas": "Saas",
"LanguageManagement": "語言管理",
"TextTemplateManagement": "文本模板管理",
"See All Modules": "查看所有的模塊",
"ABPSuite": "ABP Suite",
"AbpSuiteShortDescription": "ABP Suite是ABP商業版的輔助工具.",
"AbpSuiteExplanation": "它讓你在幾分鐘內構建web頁面. 它是一個.Net Core全局工具,可以使用命令行安裝. 它可以創建一個新的ABP解決方案,從數據庫生成前端CURD頁面.",
"Details": "詳情",
"LeptonTheme": "Lepton主題",
"ProfessionalModernUIThemes": "專業, 現代化的UI主題",
"LeptonThemeExplanation": "Lepton提供了一系列的Bootstrap管理主題,為任何需要管理儀表盤的項目提供了堅實的基礎.",
"DefaultTheme": "默認主題",
"MaterialTheme": "Material主題",
"Default2Theme": "默认主題2",
"DarkTheme": "深色主題",
"DarkBlueTheme": "深藍主題",
"LightTheme": "淺色主題",
"ProudToWorkWith": "榮幸與你合作",
"OurConsumers": "全球50多個國家的數百家企業和開發商使用ABP商業版.",
"JoinOurConsumers": "加它他們並快速構建令人驚嘆的產品.",
"AdditionalServicesExplanation": "你是否需要額外或自定義的服務? <strong>我們和我們的合作夥伴可以提供;</strong>",
"CustomProjectDevelopment": "自定義項目開發",
"CustomProjectDevelopmentExplanation": "專為你的自定義的開發人員.",
"PortingExistingProjects": "移植現有項目",
"PortingExistingProjectsExplanation": "將你的遷移傳統項目遷移到ABP平臺.",
"LiveSupport": "實時支持",
"LiveSupportExplanation": "在你需要時,可以實時提供遠程支持選項.",
"Training": "培訓",
"TrainingExplanation": "為你的開發人員提供專門培訓.",
"OnBoarding": "管理",
"OnBoardingExplanation": "幫助設置你的開發,CI和CD環境.",
"PrioritizedTechnicalSupport": "優先的技術支持",
"PremiumSupportExplanation": "除了社區對ABP框架出色支持外,我們的支持團隊會優先回答商業用戶的技術問題.",
"SeeTheSupportOptions": "查看支持選項",
"Contact": "聯系",
"TellUsWhatYouNeed": "告訴我們你需要什麽.",
"YourMessage": "你的消息",
"YourFullName": "你的全名",
"EmailField": "E-mail地址",
"YourEmailAddress": "你的e-mail地址",
"HowMayWeHelpYou": "我們如何幫助你",
"SendMessage": "發送消息",
"Success": "成功",
"WeWillReplyYou": "你的消息已經發送! 我們會在短時間內給你答復.",
"GoHome": "回到主頁面",
"CreateLiveDemo": "創建在線演示",
"RegisterToTheNewsletter": "註冊到時事簡報以獲取有關ABP.IO的消息,比如新發布的內容.",
"EnterYourEmailOrLogin": "輸入你的e-mail地址來創建你的演示或者使用你的已有賬號<a href=\"{0}\">登錄</a>.",
"ApplicationTemplate": "應用程序模板",
"ApplicationTemplateExplanation": "應用程序啟動模板用於創建新的web應用程序.",
"EfCoreProvider": "Entity Framework (支持 SQL Server, MySQL, PostgreSQL, Oracle <a href=\"https://docs.microsoft.com/zh-cn/ef/core/providers/\">和其它</a>)",
"AlreadyIncludedInTemplateModules": "以下模塊已經包含並配置在此模板中:",
"ApplicationTemplateArchitecture": "應用程序模板還支持UI,API,身份驗證服務器物理分離的分層架構.",
"SeeTheGuideOrGoToTheLiveDemo": "查看開發人員指南或者查看在線演示了解更多關於模板的信息.",
"DeveloperGuide": "開發人員指南",
"ModuleTemplate": "模块模板",
"ModuleTemplateExplanation1": "你是否想要創建可在不同應用程序之間重用的模塊? 這個啟動模板準備好了一切來創建可重用的<strong>應用程序模塊</strong>或<strong>微服務</strong>.",
"ModuleTemplateExplanation2": "<p>你可以為一個模塊支持單個或多個UI框架, 單個或多個數據庫提供程序. 除了單元測試和集成測試基礎架構外,啟動模板被配置為在一個最小的應用程序中運行和<strong>測試你的模塊</strong>. </p> <p>查看開發人員指南了解有關此模板的技術信息.</p>",
"WithAllStyleOptions": "使用所有的樣式選項",
"Demo": "演示",
"SeeAllModules": "查看所有的模塊",
"ABPCLIExplanation": "ABP CLI(命令行頁面)是一個執行基於ABP解決方案的一些常見操作的命令行工具.",
"ABPSuiteEasilyCURD": "ABP Suite是一個使你輕松創建CURD頁面的工具",
"WeAreHereToHelp": "我們在這裏為你提供<span class=\"zero-text\">幫助</span>",
"BrowseOrAskQuestion": "你可以瀏覽我們的幫助主題或搜索常見的問題, 或者你可以使用<a href=\"{0}\" class=\"text-success\">聯系表單</a>向我們提問.",
"SearchQuestionPlaceholder": "搜索常見的問題",
"WhatIsTheABPCommercial": "什麽是ABP商業版?",
"WhatAreDifferencesThanAbpFramework": "ABP框架與ABP商業版有什麽不同?",
"ABPCommercialExplanation": "ABP商業版是一套基於開源<a target=\"_blank\" href=\"{0}\">ABP框架</a>之上的高級模塊,工具,主題和服務. ABP商業版由ABP框架背後的同一團隊開發和支持.",
"WhatAreDifferencesThanABPFrameworkExplanation": "<p> <a target=\"_blank\" href=\"{0}\">ABP框架</a>是模塊化,主題化,微服務兼容的ASP.NET Core應用程序開發框架. 它提供了一個完整的架構和強大的基礎設施,讓你專註於自己的業務代碼而不是重復自己的每一個項目. 它基於軟件開發的最佳實踐和你已經知道的流行工具 </p> <p> ABP框架是完全免費,開源和由社區驅動的. 它還提供了一個免費的主題和一些預構建的模塊 (如 identity管理和租戶管理).</p>",
"VisitTheFrameworkVSCommercialDocument": "訪問以下鏈接,了解更多信息 <a href=\"{0}\" target=\"_blank\"> {1} </a>",
"ABPCommercialFollowingBenefits": "ABP商業版在ABP框架之上添加了以下好處;",
"Professional": "專業的",
"UIThemes": "UI主題",
"EnterpriseModules": "企業就緒,功能豐富,預構建的<a href=\"{0}\">應用程序模塊</a> (如 Identity Server管理, SaaS管理, 語言管理)",
"ToolingToSupport": "支持你的生產力的工具(如. <a href=\"{0}\">ABP Suite</a>)",
"PremiumSupportLink": "高級<a href=\"{0}\" target=\"_blank\">支持</a>",
"WhatDoIDownloadABPCommercial": "購買ABP商業版後我可以下載什麽?",
"CreateUnlimitedSolutions": "一旦你購買了ABP商業許可, 你可以創建<a href=\"{0}\">入門</a>文檔中描述的無限的解決方案.",
"ABPCommercialSolutionExplanation": "創建新應用程序時,將根據你的首選項獲得Visual Studio解決方案(啟動模板). 下載的解決方案已為你安裝並配置了商業模塊和主題. 你可以刪除預裝的模塊,也可以根據需要添加其他模塊. 默認情況下所有模塊和主題都使用NuGet/NPM軟件包.",
"StartDevelopWithTutorials": "下載的解決方案經過精心設計和記錄, 你可以根據<a href=\"{0}\">教程</a>來開發自己的業務代碼.",
"TryTheCommercialDemo": "你可以嘗試<a href=\"{0}\">示例</a>來查看使用ABP商業模板創建的示例應用程序.",
"HowManyProducts": "使用ABP商業版,我可以構建多少不同的產品/解決方案?",
"HowManyProductsExplanation": "創建ABP項目沒有限制. 你可以根據需要創建任意數量的項目,進行開發並將其部署到其他服務器.",
"HowManyDevelopers": "有多少開發者可以參與ABP商業版工作?",
"HowManyDevelopersExplanation": "ABP商業許可是針對每個開發人員的. 不同的許可類型具有不同的開發人員限制. 但是你可以在需要時將更多開發人員添加到任何許可類型. 查看許可類型,開發人員限制和額外的開發人員成本的<a href=\"{0}\">價格</a>頁面.",
"ChangingLicenseType": "將來更改我的許可類型嗎?",
"ChangingLicenseTypeExplanation": "你始終可以在同一許可中添加新的開發人員. 參閱 \"有多少開發者可以參與ABP商業版工作?\". 你還可以通過支付計算出的價格差來升級到更高的許可. 當你升級到更高的許可計劃時,可以享受新計劃的好處,但是許可升級不會更改許可的到期日期.",
"LicenseExtendUpgradeDiff": "許可擴展和升級有什麽區別?",
"LicenseExtendUpgradeDiffExplanation": "<strong>擴展:</strong> 通過擴展/更新許可,你將繼續獲得高級支持,並獲得有關模塊和主題的重大更新. 此外你將能夠繼續創建新項目. 而且你仍然可以使用ABP Suite來加快開發速度.<hr/><strong>升級:</strong> 通過升級許可,你將升級到更高的許可計劃,這將使你獲得更多好處. 查看 <a href=\"/pricing\">許可比較表</a>來檢查許可計劃之間的差異. <strong>另一方面,當你升級時你的許可到期日期不會改變!</strong>要延長你的許可終止日期,你需要延長你的許可.",
"LicenseRenewalCost": "一年後的許可續期費用是多少?",
"LicenseRenewalCostExplanation": "ABP商業版的續費價格均為原價的{0}. Team版本的續費價格是${1}, Business版本的續訂價格是${2}, Enterprise版本的續訂價格是${3}. 如果你已經購買了, 請<a href='{4}' target='_blank'>登錄帳戶</a>以查看續訂價格.",
"HowDoIRenewMyLicense": "如何續費我的許可證?",
"HowDoIRenewMyLicenseExplanation": "你可以<a href='{0} target='_blank'>登錄</a>以進行續費. 為了享受我們的續費折扣, 請確保在許可證到期之前進行續費, 我們會在到期前7天和30天發送2封續費提醒郵件.",
"IsSourceCodeIncluded": "我的許可是否包括商業模塊和主題的源代碼?",
"IsSourceCodeIncludedExplanation1": "取決於你購買的許可類型:",
"IsSourceCodeIncludedExplanation2": "<strong>團隊</strong>: 你的解決方案將這些模塊和主題作為NuGet和NPM包使用. 它不包括其源代碼. 這樣,只要有新版本可用,你就可以輕松升級這些模塊和主題. 但是,你無法獲取模塊和主題的源代碼.",
"IsSourceCodeIncludedExplanation3": "<strong>商業/企業</strong>: 除了團隊許可外,你還可以下載所需的任何模塊或主題的源代碼. 你甚至可以刪除特定模塊的NuGet/NPM軟件包引用,並將其源代碼直接添加到你的解決方案中以完全更改它.",
"IsSourceCodeIncludedExplanation4": "<p>將模塊的源代碼包含到解決方案中,可以最大程度地自定義該模塊. 但是當新版本發布時,將無法自動升級模塊.</p><p>這些許可均不包含ABP Suite源代碼,該源代碼是一個外部工具,可以為你生成代碼並幫助你進行開發</p><p>有關許可類型之間的其它差異查看<a href=\"{0}\">定價</a>頁面.</p>",
"ChangingDevelopers": "我將來可以更改我組織的註冊開發人員嗎?",
"ChangingDevelopersExplanation": "除了將新的開發人員添加到你的許可中之外,你還可以更改現有的開發人員(可以刪除一個開發人員並將新的開發人員添加到同一位置),而無需任何額外費用.",
"WhatHappensWhenLicenseEnds": "我的許可期限結束後會怎樣?",
"WhatHappensWhenLicenseEndsExplanation1": "ABP商業版具有<a href=\"{0}\" target=\"_blank\">永久許可類型</a>.許可到期後, 你可以繼續開發你的項目.並且你沒有義務續訂許可.許可到期後;",
"WhatHappensWhenLicenseEndsExplanation2": "你不能使用ABP商業版創建新的解決方案,但可以永遠繼續開發現有的應用程序.",
"WhatHappensWhenLicenseEndsExplanation3": "你能夠在你的主版本中獲得模塊和主題的更新.例如;如果你使用的是模塊的v3.2.0版本,你仍然可以獲得v3.x.x版本的更新.(v3.3.0 v3.5.2…等等)的.但是你無法獲得下一個主要版本(如v4.x,v5.x)的更新",
"WhatHappensWhenLicenseEndsExplanation4": "許可到期後,你無法安裝添加到ABP商業平臺的新模塊和主題.",
"WhatHappensWhenLicenseEndsExplanation5": "你不能使用ABP Suite.",
"WhatHappensWhenLicenseEndsExplanation6": "你不再獲得<a href=\"{0}\">高級支持</a>.",
"WhatHappensWhenLicenseEndsExplanation7": "如果你想繼續獲得這些好處,可以繼續續訂. 續訂時有20%的折扣.",
"WhenShouldIRenewMyLicense": "我什麽時候應該續訂我的許可?",
"WhenShouldIRenewMyLicenseExplanation1": "如果你在许可到期后的<strong> 1个月</strong>内续订许可,则许可总价将享受%20的折扣.",
"WhenShouldIRenewMyLicenseExplanation2": "如果你在你的許可過期日期1個月後更新你的許可,更新價格將與許可購買價格相同,你的更新將沒有折扣.",
"TrialPlan": "你們有試用計劃嗎?",
"TrialPlanExplanation": "目前,ABP商業版還沒有試用計劃.對於團隊許可,我們提供30天的退款保證.你可以在30天內要求退款.對於企業營業執照,我們提供30天內60%的退款.這是因為商業和企業許可包含所有模塊和主題的完整源代碼.",
"DoYouAcceptBankWireTransfer": "你們接受銀行電匯嗎?",
"DoYouAcceptBankWireTransferExplanation": "是的,我們接受銀行電匯.<br />通過銀行電匯轉賬,通過電子郵件將收據和所要求的許可類型發送給我們.<br />我們的國際銀行帳戶信息:",
"HowToUpgrade": "可用新版本時如何升級現有應用程序?",
"HowToUpgradeExplanation1": "使用ABP商業版創建新應用程序時,所有模塊和主題均用作NuGet和NPM軟件包. 因此,當有新版本可用時,你可以輕松升級軟件包.",
"HowToUpgradeExplanation2": "除了標準的NuGet/NPM升級之外,<a href=\"{0}\"> ABP CLI </a>還提供了一條更新命令,該命令可自動查找和升級解決方案中的所有與ABP相關的軟件包.",
"DatabaseSupport": "支持哪些數據庫系統?",
"DatabaseSupportExplanation": "ABP框架本身與數據庫無關,並且就其性質而言,可以與任何數據庫提供程序一起使用. 請參閱<a href=\"{0}\" target=\"_blank\">數據訪問文檔</a>以獲取當前實現的提供程序的列表.",
"UISupport": "支持哪些UI框架?",
"Supported": "支持的",
"UISupportExplanation": "ABP框架本身與UI框架無關,並且可以與任何UI框架一起使用. 但是,並非針對所有UI框架都實現了啟動模板,模塊UI和主題. 有關UI選項的最新列表,請參見<a href=\"{0}\">入門文檔</a>.",
"MicroserviceSupport": "它是否支持微服務架構?",
"MicroserviceSupportExplanation1": "ABP框架的主要目標之一是為創建微服務解決方案提供便利的基礎架構. 請參閱<a href=\"{0}\">微服務體系結構</a>文檔,以了解它如何幫助創建微服務系統.",
"MicroserviceSupportExplanation2": "所有的ABP商業模塊通過<a href=\"{0}\">模塊開發最佳實踐</a>文檔被設計為支持微服務部署場景(使用自己的API和數據庫).",
"MicroserviceSupportExplanation3": "我們提供了一個示例<a href=\"{0}\">微服務演示解決方案</a>,該示例演示了一種微服務架構實現,可幫助你創建自己的解決方案.",
"MicroserviceSupportExplanation4": "所以簡短的答案是 \"<strong>是的, 它支持微服務體系結構</strong>\".",
"MicroserviceSupportExplanation5": "但是,微服務系統是一個解決方案,每個解決方案都有不同的要求,網絡拓撲,通信場景,身份驗證可能性,數據庫分離/共享決策,運行時配置,第三方系統集成等等.",
"MicroserviceSupportExplanation6": "ABP框架和ABP商業版提供了微服務方案,微服務兼容模塊,示例和文檔的基礎結構,以幫助你構建自己的解決方案. 但是不要期望直接下載為你預先構建的夢想解決方案. 你將需要了解它,並根據需要將某些部分組合在一起.",
"WhereCanIDownloadSourceCode": "在哪裏可以下載源代碼?",
"WhereCanIDownloadSourceCodeExplanation": "你可以通過ABP Suite或ABP CLI下載所有ABP模塊,Angular軟件包和主題的源代碼. 請參見<a href=\"{0}\">如何下載源代碼?</a>",
"ComputerLimitation": "開發人員在開發ABP時可以登錄到多少臺計算機?",
"ComputerLimitationExplanation": "我們特別允許每個個人/許可的開發人員使用<strong> {0}臺計算機</strong>. 每當需要開發人員在第三臺計算機上開發ABP商業產品時,都應將電子郵件發送到license@abp.io,以說明情況,然後我們將在系統中進行適當分配.",
"RefundPolicy": "你們有退款政策嗎?",
"RefundPolicyExplanation": "你可以在購買許可的<strong>30天</strong>內請求退款.商業和企業許可類型都有源代碼下載選項,因此商業和企業(以及任何包含獲得源代碼的權利的許可)都不能退款.此外,續展和購買第二次許可也不退款.",
"HowCanIRefundVat": "我該如何退還增值稅?",
"HowCanIRefundVatExplanation1": "如果你使用2Checkout付款,則可以通過2Checkout帳戶退還增值稅:",
"HowCanIRefundVatExplanation2": "登錄到你的<a href=\"https://secure.2checkout.com/cpanel/login.php\" target=\"_blank\">2Checkout</a>賬戶",
"HowCanIRefundVatExplanation3": "找到適當的訂單,然後按\"退還已延期的增值稅\"(輸入你的增值稅ID",
"HowCanIGetMyInvoice": "我如何獲得發票?",
"HowCanIGetMyInvoiceExplanation": "有兩個用於購買許可的支付網關:PayU和2Checkout. 如果你通過2Checkout網關購買許可,則它將PDF發票發送到你的電子郵件地址,請參閱<a href=\"https://knowledgecenter.2checkout.com/Documentation/03Billing-and-payments/Payment-operations/How-do-invoices-work>2Checkout發票.</a>如果你是通過PayU網關或通過銀行電匯購買的,我們將準備並發送你的發票. 你可以從<a href=\"{0}\">組織管理頁面</a>索取發票.",
"Forum": "論壇",
"SupportExplanation": "ABP商業版許可包含由ABP框架專家組成的團隊提供的高級論壇支持.",
"PrivateTicket": "私有票",
"PrivateTicketExplanation": "企業許可還包含帶有電子郵件和票系統的私人支持.",
"AbpSuiteExplanation1": "ABP Suite使你在幾分鐘內構建web頁面. 它是一個.NET Core Global工具,可以使用命令行安裝.",
"AbpSuiteExplanation2": "它可以創建一個新的ABP解決方案, 從數據庫生成前端CURD頁面. 有關技術概述查看<a href=\"{0}\">文檔</a>",
"FastEasy": "快速並且簡單",
"AbpSuiteExplanation3": "ABP Suite允許你輕松的創建CURD頁面. 你只需要定義你的實體和它的屬性, 其它的讓ABP Suite幫你完成! ABP Suite會在幾秒內為你生成CURD頁面和必要的代碼. 它支持Angular, MVC和 Blazor用戶界面.",
"RichOptions": "豐富的選項",
"AbpSuiteExplanation4": "ABP Suite支持多個UI選項,例如 <a href=\"https://docs.microsoft.com/en-us/aspnet/core/razor-pages\">Razor Pages</a>和<a href=\"https://angular.io\">Angular</a>.它還支持多個數據庫, 如 <a href=\"https://www.mongodb.com\">MongoDB</a> 和<strong>EntityFramework Core</strong>支持的所有數據庫(MS SQL Server, Oracle, MySql, PostgreSQL 和 <a href=\"https://docs.microsoft.com/zh-cn/ef/core/providers/?tabs=dotnet-core-cli\">更多</a>).",
"AbpSuiteExplanation5": "好消息是, 你不必擔心這些選項. ABP Suite了解你的項目類型並且將生成的代碼放到項目中正確的位置.",
"SourceCode": "源碼",
"AbpSuiteExplanation6": "ABP Suite為你生成源代碼! 它不會生成魔法文件來生成web頁面. ABP Suite為<strong>實體, 倉儲, 應用程序, Code First遷移, JavaScript/TypeScript 和 CSHTML/HTML</strong>以及必要的頁面生成源代碼. ABP Suite根據軟件開發的<strong>最佳實踐</strong>來生成代碼, 所以你不必擔心生成的代碼的質量.",
"AbpSuiteExplanation7": "由於你有應用程序層中生成的CURD頁面的構建塊的源代碼, 因此你可以輕松修改源碼並將自定義/業務邏輯註入到所生成的代碼中.",
"CrossPlatform": "跨平台",
"AbpSuiteExplanation8": "ABP Suite使用.NET Core構建並且它是跨平臺的. 它在你的本地電腦中運行為web應用程序. 你可以在<strong>Windows</strong>, <strong>Mac</strong>和<strong>Linux</strong>上運行它",
"OtherFeatures": "其他功能",
"OtherFeatures1": "輕松更新你的解決方案的<strong>NuGet</strong>和<strong>NPM</strong>包.",
"OtherFeatures2": "重新生成已經生成的頁面.",
"OtherFeatures3": "創建新的解決方案",
"ThanksForCreatingProject": "感謝你創建你的項目!",
"HotToRunSolution": "如何運行你的解決方案?",
"HotToRunSolutionExplanation": "查看入門文檔來學習如何配置和運行你的解決方案.",
"GettingStarted": "入門",
"WebAppDevTutorial": "Web應用開發教程",
"WebAppDevTutorialExplanation": "查看web應用程序開發教程文檔來一步一步的了解開發示例.",
"Document": "文檔",
"UsingABPSuiteToCURD": "使用ABP Suite來生成CURD頁面",
"SeeABPSuiteDocument": "查看ABP Suite文檔學習如何使用ABP Suite.",
"AskQuestionsOnSupport": "你可以在ABP商業支持提出問題.",
"Documentation": "文檔",
"SeeModulesDocument": "查看模塊文檔獲取所有商業(專業)模塊列表和它們的文檔.",
"Pricing": "價格",
"PricingExplanation": "選擇當前業務需要的特性和功能. 隨著業務增長輕松升級.",
"Team": "團隊",
"Business": "商業",
"Enterprise": "企業",
"Custom": "自定義",
"IncludedDeveloperLicenses": "包括開發人員許可",
"CustomLicenceOrAdditionalServices": "需要自定義許可與額外服務?",
"CustomOrVolumeLicense": "自定義或批量許可",
"LiveTrainingSupport": "現場培訓和支持",
"AndMore": "和更多",
"AdditionalDeveloperLicense": "額外的開發人員許可",
"ProjectCount": "項目數量",
"AllProModules": "所有模塊",
"AllProThemes": "所有主題",
"AllProStartupTemplates": "所有專業啟動模板",
"SourceCodeOfAllModules": "所有模塊的源碼",
"SourceCodeOfAllThemes": "所有主題的源碼",
"PerpetualLicense": "永久的許可",
"UnlimitedServerDeployment": "無限制的服務器部署",
"YearUpgrade": "1年升級",
"YearPremiumForumSupport": "1年高級論壇支持",
"ForumSupportIncidentCountYear": "論壇支持事件數量/年",
"PrivateTicketEmailSupport": "私有票和email支持",
"BuyNow": "現在購買",
"PayViaAmexCard": "我如何通過我的AMEX卡付款?",
"PayViaAmexCardDescription": "由於安全措施,默認付款網關'Iyzico'可能會拒絕某些AMEX信用卡. 在這種情況下,完全可以通過備用付款網關'2Checkout'付款.",
"InvalidReCaptchaErrorMessage": "验证reCAPTCHA时出错,请重试.",
"CompanyName": "公司名稱",
"YourCompanyName": "你的公司名稱",
"FirstName": "名",
"LastName": "姓",
"Optional": "可選的",
"YourFirstName": "你的名字",
"YourLastName": "你的姓氏",
"SpecialOffer": "特別優惠",
"SpecialOfferMessage": "盡快付款,價格在一定時間內有效.",
"DiscountRequest": "折扣申請",
"DiscountRequestDescribeCustomerQuestion": "以下哪個選項描述了你?",
"DiscountRequestStudentEmailMessage": "Email地址必須包含'edu'.",
"DiscountRequestDeveloperCount": "你有多少開發人員?",
"DiscountRequestDeveloperCountExceedMessage": "對於超過 {0} 開發人員的公司,我們不提供折扣.",
"DiscountRequestOrganizationName": "公司/組織/學校名稱",
"Website": "網站",
"GithubUsername": "GitHub用戶名",
"PhoneNumber": "手機號",
"Country": "國家",
"DescribeABPCommercialUsage": "描述你基於ABP商業版進行開發的項目",
"DiscountRequestCertifyInformationMessage": "我證明所有的信息都是真實的.",
"DiscountRequestReceived": "我們收到了你的折扣請求.",
"DiscountRequestStatusMessage": "我們會檢查你提供的信息並且給你答復.",
"MVCOrRazorPages": "MVC (Razor Pages)",
"Angular": "Angular",
"Blazor": "Blazor",
"New": "新的",
"MongoDB": "MongoDB"
}
}

2
abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/FR.json → abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/fr.json

@ -51,7 +51,7 @@
"Answer": "Répondre",
"Views": "vues",
"Answered": "Répondu",
"WaitingForYourAnswer": "J'attends ta réponse",
"WaitingForYourAnswer": "En attente de votre réponse",
"Asked": "demandé",
"AllQuestions": "Toutes les questions",
"NextVersion": "Version suivante",

147
abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/hi.json

@ -0,0 +1,147 @@
{
"culture": "hi",
"texts": {
"Permission:CommunityArticle": "सामुदायिक अनुच्छेद",
"Permission:Edit": "संपादित करें",
"Waiting": "इंतज़ार कर रही",
"Approved": "मंजूर की",
"Rejected": "अस्वीकृत",
"Wait": "रुको",
"Approve": "मंजूर",
"Reject": "अस्वीकार",
"ReadArticle": "लेख पढ़ें",
"Status": "स्थिति",
"ContentSource": "विषय - वस्तु का स्रोत",
"Details": "विवरण",
"Url": "यूआरएल",
"Title": "शीर्षक",
"CreationTime": "रचना समय",
"Save": "सहेजें",
"SameUrlAlreadyExist": "वही url पहले से मौजूद है यदि आप इस लेख को जोड़ना चाहते हैं, तो आपको url को बदल देना चाहिए!",
"UrlIsNotValid": "यू आर एल मान्य नहीं है।",
"UrlNotFound": "Url नहीं मिला।",
"UrlContentNotFound": "यूआरएल सामग्री नहीं मिली।",
"Summary": "सारांश",
"MostRead": "सबसे ज़्यादा पढ़ा हुआ",
"Latest": "नवीनतम",
"ContributeAbpCommunity": "ABP समुदाय में योगदान दें",
"SubmitYourArticle": "अपनी पोस्ट सबमिट करें",
"ContributionGuide": "योगदान गाइड",
"BugReport": "बग रिपोर्ट",
"SeeAllArticles": "सभी पोस्ट देखें",
"WelcomeToABPCommunity!": "ABP समुदाय में आपका स्वागत है!",
"MyProfile": "मेरी प्रोफाइल",
"MyOrganizations": "मेरे संगठन",
"EmailNotValid": "कृपया एक वैध ई - मेल एड्रेस डालें।",
"FeatureRequest": "महत्वपूर्ण लेख मांगना",
"CreateArticleTitleInfo": "पोस्ट का शीर्षक पोस्ट सूची पर दिखाया जाना है।",
"CreateArticleSummaryInfo": "पोस्ट सूची पर दिखाए जाने वाले पोस्ट का संक्षिप्त सारांश।",
"CreateArticleCoverInfo": "एक प्रभावी लेख बनाने के लिए, एक कवर फ़ोटो जोड़ें। सर्वश्रेष्ठ दृश्य के लिए 16: 9 पहलू अनुपात चित्र अपलोड करें। अधिकतम फ़ाइल आकार: 1 एमबी।",
"ThisExtensionIsNotAllowed": "इस एक्सटेंशन की अनुमति नहीं है।",
"TheFileIsTooLarge": "फ़ाइल बहुत बड़ी है।",
"GoToTheArticle": "लेख पर जाएं",
"Contribute": "योगदान",
"OverallProgress": "समग्र प्रगति",
"Done": "किया हुआ",
"Open": "खुला हुआ",
"Closed": "बंद किया हुआ",
"LatestQuestionOnThe": "पर नवीनतम प्रश्न",
"Stackoverflow": "स्टैक ओवरफ़्लो",
"Votes": "वोट",
"Answer": "उत्तर",
"Views": "विचारों",
"Answered": "उत्तर",
"WaitingForYourAnswer": "आपके जवाब का इंतज़ार",
"Asked": "पूछा",
"AllQuestions": "सभी प्रश्न",
"NextVersion": "अगला संस्करण",
"MilestoneErrorMessage": "Github से वर्तमान मील का पत्थर का विवरण नहीं मिल सका।",
"QuestionItemErrorMessage": "Stackoverflow से नवीनतम प्रश्न विवरण प्राप्त नहीं कर सका।",
"Oops": "उफ़!",
"CreateArticleSuccessMessage": "अनुच्छेद सफलतापूर्वक प्रस्तुत किया गया है। इसे साइट व्यवस्थापक से समीक्षा के बाद प्रकाशित किया जाएगा।",
"ChooseCoverImage": "कवर छवि चुनें ...",
"CoverImage": "कवर छवि",
"ShareYourExperiencesWithTheABPFramework": "ABP फ्रेमवर्क के साथ अपने अनुभव साझा करें!",
"Optional": "ऐच्छिक",
"UpdateUserWebSiteInfo": "उदाहरण: https://johndoe.com",
"UpdateUserTwitterInfo": "उदाहरण: जॉन्डो",
"UpdateUserGithubInfo": "उदाहरण: जॉन्डो",
"UpdateUserLinkedinInfo": "उदाहरण: https: //www.linkedin.com / ...",
"UpdateUserCompanyInfo": "उदाहरण: वोलोसॉफ्ट",
"UpdateUserJobTitleInfo": "उदाहरण: सॉफ्टवेयर डेवलपर",
"UserName": "उपयोगकर्ता नाम",
"Company": "कंपनी",
"PersonalWebsite": "व्यक्तिगत वेबसाइट",
"RegistrationDate": "पंजीकरण की तारीख",
"Social": "सामाजिक",
"Biography": "जीवनी",
"HasNoPublishedArticlesYet": "अभी तक कोई प्रकाशित लेख नहीं है",
"Author": "लेखक",
"LatestGithubAnnouncements": "नवीनतम गितूब घोषणाएँ",
"SeeAllAnnouncements": "सभी घोषणाएँ देखें",
"LatestBlogPost": "नवीनतम ब्लॉग पोस्ट",
"Edit": "संपादित करें",
"ProfileImageChange": "प्रोफ़ाइल छवि बदलें",
"BlogItemErrorMessage": "ABP से नवीनतम ब्लॉग पोस्ट विवरण नहीं मिल सका।",
"PlannedReleaseDate": "योजना जारी करने की तारीख",
"CommunityArticleRequestErrorMessage": "जीथब से नवीनतम लेख अनुरोध नहीं मिल सका।",
"ArticleRequestFromGithubIssue": "अब कोई लेख अनुरोध नहीं है।",
"LatestArticles": "नवीनतम पोस्ट",
"ArticleRequests": "लेख अनुरोध",
"AllArticleRequests": "सभी लेख अनुरोध देखें",
"SubscribeToTheNewsletter": "न्यूज़लेटर की सदस्यता लें",
"NewsletterEmailDefinition": "एबीपी में होने वाली घटनाओं के बारे में जानकारी प्राप्त करें जैसे नए रिलीज़, मुफ्त स्रोत, लेख, और बहुत कुछ।",
"NoThanks": "जी नहीं, धन्यवाद",
"MaybeLater": "शायद बाद में",
"JoinOurArticleNewsletter": "हमारे लेख समाचार पत्र में शामिल हों",
"Community": "समुदाय",
"Marketing": "विपणन",
"CommunityPrivacyPolicyConfirmation": "मैं नियम और शर्तों और <a href=\"https://com Commercial.abp.io/Privacy\"> गोपनीयता नीति </a> से सहमत हूं।",
"ArticleRequestMessageTitle": "GitHub पर एक लेख / ट्यूटोरियल जिसे आप इस वेब साइट पर देखना चाहते हैं, का अनुरोध करने के लिए <a href=\"https://github.com/abpframework/abp/issues/new\"> एक समस्या खोलें </a>।",
"ArticleRequestMessageBody": "यहाँ, समुदाय द्वारा अनुरोधित लेखों की सूची। क्या आप एक अनुरोधित लेख लिखना चाहते हैं? कृपया अनुरोध पर क्लिक करें और चर्चा में शामिल हों।",
"Language": "भाषा: हिन्दी",
"CreateArticleLanguageInfo": "पोस्ट सामग्री के लिए भाषा।",
"VideoPost": "वीडियो पोस्ट",
"Article": "लेख",
"Read": "पढ़ें",
"CreateGithubArticleUrlInfo": "मूल GitHub लेख का URL।",
"CreateVideoContentUrlInfo": "पोस्ट का मूल Youtube URL।",
"CreateExternalArticleUrlInfo": "लेख के मूल बाहरी यूआरएल।",
"VideoContentForm": "YouTube पर वीडियो सबमिट करें",
"GithubPostForm": "GitHub पर लेख प्रस्तुत करें",
"ExternalPostForm": "एक बाहरी सामग्री सबमिट करें",
"HowToPost": "पोस्ट कैसे करें?",
"Posts": "पदों",
"VideoUrl": "वीडियो यूआरएल",
"GithubArticleUrl": "गीथब लेख उराल",
"ExternalArticleUrl": "बाहरी लेख यूआरएल",
"CreatePostCoverInfo": "एक प्रभावी पोस्ट बनाने के लिए, एक कवर फ़ोटो जोड़ें। सर्वश्रेष्ठ दृश्य के लिए 16: 9 पहलू अनुपात चित्र अपलोड करें। अधिकतम फ़ाइल आकार: 1 एमबी।",
"ThankYouForContribution": "ABP समुदाय में योगदान के लिए धन्यवाद।",
"GithubArticle": "गीथब लेख",
"GithubArticleSubmitStepOne": "<span class = \"font-weight-bold\"> 1। </ span> मार्कडाउन प्रारूप के साथ किसी भी सार्वजनिक GitHub रिपॉजिटरी पर एक लेख लिखें। <a target=\"_blank\" href=\"https://github.com/abpframework/abp/blob/dev/docs/en/Community-Articles/2020-12-04-Event-Offganizer/Post.md\"> उदाहरण </a>",
"GithubArticleSubmitStepTwo": "<span class = \"font-weight-bold\"> 2। </ span> फ़ॉर्म का उपयोग करके अपना लेख URL सबमिट करें।",
"GithubArticleSubmitStepThree": "<span class = \"font-weight-bold\"> 3। </ span> इस वेब साइट में आपका लेख प्रस्तुत किया जाएगा।",
"YoutubeVideo": "यूट्यूब वीडियो",
"YoutubeVideoSubmitStepOne": "<span class = \"font-weight-bold\"> 1। </ span> YouTube पर अपना वीडियो प्रकाशित करें।",
"YoutubeVideoSubmitStepTwo": "<span class = \"font-weight-bold\"> 2। </ span> फ़ॉर्म का उपयोग करके वीडियो URL सबमिट करें।",
"YoutubeVideoSubmitStepThree": "<span class = \"font-weight-bold\"> 3। </ span> आगंतुक इस वेबसाइट पर सीधे आपकी वीडियो सामग्री देख सकेंगे।",
"ExternalContent": "बाहरी सामग्री",
"ExternalContentSubmitStepOne": "<span class = \"font-weight-bold\"> 1। </ span> किसी भी सार्वजनिक मंच पर एक सामग्री बनाएं (मध्यम, अपना स्वयं का ब्लॉग या कहीं भी आप चाहें)।",
"ExternalContentSubmitStepTwo": "<span class = \"font-weight-bold\"> 2। </ span> फ़ॉर्म का उपयोग करके अपना सामग्री URL सबमिट करें।",
"ExternalContentSubmitStepThree": "<span class = \"font-weight-bold\"> 3। </ span> मूल वेबसाइट पर आगंतुकों को सामग्री पर पुनर्निर्देशित किया गया है।",
"ChooseYourContentType": "कृपया अपनी सामग्री जोड़ने का तरीका चुनें।",
"PostContentViaGithub": "मैं अपना लेख जोड़ना चाहता हूं <span class = \"font-weight-bold\"> <i class = \"fa fa-github\"> </ i> GitHub </ span> अंकन नियमों के अनुसार।",
"PostContentViaYoutube": "मैं यहां उपलब्ध अपने वीडियो को <span class = \"font-weight-bold\"> <i class = \"fa fa-youtube\"> </ i> Youtube </ span> पर साझा करना चाहता हूं।",
"PostContentViaExternalSource": "मैं यहां <span class = \"font-weight-bold\"> एक अन्य प्लेटफ़ॉर्म </ span> पर प्रकाशित सामग्री जोड़ना चाहता हूं।",
"GitHubUserNameValidationMessage": "आपके Github उपयोगकर्ता नाम में व्हॉट्सएप शामिल नहीं हो सकता है, कृपया सुनिश्चित करें कि आपका Github उपयोगकर्ता नाम सही है।",
"PersonalSiteUrlValidationMessage": "आपके व्यक्तिगत साइट URL में व्हॉट्सएप शामिल नहीं हो सकता है, कृपया सुनिश्चित करें कि आपका व्यक्तिगत साइट URL सही है।",
"TwitterUserNameValidationMessage": "आपके ट्विटर उपयोगकर्ता नाम में व्हाट्सएप शामिल नहीं हो सकता है, कृपया सुनिश्चित करें कि आपका ट्विटर उपयोगकर्ता नाम सही है।",
"LinkedinUrlValidationMessage": "आपके लिंक्डइन URL में व्हॉट्सएप शामिल नहीं हो सकता है, कृपया सुनिश्चित करें कि आपका लिंक्डइन URL सही है।",
"NoPostsFound": "कोई प्रकाशन नहीं मिला!",
"SearchInPosts": "पदों में खोजें ...",
"MinimumSearchContent": "आपको कम से कम 3 वर्ण दर्ज करने होंगे!",
"Volo.AbpIo.Domain:060001": "स्रोत URL (\"{ArticleUrl}\") जीथब URL नहीं है",
"Volo.AbpIo.Domain:060002": "लेख सामग्री Github (\"{ArticleUrl}\") संसाधन से उपलब्ध नहीं है।",
"Volo.AbpIo.Domain:060003": "कोई लेख सामग्री नहीं मिली!"
}
}

147
abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/it.json

@ -0,0 +1,147 @@
{
"culture": "it",
"texts": {
"Permission:CommunityArticle": "Articolo comunitario",
"Permission:Edit": "modificare",
"Waiting": "In attesa",
"Approved": "Approvato",
"Rejected": "Respinto",
"Wait": "Aspettare",
"Approve": "Approvare",
"Reject": "Rifiutare",
"ReadArticle": "Leggi l'articolo",
"Status": "Stato",
"ContentSource": "Fonte di contenuto",
"Details": "Dettagli",
"Url": "Url",
"Title": "Titolo",
"CreationTime": "Tempo di creazione",
"Save": "Salva",
"SameUrlAlreadyExist": "Lo stesso URL esiste già se vuoi aggiungere questo articolo, dovresti cambiare l'URL!",
"UrlIsNotValid": "URL non valido.",
"UrlNotFound": "URL non trovato.",
"UrlContentNotFound": "Contenuto URL non trovato.",
"Summary": "Sommario",
"MostRead": "I più letti",
"Latest": "Ultimo",
"ContributeAbpCommunity": "Contribuisci alla comunità ABP",
"SubmitYourArticle": "Invia il tuo post",
"ContributionGuide": "Guida al contributo",
"BugReport": "Riportare un errore",
"SeeAllArticles": "Vedi tutti i post",
"WelcomeToABPCommunity!": "Benvenuto nella comunità ABP!",
"MyProfile": "Il mio profilo",
"MyOrganizations": "Le mie organizzazioni",
"EmailNotValid": "Si prega di inserire un indirizzo email valido.",
"FeatureRequest": "Richiesta di funzionalità",
"CreateArticleTitleInfo": "Titolo del post da mostrare nell'elenco dei post.",
"CreateArticleSummaryInfo": "Un breve riassunto del post da mostrare nell'elenco dei post.",
"CreateArticleCoverInfo": "Per creare un articolo efficace, aggiungi una foto di copertina. Carica immagini in formato 16: 9 per una visualizzazione migliore. Dimensione massima del file: 1 MB.",
"ThisExtensionIsNotAllowed": "Questa estensione non è consentita.",
"TheFileIsTooLarge": "Il file è troppo grande.",
"GoToTheArticle": "Vai all'articolo",
"Contribute": "Contribuire",
"OverallProgress": "Progressi generali",
"Done": "Fatto",
"Open": "Aperto",
"Closed": "Chiuso",
"LatestQuestionOnThe": "Ultima domanda su",
"Stackoverflow": "Stackoverflow",
"Votes": "voti",
"Answer": "Risposta",
"Views": "visualizzazioni",
"Answered": "Risposto",
"WaitingForYourAnswer": "In attesa della tua risposta",
"Asked": "chiesto",
"AllQuestions": "Tutte le domande",
"NextVersion": "Versione successiva",
"MilestoneErrorMessage": "Impossibile ottenere i dettagli della pietra miliare corrente da Github.",
"QuestionItemErrorMessage": "Impossibile ottenere gli ultimi dettagli della domanda da Stackoverflow.",
"Oops": "Ops!",
"CreateArticleSuccessMessage": "L'articolo è stato inviato con successo. Verrà pubblicato dopo una revisione da parte dell'amministratore del sito.",
"ChooseCoverImage": "Scegli un'immagine di copertina ...",
"CoverImage": "Immagine di copertina",
"ShareYourExperiencesWithTheABPFramework": "Condividi le tue esperienze con ABP Framework!",
"Optional": "Opzionale",
"UpdateUserWebSiteInfo": "Esempio: https://johndoe.com",
"UpdateUserTwitterInfo": "Esempio: johndoe",
"UpdateUserGithubInfo": "Esempio: johndoe",
"UpdateUserLinkedinInfo": "Esempio: https: //www.linkedin.com / ...",
"UpdateUserCompanyInfo": "Esempio: Volosoft",
"UpdateUserJobTitleInfo": "Esempio: sviluppatore di software",
"UserName": "Nome utente",
"Company": "Azienda",
"PersonalWebsite": "Sito web personale",
"RegistrationDate": "Data di registrazione",
"Social": "Sociale",
"Biography": "Biografia",
"HasNoPublishedArticlesYet": "non ha ancora articoli pubblicati",
"Author": "Autore",
"LatestGithubAnnouncements": "Ultimi annunci su GitHub",
"SeeAllAnnouncements": "Vedi tutti gli annunci",
"LatestBlogPost": "Ultimo post sul blog",
"Edit": "modificare",
"ProfileImageChange": "Cambia l'immagine del profilo",
"BlogItemErrorMessage": "Impossibile ottenere i dettagli più recenti del post del blog da ABP.",
"PlannedReleaseDate": "Data di rilascio prevista",
"CommunityArticleRequestErrorMessage": "Impossibile ottenere l'ultima richiesta di articolo da Github.",
"ArticleRequestFromGithubIssue": "Non ci sono richieste di articoli al momento.",
"LatestArticles": "ultimi post",
"ArticleRequests": "Richieste di articoli",
"AllArticleRequests": "Vedi tutte le richieste di articoli",
"SubscribeToTheNewsletter": "Iscriviti alla Newsletter",
"NewsletterEmailDefinition": "Ottieni informazioni sugli eventi in ABP come nuove versioni, fonti gratuite, articoli e altro ancora.",
"NoThanks": "No grazie",
"MaybeLater": "Forse più tardi",
"JoinOurArticleNewsletter": "Iscriviti alla nostra newsletter articolo",
"Community": "Comunità",
"Marketing": "Marketing",
"CommunityPrivacyPolicyConfirmation": "Accetto i Termini e condizioni e l '<a href=\"https://commercial.abp.io/Privacy\"> Informativa sulla privacy </a>.",
"ArticleRequestMessageTitle": "<a href=\"https://github.com/abpframework/abp/issues/new\"> Apri un numero </a> su GitHub per richiedere un articolo / tutorial che desideri vedere su questo sito web.",
"ArticleRequestMessageBody": "Di seguito l'elenco degli articoli richiesti dalla community. Vuoi scrivere un articolo richiesto? Fare clic sulla richiesta e partecipare alla discussione.",
"Language": "linguaggio",
"CreateArticleLanguageInfo": "La lingua per il contenuto del post.",
"VideoPost": "Post video",
"Article": "Articolo",
"Read": "Leggere",
"CreateGithubArticleUrlInfo": "URL originale di GitHub dell'articolo.",
"CreateVideoContentUrlInfo": "URL YouTube originale del post.",
"CreateExternalArticleUrlInfo": "URL esterno originale dell'articolo.",
"VideoContentForm": "Invia video su YouTube",
"GithubPostForm": "Invia articolo su GitHub",
"ExternalPostForm": "Invia un contenuto esterno",
"HowToPost": "Come pubblicare?",
"Posts": "Messaggi",
"VideoUrl": "URL video",
"GithubArticleUrl": "URL articolo Github",
"ExternalArticleUrl": "URL articolo esterno",
"CreatePostCoverInfo": "Per creare un post efficace, aggiungi una foto di copertina. Carica immagini in formato 16: 9 per una visualizzazione migliore. Dimensione massima del file: 1 MB.",
"ThankYouForContribution": "Grazie per aver contribuito alla comunità ABP.",
"GithubArticle": "Articolo GitHub",
"GithubArticleSubmitStepOne": "<span class = \"font-weight-bold\"> 1. </span> Scrivi un articolo su qualsiasi repository GitHub pubblico con il formato Markdown. <a target=\"_blank\" href=\"https://github.com/abpframework/abp/blob/dev/docs/en/Community-Articles/2020-12-04-Event-Organizer/Post.md\"> esempio </a>",
"GithubArticleSubmitStepTwo": "<span class = \"font-weight-bold\"> 2. </span> Invia l'URL del tuo articolo utilizzando il modulo.",
"GithubArticleSubmitStepThree": "<span class = \"font-weight-bold\"> 3. </span> Il tuo articolo verrà visualizzato in questo sito web.",
"YoutubeVideo": "Video Youtube",
"YoutubeVideoSubmitStepOne": "<span class = \"font-weight-bold\"> 1. </span> Pubblica il tuo video su YouTube.",
"YoutubeVideoSubmitStepTwo": "<span class = \"font-weight-bold\"> 2. </span> Invia l'URL del video utilizzando il modulo.",
"YoutubeVideoSubmitStepThree": "<span class = \"font-weight-bold\"> 3. </span> I visitatori potranno guardare i tuoi contenuti video direttamente su questo sito web.",
"ExternalContent": "Contenuto esterno",
"ExternalContentSubmitStepOne": "<span class = \"font-weight-bold\"> 1. </span> Crea un contenuto su qualsiasi piattaforma pubblica (mezzo, il tuo blog o ovunque tu voglia).",
"ExternalContentSubmitStepTwo": "<span class = \"font-weight-bold\"> 2. </span> Invia l'URL dei tuoi contenuti utilizzando il modulo.",
"ExternalContentSubmitStepThree": "<span class = \"font-weight-bold\"> 3. </span> I visitatori vengono reindirizzati al contenuto del sito web originale.",
"ChooseYourContentType": "Scegli il modo in cui desideri aggiungere i tuoi contenuti.",
"PostContentViaGithub": "Voglio aggiungere il mio articolo con <span class = \"font-weight-bold\"> <i class = \"fa fa-github\"> </i> GitHub </span> in conformità con le regole di markdown.",
"PostContentViaYoutube": "Voglio condividere i miei video disponibili su <span class = \"font-weight-bold\"> <i class = \"fa fa-youtube\"> </i> Youtube </span> qui.",
"PostContentViaExternalSource": "Voglio aggiungere qui il contenuto che ho pubblicato su <span class = \"font-weight-bold\"> un'altra piattaforma </span>.",
"GitHubUserNameValidationMessage": "Il tuo nome utente Github non può includere spazi bianchi, assicurati che il tuo nome utente Github sia corretto.",
"PersonalSiteUrlValidationMessage": "L'URL del tuo sito personale non può includere spazi bianchi, assicurati che l'URL del tuo sito personale sia corretto.",
"TwitterUserNameValidationMessage": "Il tuo nome utente Twitter non può includere spazi bianchi, assicurati che il tuo nome utente Twitter sia corretto.",
"LinkedinUrlValidationMessage": "Il tuo URL di Linkedin non può includere spazi bianchi, assicurati che il tuo URL di Linkedin sia corretto.",
"NoPostsFound": "Nessun post trovato!",
"SearchInPosts": "Cerca nei post ...",
"MinimumSearchContent": "Devi inserire almeno 3 caratteri!",
"Volo.AbpIo.Domain:060001": "L'URL di origine (\"{ArticleUrl}\") non è l'URL di GitHub",
"Volo.AbpIo.Domain:060002": "Il contenuto dell'articolo non è disponibile dalla risorsa Github (\"{ArticleUrl}\").",
"Volo.AbpIo.Domain:060003": "Nessun contenuto dell'articolo trovato!"
}
}

37
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en-GB.json

@ -194,6 +194,41 @@
"MultipleUIOptionsExplanation": "The core framework is designed as UI independent and can work with any type of UI system, while there are multiple pre-built and integrated options are provided out of the box.",
"MultipleDBOptionsExplanation": "The framework can work with any data source, while the following providers are officially developed and supported:",
"SelectLanguage": "Select language",
"LatestArticleOnCommunity": "Latest Article on ABP Community"
"LatestArticleOnCommunity": "Latest Article on ABP Community",
"Register": "Register",
"IsDownloadable": "Is downloadable",
"DatabaseOptions": "Database Options",
"BackToPackagesPage": "Back to Packages Page",
"HowToInstall": "How to Install",
"SeeOnNpm": "See on NPM",
"SeeOnNuget": "See on Nuget",
"MVCGulpCommandExplanation": "If you are using MVC (Razor Pages) UI, then run the \"gulp\" command after the package installation.",
"UsingABPCLI": "Using <a href=\"https://docs.abp.io/en/abp/latest/CLI\">Abp CLI</a>",
"WithoutABPCLI": "Without ABP CLI",
"ABPCLIModuleDependency": "Abp Cli automatically adds module dependency.",
"AddModuleDependency": "Then add module dependency",
"Packages": "Packages",
"NugetPackages": "Nuget Packages",
"NPMPackages": "NPM Packages",
"SeeDocs": "See Docs",
"None": "None",
"Application": "Application",
"Module": "Module",
"PackageName": "Package Name",
"LicenseURL": "License URL",
"License": "License",
"ProjectCreationSuccessMessage": "Your project has been successfully created",
"HowToRunSolution": "How to Run Your Solution?",
"GettingStartedMessage": "See getting started document to learn how to configure and run your solution.",
"WebAppDevTutorial": "Web App Dev Tutorial",
"WebAppDevTutorialMessage": "See web application development tutorial document for a step by step development sample.",
"CommunityArticles": "Community Articles",
"CommunityArticleMessage": "Check ABP Community Platform to read useful articles for ABP Framework.",
"InvestigateSolutionDetails": "Investigate the Solution Details",
"StartupTemplateDocumentationMessage": "See application startup template document to learn the architecture and the structure of your solution.",
"ClientSideDevelopment": "Client Side Development",
"ClientSideDevelopmentDocumentationMessage": "See the {0} document to learn key points for user interface (client side) development.",
"DatabaseProviderDocumentationMessage": "See {0} document to learn key points for database layer development.",
"ABPCommercialExplanationMessage": "ABP Commercial provides premium modules, themes, tooling and support for the ABP Framework."
}
}

41
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json

@ -175,7 +175,7 @@
"TieredOption": "Creates a tiered solution where Web and Http API layers are physically separated. If not checked, creates a layered solution which is less complex and suitable for most scenarios.",
"SeparateIdentityServerOption": "Separates server side into two applications: First one is for the identity server and the second one is for your server side HTTP API.",
"UseslatestPreVersion": "Uses latest pre-release version",
"ReadTheDocumentation": "<span class=\"text-primary\">Read</span><span class=\"text-success\">The Documentation</span>",
"ReadTheDocumentation": "<span class=\"text-primary\">Read</span><span class=\"text-success\"> The Documentation</span>",
"Documentation": "Documentation",
"GettingStartedTutorial": "Getting Started Tutorial",
"ApplicationDevelopmentTutorial": "Application Development Tutorial",
@ -195,8 +195,41 @@
"MultipleUIOptionsExplanation": "The core framework is designed as UI independent and can work with any type of UI system, while there are multiple pre-built and integrated options are provided out of the box.",
"MultipleDBOptionsExplanation": "The framework can work with any data source, while the following providers are officially developed and supported;",
"SelectLanguage": "Select language",
"LatestArticleOnCommunity": "Latest Article on ABP Community",
"Register": "Register",
"IsDownloadable": "Is downloadable"
"LatestArticleOnCommunity": "Latest Article on ABP Community",
"Register": "Register",
"IsDownloadable": "Is downloadable",
"DatabaseOptions": "Database Options",
"BackToPackagesPage": "Back to Packages Page",
"HowToInstall": "How to Install",
"SeeOnNpm": "See on NPM",
"SeeOnNuget": "See on Nuget",
"MVCGulpCommandExplanation": "If you are using MVC (Razor Pages) UI, then run the \"gulp\" command after the package installation.",
"UsingABPCLI": "Using <a href=\"https://docs.abp.io/en/abp/latest/CLI\">Abp CLI</a>",
"WithoutABPCLI": "Without ABP CLI",
"ABPCLIModuleDependency": "Abp Cli automatically adds module dependency.",
"AddModuleDependency": "Then add module dependency",
"Packages": "Packages",
"NugetPackages": "Nuget Packages",
"NPMPackages": "NPM Packages",
"SeeDocs": "See Docs",
"None": "None",
"Application": "Application",
"Module": "Module",
"PackageName": "Package Name",
"LicenseURL": "License URL",
"License": "License",
"ProjectCreationSuccessMessage": "Your project has been successfully created",
"HowToRunSolution": "How to Run Your Solution?",
"GettingStartedMessage": "See getting started document to learn how to configure and run your solution.",
"WebAppDevTutorial": "Web App Dev Tutorial",
"WebAppDevTutorialMessage": "See web application development tutorial document for a step by step development sample.",
"CommunityArticles": "Community Articles",
"CommunityArticleMessage": "Check ABP Community Platform to read useful articles for ABP Framework.",
"InvestigateSolutionDetails": "Investigate the Solution Details",
"StartupTemplateDocumentationMessage": "See application startup template document to learn the architecture and the structure of your solution.",
"ClientSideDevelopment": "Client Side Development",
"ClientSideDevelopmentDocumentationMessage": "See the {0} document to learn key points for user interface (client side) development.",
"DatabaseProviderDocumentationMessage": "See {0} document to learn key points for database layer development.",
"ABPCommercialExplanationMessage": "ABP Commercial provides premium modules, themes, tooling and support for the ABP Framework."
}
}

36
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/FR.json → abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/fr.json

@ -42,11 +42,11 @@
"BootstrapTagHelpersDynamicForms": "Aide aux balises Bootstrap et formulaires dynamiques",
"BootstrapTagHelpersDynamicFormsExplanation": "Au lieu d'écrire manuellement les détails répétitifs des composants d'amorçage, utilisez les assistants de balises d'ABP pour le simplifier et tirer parti d'intellisense. Créez rapidement des formulaires d'interface utilisateur basés sur un modèle C # à l'aide de l'assistant de balise de formulaire dynamique.",
"HTTPAPIsDynamicProxies": "API HTTP et proxys dynamiques",
"HTTPAPIsDynamicProxiesExplanation": "Exposez automatiquement les services d'application en tant qu'API HTTP de style REST et utilisez-les avec des proxys JavaScript et C # dynamiques.",
"HTTPAPIsDynamicProxiesExplanation": "Exposez automatiquement les services d'application en tant qu'API HTTP de style REST et utilisez-les avec des proxys JavaScript et C# dynamiques.",
"CompleteArchitectureInfo": "Architecture moderne pour créer des solutions logicielles maintenables.",
"DomainDrivenDesignBasedLayeringModelExplanation": "Vous aide à implémenter une architecture en couches basée sur DDD et à créer une base de code maintenable.",
"DomainDrivenDesignBasedLayeringModelExplanationCont": "Fournit des modèles de démarrage, des abstractions, des classes de base, des services, de la documentation et des guides pour vous aider à développer votre application basée sur les modèles et principes DDD.",
"MicroserviceCompatibleModelExplanation": "Le cadre de base et les modules de pré-construction sont conçus avec l'architecture de microservice à l'esprit.",
"MicroserviceCompatibleModelExplanation": "Le framework de base et les modules de pré-construction sont conçus avec l'architecture de microservice à l'esprit.",
"MicroserviceCompatibleModelExplanationCont": "Fournit une infrastructure, des intégrations, des exemples et de la documentation pour mettre en œuvre des solutions de microservices plus facilement, sans apporter de complexité supplémentaire si vous souhaitez une application monolithique.",
"ModularInfo": "ABP fournit un système de modules qui vous permet de développer des modules d'application réutilisables, de les relier aux événements du cycle de vie des applications et d'exprimer les dépendances entre les parties centrales de votre système.",
"PreBuiltModulesThemes": "Modules et thèmes prédéfinis",
@ -64,13 +64,13 @@
"TransactionManagement": "Gestion des transactions",
"AuditLogging": "Journalisation d'audit",
"Caching": "Mise en cache",
"Multitenancy": "Locations multiples",
"Multitenancy": "Multi-souscrivants",
"DataFiltering": "Filtrage des données",
"ConventionOverConfiguration": "Convention sur la configuration",
"ConventionOverConfiguration": "Convention plutôt que configuration",
"ConventionOverConfigurationExplanation": "ABP implémente par défaut des conventions d'application communes avec une configuration minimale ou nulle.",
"ConventionOverConfigurationExplanationList1": "Enregistre automatiquement les services connus pour l'injection de dépendances.",
"ConventionOverConfigurationExplanationList2": "Expose les services d'application en tant qu'API HTTP par des conventions de dénomination.",
"ConventionOverConfigurationExplanationList3": "Crée des proxys client HTTP dynamiques pour C # et JavaScript.",
"ConventionOverConfigurationExplanationList3": "Crée des proxys client HTTP dynamiques pour C# et JavaScript.",
"ConventionOverConfigurationExplanationList4": "Fournit des référentiels par défaut pour vos entités.",
"ConventionOverConfigurationExplanationList5": "Gère l'unité de travail par demande Web ou méthode de service d'application.",
"ConventionOverConfigurationExplanationList6": "Publie des événements de création, de mise à jour et de suppression pour vos entités.",
@ -96,7 +96,7 @@
"BackgroundJobs": "Emplois d'arrière-plan",
"BackgroundJobsExplanation": "Définissez des classes simples pour exécuter les travaux en arrière-plan comme mis en file d'attente. Utilisez le gestionnaire de tâches intégré ou intégrez le vôtre. Les intégrations <a href=\"{0}\"> Hangfire </a> et <a href=\"{1}\"> RabbitMQ </a> sont déjà disponibles.",
"DDDInfrastructure": "Infrastructure DDD",
"DomainDrivenDesignInfrastructure": "Infrastructure de conception pilotée par domaine",
"DomainDrivenDesignInfrastructure": "Infrastructure Domain Driven Design",
"AutoRESTAPIs": "API REST automatiques",
"DynamicClientProxies": "Proxys clients dynamiques",
"DistributedEventBus": "Bus d'événements distribués",
@ -116,12 +116,12 @@
"DependencyInjectionByConventions": "Injection de dépendances par conventions",
"ABPCLIExplanation": "ABP CLI (Command Line Interface) est un outil de ligne de commande pour effectuer certaines opérations courantes pour les solutions basées sur ABP.",
"ModularityExplanation": "ABP fournit une infrastructure complète pour créer vos propres modules d'application qui peuvent avoir des entités, des services, une intégration de base de données, des API, des composants d'interface utilisateur, etc.",
"MultiTenancyExplanation": "Le framework ABP prend non seulement en charge le développement d'applications multi-locataires, mais rend également votre code pratiquement inconscient de la multi-location.",
"MultiTenancyExplanation2": "Peut déterminer automatiquement le locataire actuel, isoler les données de différents locataires les uns des autres.",
"MultiTenancyExplanation3": "Prend en charge une base de données unique, une base de données par locataire et des approches hybrides.",
"MultiTenancyExplanation4": "Vous vous concentrez sur votre code métier et laissez le framework gérer la multi-location en votre nom.",
"BootstrapTagHelpersExplanation": "Au lieu d'écrire manuellement les détails répétitifs des composants d'amorçage, utilisez les aides de balises d'ABP pour le simplifier et tirer parti d'intellisense. Vous pouvez certainement utiliser Bootstrap chaque fois que vous en avez besoin.",
"DynamicFormsExplanation": "Les assistants dynamiques de formulaire et de balise d'entrée peuvent créer le formulaire complet à partir d'une classe C # comme modèle.",
"MultiTenancyExplanation": "Le framework ABP prend non seulement en charge le développement d'applications multi-souscrivants, mais rend également votre code pratiquement inconscient de la multi-location.",
"MultiTenancyExplanation2": "Peut déterminer automatiquement le souscrivant actuel, isoler les données de différents locataires les uns des autres.",
"MultiTenancyExplanation3": "Prend en charge une base de données unique, une base de données par souscrivant et des approches hybrides.",
"MultiTenancyExplanation4": "Vous vous concentrez sur votre code métier et laissez le framework gérer la multi-souscrivants en votre nom.",
"BootstrapTagHelpersExplanation": "Au lieu d'écrire manuellement les détails répétitifs des composants Boostrap, utilisez les aides de balises d'ABP pour le simplifier et tirer parti d'intellisense. Vous pouvez certainement utiliser Bootstrap chaque fois que vous en avez besoin.",
"DynamicFormsExplanation": "Les assistants dynamiques de formulaire et de balise d'entrée peuvent créer le formulaire complet à partir d'une classe C# comme modèle.",
"AuthenticationAuthorizationExplanation": "Options d'authentification et d'autorisation riches intégrées à ASP.NET Core Identity & IdentityServer4. Fournit un système d'autorisation extensible et détaillé.",
"CrossCuttingConcernsExplanation": "Ne vous répétez pas pour mettre en œuvre toutes ces choses courantes encore et encore. Concentrez-vous sur votre code métier et laissez ABP les automatiser par des conventions.",
"DatabaseConnectionTransactionManagement": "Connexion à la base de données et gestion des transactions",
@ -138,9 +138,9 @@
"DataTransferObject": "Objet de transfert de données",
"AggregateRootEntity": "Racine agrégée, entité",
"AutoRESTAPIsExplanation": "ABP peut configurer automatiquement vos services d'application en tant que contrôleurs d'API par convention.",
"DynamicClientProxiesExplanation": "Utilisez facilement vos API à partir de clients JavaScript et C #.",
"DynamicClientProxiesExplanation": "Utilisez facilement vos API à partir de clients JavaScript et C#.",
"DistributedEventBusWithRabbitMQIntegrationExplanation": "Publiez et consommez facilement des événements distribués à l'aide du bus d'événements distribués intégré avec l'intégration RabbitMQ disponible.",
"TestInfrastructureExplanation": "Le cadre a été développé en pensant aux tests unitaires et d'intégration. Vous fournit des classes de base pour vous faciliter la tâche. Les modèles de démarrage sont pré-configurés pour les tests.",
"TestInfrastructureExplanation": "Le framework a été développé en pensant aux tests unitaires et d'intégration. Vous fournit des classes de base pour vous faciliter la tâche. Les modèles de démarrage sont pré-configurés pour les tests.",
"AuditLoggingEntityHistoriesExplanation": "Journalisation d'audit intégrée pour les applications stratégiques. Requête, service, journalisation d'audit au niveau de la méthode et historiques d'entités avec des détails au niveau de la propriété.",
"EmailSMSAbstractionsWithTemplatingSupportExplanation": "Les abstractions IEmailSender et ISmsSender découpent la logique de votre application de l'infrastructure. Le système de modèle de courrier électronique avancé permet de créer et de localiser des modèles de courrier électronique et de les utiliser facilement en cas de besoin.",
"LocalizationExplanation": "Le système de localisation permet de créer des ressources dans des fichiers JSON simples et de les utiliser pour localiser votre interface utilisateur. Il prend en charge des scénarios avancés tels que l'héritage, les extensions et l'intégration JavaScript tout en étant entièrement compatible avec le système de localisation d'AspNet Core.",
@ -156,13 +156,13 @@
"Result": "Résultat",
"SeeTheDocumentForMoreInformation": "Consultez le <a href=\"{1}\"> {0} document </a> pour plus d'informations",
"IndexPageHeroSection": "<span class = \"first-line shine\"> <strong> open source </strong> </span> <span class = \"second-line text-uppercase\"> Application Web <br /> Framework </span> <span class = \"troisième ligne shine2\"> <strong> pour asp.net core </strong> </span>",
"UiFramework": "Cadre de l'interface utilisateur",
"UiFramework": "Framework de l'interface utilisateur",
"EmailAddress": "Adresse e-mail",
"Mobile": "Mobile",
"ReactNative": "Réagir natif",
"Strong": "Fort",
"Complete": "Compléter",
"BasedLayeringModel": "Modèle de couches basé",
"BasedLayeringModel": "Modèle basé sur des couches",
"Microservice": "Microservice",
"Compatible": "Compatible",
"MeeTTheABPCommunityInfo": "Notre mission est de créer un environnement où les développeurs peuvent s'entraider avec des articles, des tutoriels, des études de cas, etc. et rencontrer des personnes partageant les mêmes idées.",
@ -192,8 +192,8 @@
"TextTemplatingExplanation": "La création de modèles de texte est utilisée pour rendre le contenu de manière dynamique en fonction d'un modèle et d'un modèle (un objet de données). Par exemple, vous pouvez l'utiliser pour créer des contenus d'e-mail dynamiques avec un modèle prédéfini.",
"MultipleUIOptions": "Options d'interface utilisateur multiples",
"MultipleDBOptions": "Fournisseurs de bases de données multiples",
"MultipleUIOptionsExplanation": "Le cadre de base est conçu comme indépendant de l'interface utilisateur et peut fonctionner avec tout type de système d'interface utilisateur, tandis que plusieurs options prédéfinies et intégrées sont fournies prêtes à l'emploi.",
"MultipleDBOptionsExplanation": "Le cadre peut fonctionner avec n'importe quelle source de données, tandis que les fournisseurs suivants sont officiellement développés et pris en charge;",
"MultipleUIOptionsExplanation": "Le framework de base est conçu comme indépendant de l'interface utilisateur et peut fonctionner avec tout type de système d'interface utilisateur, tandis que plusieurs options prédéfinies et intégrées sont fournies prêtes à l'emploi.",
"MultipleDBOptionsExplanation": "Le framework peut fonctionner avec n'importe quelle source de données, tandis que les fournisseurs suivants sont officiellement développés et pris en charge;",
"SelectLanguage": "Choisir la langue",
"LatestArticleOnCommunity": "Dernier article sur la communauté ABP",
"Register": "S'inscrire",

202
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/hi.json

@ -0,0 +1,202 @@
{
"culture": "hi",
"texts": {
"GetStarted": "प्रारंभ करें - स्टार्टअप टेम्पलेट",
"Create": "सृजन करना",
"NewProject": "नया काम",
"DirectDownload": "प्रत्यक्षत: डाउनलोड",
"ProjectName": "परियोजना का नाम",
"ProjectType": "प्रोजेक्ट का प्रकार",
"DatabaseProvider": "डेटाबेस प्रदाता",
"DatabaseManagementSystem": "डेटाबेस प्रबंधन प्रणाली",
"NTier": "n स्तरीय",
"IncludeUserInterface": "उपयोगकर्ता इंटरफ़ेस शामिल करें",
"CreateNow": "अब बनाओ",
"TheStartupProject": "स्टार्टअप प्रोजेक्ट",
"Tutorial": "ट्यूटोरियल",
"UsingCLI": "सीएलआई का उपयोग करना",
"SeeDetails": "विवरण देखें",
"AbpShortDescription": "एबीपी फ्रेमवर्क सॉफ्टवेयर विकास सर्वोत्तम प्रथाओं और सम्मेलनों का पालन करके आधुनिक वेब एप्लिकेशन बनाने के लिए एक पूर्ण बुनियादी ढांचा है।",
"SourceCodeUpper": "सोर्स कोड",
"LatestReleaseLogs": "नवीनतम रिलीज़ लॉग",
"Infrastructure": "भूमिकारूप व्यवस्था",
"Architecture": "आर्किटेक्चर",
"Modular": "मॉड्यूलर",
"DontRepeatYourself": "खुद को दोहराएं नहीं",
"DeveloperFocused": "डेवलपर ने फोकस किया",
"FullStackApplicationInfrastructure": "पूर्ण स्टैक अनुप्रयोग अवसंरचना।",
"DomainDrivenDesign": "डोमेन संचालित डिजाइन",
"DomainDrivenDesignExplanation": "डीडीडी पैटर्न और सिद्धांतों के आधार पर डिजाइन और विकसित। आपके आवेदन के लिए एक स्तरित मॉडल प्रदान करता है।",
"Authorization": "प्राधिकार",
"AuthorizationExplanation": "उपयोगकर्ता, भूमिका और ठीक-ठीक अनुमति प्रणाली के साथ उन्नत प्राधिकरण। Microsoft पहचान लाइब्रेरी पर बनाया गया।",
"MultiTenancy": "बहु किरायेदारी",
"MultiTenancyExplanationShort": "सास अनुप्रयोगों आसान बना दिया! यूआई के लिए डेटाबेस से एकीकृत मल्टी-टेनेंसी।",
"CrossCuttingConcerns": "फिल्म आदि में दृश्यों के संपादन संबंधी चिंताएं",
"CrossCuttingConcernsExplanationShort": "प्राधिकरण, सत्यापन, अपवाद से निपटने, कैशिंग, ऑडिट लॉगिंग, लेनदेन प्रबंधन और बहुत कुछ के लिए पूरा बुनियादी ढांचा।",
"BuiltInBundlingMinification": "अंतर्निहित बंडलिंग और न्यूनतम",
"BuiltInBundlingMinificationExplanation": "बंडलिंग और लघुकरण के लिए बाहरी उपकरणों का उपयोग करने की आवश्यकता नहीं है। ABP एक सरल, गतिशील, शक्तिशाली, मॉड्यूलर और बिल्ट-इन तरीका प्रदान करता है!",
"VirtualFileSystem": "वर्चुअल फाइल सिस्टम",
"VirtualFileSystemExplanation": "पैकेज, पुस्तकालयों में विचार, स्क्रिप्ट, शैली, चित्र एम्बेड करें और विभिन्न अनुप्रयोगों में उनका पुन: उपयोग करें।",
"Theming": "थीम",
"ThemingExplanationShort": "बूटस्ट्रैप-आधारित मानक UI थीम का उपयोग करें और अनुकूलित करें या अपना स्वयं का बनाएं।",
"BootstrapTagHelpersDynamicForms": "बूटस्ट्रैप टैग हेल्पर्स और डायनामिक फॉर्म",
"BootstrapTagHelpersDynamicFormsExplanation": "बूटस्ट्रैप घटकों के दोहराए गए विवरणों को मैन्युअल रूप से लिखने के बजाय, इसे सरल बनाने और अंतरंगता का लाभ उठाने के लिए एबीपी के टैग सहायकों का उपयोग करें। डायनामिक फॉर्म टैग हेल्पर का उपयोग करके C # मॉडल के आधार पर जल्दी से UI फॉर्म का निर्माण करें।",
"HTTPAPIsDynamicProxies": "HTTP एपीआई और डायनेमिक प्रॉक्सी",
"HTTPAPIsDynamicProxiesExplanation": "REST शैली HTTP API के रूप में एप्लिकेशन सेवाओं को स्वचालित रूप से उजागर करें, और उन्हें गतिशील जावास्क्रिप्ट और C # प्रॉक्सी के साथ उपभोग करें।",
"CompleteArchitectureInfo": "बनाए रखने योग्य सॉफ़्टवेयर समाधान बनाने के लिए आधुनिक वास्तुकला।",
"DomainDrivenDesignBasedLayeringModelExplanation": "डीडीडी आधारित स्तरित वास्तुकला को लागू करने और बनाए रखने योग्य कोड आधार बनाने में आपकी सहायता करता है।",
"DomainDrivenDesignBasedLayeringModelExplanationCont": "DDD पैटर्न और सिद्धांतों के आधार पर आपके एप्लिकेशन को विकसित करने में मदद करने के लिए स्टार्टअप टेम्प्लेट, सार, आधार कक्षाएं, सेवाएं, प्रलेखन और मार्गदर्शिका प्रदान करता है।",
"MicroserviceCompatibleModelExplanation": "कोर फ्रेमवर्क और प्री-बिल्ड मॉड्यूल को दिमाग में माइक्रोसैस आर्किटेक्चर के साथ डिजाइन किया गया है।",
"MicroserviceCompatibleModelExplanationCont": "यदि आप एक अखंड आवेदन चाहते हैं, तो यह आसान नहीं है कि माइक्रोसॉफ़्ट समाधानों को लागू करने के लिए बुनियादी ढाँचा, एकीकरण, नमूने और प्रलेखन प्रदान करता है।",
"ModularInfo": "एबीपी एक मॉड्यूल प्रणाली प्रदान करता है जो आपको पुन: प्रयोज्य एप्लिकेशन मॉड्यूल विकसित करने, एप्लिकेशन जीवन चक्र घटनाओं में टाई करने और आपके सिस्टम के मुख्य भागों के बीच निर्भरता व्यक्त करने की अनुमति देता है।",
"PreBuiltModulesThemes": "पूर्व निर्मित मॉड्यूल और थीम",
"PreBuiltModulesThemesExplanation": "ओपन सोर्स और वाणिज्यिक मॉड्यूल और थीम आपके व्यावसायिक अनुप्रयोग में उपयोग करने के लिए तैयार हैं।",
"NuGetNPMPackages": "NuGet और NPM पैकेज",
"NuGetNPMPackagesExplanation": "NuGet और NPM पैकेज के रूप में वितरित। स्थापित करने और अपग्रेड करने में आसान।",
"ExtensibleReplaceable": "एक्स्टेंसिबल / बदली",
"ExtensibleReplaceableExplanation": "सभी सेवाओं और मॉड्यूल को ध्यान में रखते हुए डिजाइन किया गया है। आप सेवाओं, पृष्ठों, शैलियों और घटकों को बदल सकते हैं।",
"CrossCuttingConcernsExplanation2": "अपना कोडबेस छोटा रखें ताकि आप उस कोड पर ध्यान केंद्रित कर सकें जो आपके व्यवसाय के लिए विशिष्ट है।",
"CrossCuttingConcernsExplanation3": "कई परियोजनाओं पर सामान्य आवेदन आवश्यकताओं को लागू करने का समय न भेजें।",
"AuthenticationAuthorization": "प्रमाणीकरण प्राधिकरण",
"ExceptionHandling": "संचालन अपवाद",
"Validation": "मान्यकरण",
"DatabaseConnection": "डेटाबेस कनेक्शन",
"TransactionManagement": "आदान - प्रदान प्रबंधन",
"AuditLogging": "ऑडिट लॉगिंग",
"Caching": "कैशिंग",
"Multitenancy": "बहु किरायेदारी",
"DataFiltering": "डेटा फ़िल्टरिंग",
"ConventionOverConfiguration": "कॉन्फिगरेशन पर सम्मलेन",
"ConventionOverConfigurationExplanation": "ABP न्यूनतम या शून्य कॉन्फ़िगरेशन के साथ डिफ़ॉल्ट रूप से सामान्य अनुप्रयोग सम्मेलनों को लागू करता है।",
"ConventionOverConfigurationExplanationList1": "ऑटो निर्भरता इंजेक्शन के लिए सेवाओं को पंजीकृत करता है।",
"ConventionOverConfigurationExplanationList2": "नामकरण सम्मेलनों द्वारा HTTP APIs के रूप में अनुप्रयोग सेवाओं का प्रस्ताव है।",
"ConventionOverConfigurationExplanationList3": "C # और JavaScript के लिए गतिशील HTTP क्लाइंट प्रॉक्सी बनाता है।",
"ConventionOverConfigurationExplanationList4": "आपकी संस्थाओं के लिए डिफ़ॉल्ट रिपॉजिटरी प्रदान करता है।",
"ConventionOverConfigurationExplanationList5": "वेब अनुरोध या एप्लिकेशन सेवा पद्धति के अनुसार कार्य की इकाई का प्रबंधन।",
"ConventionOverConfigurationExplanationList6": "आपकी संस्थाओं के लिए ईवेंट बनाएं, अपडेट करें और हटाएं।",
"BaseClasses": "आधार वर्ग",
"BaseClassesExplanation": "सामान्य अनुप्रयोग पैटर्न के लिए पूर्व-निर्मित आधार कक्षाएं।",
"DeveloperFocusedExplanation": "एबीपी डेवलपर्स के लिए है।",
"DeveloperFocusedExplanationCont": "यह आपके दैनिक सॉफ्टवेयर विकास को सरल बनाने का लक्ष्य रखता है जबकि आपको निम्न स्तर के कोड लिखने से प्रतिबंधित नहीं करता है।",
"SeeAllFeatures": "सभी सुविधाएँ देखें",
"CLI_CommandLineInterface": "सीएलआई (कमांड लाइन इंटरफ़ेस)",
"CLI_CommandLineInterfaceExplanation": "नई परियोजनाओं के निर्माण और नए मॉड्यूल को जोड़ने में मदद करने के लिए एक CLI शामिल है।",
"StartupTemplates": "स्टार्टअप टेम्पलेट",
"StartupTemplatesExplanation": "विभिन्न स्टार्टअप टेम्प्लेट आपके विकास को शुरू करने के लिए पूरी तरह से कॉन्फ़िगर समाधान प्रदान करते हैं।",
"BasedOnFamiliarTools": "परिचित उपकरणों के आधार पर",
"BasedOnFamiliarToolsExplanation": "आप पहले से ही जानते हैं कि लोकप्रिय उपकरणों के साथ निर्मित और एकीकृत। कम सीखने की अवस्था, आसान अनुकूलन, आरामदायक विकास।",
"ORMIndependent": "ORM स्वतंत्र",
"ORMIndependentExplanation": "कोर फ्रेमवर्क ORM / डेटाबेस स्वतंत्र है और किसी भी डेटा स्रोत के साथ काम कर सकता है। इकाई फ्रेमवर्क कोर और MongoDB प्रदाता पहले से ही उपलब्ध हैं।",
"Features": "ABP फ्रेमवर्क सुविधाओं का अन्वेषण करें",
"ABPCLI": "एबीपी सीएलआई",
"Modularity": "प्रतिरूपकता",
"BootstrapTagHelpers": "बूटस्ट्रैप टैग हेल्पर्स",
"DynamicForms": "गतिशील रूप",
"BundlingMinification": "बंडलिंग और न्यूनतमकरण",
"BackgroundJobs": "बैकग्राउंड जॉब्स",
"BackgroundJobsExplanation": "सरल कक्षाओं को परिभाषित करें ताकि पृष्ठभूमि में नौकरियों को निष्पादित किया जा सके। अंतर्निहित नौकरी प्रबंधक का उपयोग करें या अपने स्वयं के एकीकृत करें। <a href=\" जटिलताओं0 Ideal\"> Hangfire </a> और <a href=\" जटिलताओं1 Ideal\"> RabbitMQ </a> एकीकरण पहले से ही उपलब्ध हैं।",
"DDDInfrastructure": "डीडीडी इन्फ्रास्ट्रक्चर",
"DomainDrivenDesignInfrastructure": "डोमेन संचालित डिज़ाइन इन्फ्रास्ट्रक्चर",
"AutoRESTAPIs": "ऑटो रीस्ट एपीआई",
"DynamicClientProxies": "गतिशील ग्राहक प्रॉक्सी",
"DistributedEventBus": "वितरित इवेंट बस",
"DistributedEventBusWithRabbitMQIntegration": "रैबिटएमक्यू इंटीग्रेशन वाली इवेंट बस वितरित की",
"TestInfrastructure": "टेस्ट इन्फ्रास्ट्रक्चर",
"AuditLoggingEntityHistories": "ऑडिट लॉगिंग और इकाई इतिहास",
"ObjectToObjectMapping": "ऑब्जेक्ट टू ऑब्जेक्ट मैपिंग",
"ObjectToObjectMappingExplanation": "AutoMapper एकीकरण के साथ अमूर्तता के लिए <a href=\" जटिलताओं0directory\"> ऑब्जेक्ट मैपिंग पर ऑब्जेक्ट </a>।",
"EmailSMSAbstractions": "ईमेल और एसएमएस अंश",
"EmailSMSAbstractionsWithTemplatingSupport": "ईमेल और एसएमएस अंशांकन समर्थन के साथ",
"Localization": "स्थानीयकरण",
"SettingManagement": "प्रबंधन की स्थापना",
"ExtensionMethods": "एक्सटेंशन के तरीके",
"ExtensionMethodsHelpers": "एक्सटेंशन के तरीके और मददगार",
"AspectOrientedProgramming": "पहलू आधारित प्रोग्रामिंग",
"DependencyInjection": "निर्भरता अन्तःक्षेपण",
"DependencyInjectionByConventions": "सम्मेलनों द्वारा निर्भरता इंजेक्शन",
"ABPCLIExplanation": "ABP CLI (कमांड लाइन इंटरफेस) ABP आधारित समाधानों के लिए कुछ सामान्य ऑपरेशन करने के लिए एक कमांड लाइन टूल है।",
"ModularityExplanation": "ABP अपने स्वयं के एप्लिकेशन मॉड्यूल बनाने के लिए एक पूर्ण बुनियादी ढांचा प्रदान करता है जिनके पास इकाइयाँ, सेवाएँ, डेटाबेस एकीकरण, API, UI घटक और इतने पर हो सकता है।",
"MultiTenancyExplanation": "एबीपी फ्रेमवर्क न केवल बहु-किरायेदार अनुप्रयोगों को विकसित करने का समर्थन करता है, बल्कि आपके कोड को बहु-किरायेदारी से अनजान बनाता है।",
"MultiTenancyExplanation2": "वर्तमान किरायेदार को स्वचालित रूप से निर्धारित कर सकते हैं, एक दूसरे से अलग किरायेदारों के डेटा को अलग कर सकते हैं।",
"MultiTenancyExplanation3": "एकल डेटाबेस, डेटाबेस प्रति किरायेदार और हाइब्रिड दृष्टिकोण का समर्थन करता है।",
"MultiTenancyExplanation4": "आप अपने व्यवसाय कोड पर ध्यान केंद्रित करते हैं और आपकी ओर से मल्टी-टेनेंसी को संभालने की रूपरेखा तैयार करते हैं।",
"BootstrapTagHelpersExplanation": "बूटस्ट्रैप घटकों के दोहराए गए विवरणों को मैन्युअल रूप से लिखने के बजाय, इसे सरल बनाने और अंतरंगता का लाभ उठाने के लिए एबीपी के टैग सहायकों का उपयोग करें। जब भी आपको जरूरत हो आप बूटस्ट्रैप का इस्तेमाल जरूर कर सकते हैं।",
"DynamicFormsExplanation": "डायनामिक फॉर्म और इनपुट टैग हेल्पर्स मॉडल के रूप में C # क्लास से पूरा फॉर्म बना सकते हैं।",
"AuthenticationAuthorizationExplanation": "रिच प्रमाणीकरण और प्राधिकरण विकल्प ASP.NET कोर आइडेंटिटी और आइडेंटिटी सेवर 4 को एकीकृत करता है। एक एक्स्टेंसिबल और विस्तृत अनुमति प्रणाली प्रदान करता है।",
"CrossCuttingConcernsExplanation": "इन सभी सामान्य चीज़ों को बार-बार लागू करने के लिए अपने आप को दोहराएं नहीं। अपने व्यवसाय कोड पर ध्यान दें और एबीपी को उन्हें सम्मेलनों द्वारा स्वचालित करें।",
"DatabaseConnectionTransactionManagement": "डेटाबेस कनेक्शन और लेनदेन प्रबंधन",
"CorrelationIdTracking": "सहसंबंध-आईडी ट्रैकिंग",
"BundlingMinificationExplanation": "ABP एक सरल, गतिशील, शक्तिशाली, मॉड्यूलर और बिल्ट-इन बंडलिंग और मिनिफिकेशन सिस्टम प्रदान करता है।",
"VirtualFileSystemnExplanation": "वर्चुअल फ़ाइल सिस्टम उन फ़ाइलों को प्रबंधित करना संभव बनाता है जो फ़ाइल सिस्टम (डिस्क) पर भौतिक रूप से मौजूद नहीं हैं। यह मुख्य रूप से विधानसभाओं में (js, css, image, cshtml ...) फ़ाइलों को एम्बेड करने और रनटाइम के दौरान भौतिक फ़ाइलों की तरह उपयोग करने के लिए उपयोग किया जाता है।",
"ThemingExplanation": "थिमिंग सिस्टम नवीनतम बूटस्ट्रैप ढांचे के आधार पर, सामान्य आधार पुस्तकालयों और लेआउट के एक सेट को परिभाषित करके आपके एप्लिकेशन और मॉड्यूल विषय को विकसित करने की अनुमति देता है।",
"DomainDrivenDesignInfrastructureExplanation": "डोमेन संचालित डिज़ाइन पैटर्न और सिद्धांतों के आधार पर स्तरित अनुप्रयोगों के निर्माण के लिए एक पूर्ण बुनियादी ढांचा;",
"Specification": "विनिर्देश",
"Repository": "कोष",
"DomainService": "डोमेन सेवा",
"ValueObject": "मान वस्तु",
"ApplicationService": "आवेदन सेवा",
"DataTransferObject": "डेटा ट्रांसफर ऑब्जेक्ट",
"AggregateRootEntity": "एग्रिगेट रूट, एंटिटी",
"AutoRESTAPIsExplanation": "एबीपी कन्वेंशन द्वारा एपीआई कंट्रोलर के रूप में आपकी एप्लिकेशन सेवाओं को स्वचालित रूप से कॉन्फ़िगर कर सकता है।",
"DynamicClientProxiesExplanation": "आसानी से जावास्क्रिप्ट और सी # क्लाइंट से अपने एपीआई का उपभोग करें।",
"DistributedEventBusWithRabbitMQIntegrationExplanation": "बिल्ट-इन डिस्ट्रीब्यूटेड इवेंट बस का उपयोग करके आसानी से प्रकाशित और उपभोग की गई घटनाओं को उपलब्ध करें।",
"TestInfrastructureExplanation": "फ्रेमवर्क को यूनिट और एकीकरण परीक्षण को ध्यान में रखते हुए विकसित किया गया है। यह आसान बनाने के लिए आपको आधार कक्षाएं प्रदान करता है। स्टार्टअप टेम्प्लेट परीक्षण के लिए पूर्व-कॉन्फ़िगर के साथ आते हैं।",
"AuditLoggingEntityHistoriesExplanation": "व्यावसायिक महत्वपूर्ण अनुप्रयोगों के लिए अंतर्निहित ऑडिट लॉगिंग। संपत्ति स्तर के विवरण के साथ अनुरोध, सेवा, विधि स्तर ऑडिट लॉगिंग और इकाई इतिहास।",
"EmailSMSAbstractionsWithTemplatingSupportExplanation": "IEmailSender और ISmsSender अमूर्त बुनियादी ढांचे से आपके आवेदन के तर्क को विघटित करते हैं। उन्नत ईमेल टेम्प्लेट सिस्टम ईमेल टेम्प्लेट बनाने और स्थानीय बनाने और जब भी आवश्यकता हो आसानी से उपयोग करने की अनुमति देता है।",
"LocalizationExplanation": "स्थानीयकरण प्रणाली सादे JSON फ़ाइलों में संसाधन बनाने और उन्हें आपके UI को स्थानीय बनाने के लिए उपयोग करने की अनुमति देती है। यह वंशानुक्रम, एक्सटेंशन और जावास्क्रिप्ट एकीकरण जैसे उन्नत परिदृश्यों का समर्थन करता है, जबकि यह AspNet Core के स्थानीयकरण प्रणाली के साथ पूरी तरह से संगत है।",
"SettingManagementExplanation": "अपने आवेदन के लिए सेटिंग्स को परिभाषित करें और वर्तमान कॉन्फ़िगरेशन, किरायेदार और उपयोगकर्ता के आधार पर रनटाइम पर मान प्राप्त करें।",
"ExtensionMethodsHelpersExplanation": "तुच्छ कोड भागों के लिए भी अपने आप को दोहराएं नहीं। मानक प्रकारों के लिए एक्सटेंशन और हेल्पर्स आपके कोड को बहुत क्लीनर और लिखने में आसान बनाते हैं।",
"AspectOrientedProgrammingExplanation": "गतिशील परदे के पीछे बनाने और पहलू ओरिएंटेड प्रोग्रामिंग को लागू करने के लिए एक आरामदायक बुनियादी ढांचा प्रदान करता है। किसी भी वर्ग को इंटरसेप्ट करें और हर विधि के निष्पादन से पहले और बाद में अपने कोड को निष्पादित करें।",
"DependencyInjectionByConventionsExplanation": "मैन्युअल रूप से निर्भरता इंजेक्शन के लिए अपनी कक्षाओं को पंजीकृत करने की आवश्यकता नहीं है। कन्वेंशन द्वारा स्वचालित रूप से आम सेवा प्रकारों को पंजीकृत करता है। अन्य प्रकार की सेवाओं के लिए, आप इसे आसान और सरल बनाने के लिए इंटरफेस और विशेषताओं का उपयोग कर सकते हैं।",
"DataFilteringExplanation": "उन डेटा फ़िल्टर को परिभाषित और उपयोग करें जो डेटाबेस से क्वेरी करने पर स्वचालित रूप से लागू होते हैं। जब आप साधारण इंटरफ़ेस लागू करते हैं, तो सॉफ्ट डिलीट और मल्टीटेन्नेर फिल्टर बॉक्स से बाहर दिए जाते हैं।",
"PublishEvents": "घटनाक्रम प्रकाशित करें",
"HandleEvents": "घटनाएँ संभालें",
"AndMore": "और अधिक...",
"Code": "कोड",
"Result": "परिणाम",
"SeeTheDocumentForMoreInformation": "अधिक जानकारी के लिए <a href=\"find1 Ideal\"> {0} दस्तावेज़ </a> देखें",
"IndexPageHeroSection": "<स्पैन क्लास = \"फर्स्ट-लाइन शाइन\"> <strong> ओपन सोर्स </ strong> </ span> <स्पैन क्लास = \"सेकंड-लाइन टेक्स्ट-अपरकेस\"> वेब एप्लिकेशन <br /> फ्रेमवर्क </ span> <span class = \"third-line shine2\"> <strong> asp.net core के लिए </ strong> </ span>",
"UiFramework": "यूआई फ्रेमवर्क",
"EmailAddress": "ईमेल पता",
"Mobile": "मोबाइल",
"ReactNative": "प्रतिक्रियाशील मूलनिवासी",
"Strong": "मजबूत",
"Complete": "पूर्ण",
"BasedLayeringModel": "आधारित लेयरिंग मॉडल",
"Microservice": "माइक्रो सर्विस",
"Compatible": "संगत",
"MeeTTheABPCommunityInfo": "हमारा मिशन एक ऐसा वातावरण बनाना है जहां डेवलपर्स लेख, ट्यूटोरियल, केस स्टडी आदि के साथ एक-दूसरे की मदद कर सकें और समान विचारधारा वाले लोगों से मिल सकें।",
"JoinTheABPCommunityInfo": "एक जीवंत समुदाय के साथ शामिल हों और ABP फ्रेमवर्क में योगदानकर्ता बनें!",
"AllArticles": "सभी चीज़ें",
"SubmitYourArticle": "अपना लेख प्रस्तुत करें",
"DynamicClientProxyDocument": "<a href=\" जटिलताओं0 Ideal\"> JavaScript </a> और <a href=\" जटिलताओं1 Ideal\"> C # </a> के लिए डायनेमिक क्लाइंट प्रॉक्सी दस्तावेज़ देखें।",
"EmailSMSAbstractionsDocument": "अधिक जानकारी के लिए <a href=\"lights0 Ideal\"> ईमेल करना </a> और <a href=\" जटिलताओं1 Ideal\"> एसएमएस भेजने </a> के दस्तावेज़ देखें।",
"CreateProjectWizard": "यह विज़ार्ड स्टार्टअप टेम्प्लेट से एक नई परियोजना बनाता है जो आपकी परियोजना को शुरू करने के लिए ठीक से कॉन्फ़िगर किया गया है।",
"TieredOption": "एक ऐसा समाधान तैयार करता है जहाँ वेब और Http API परतें शारीरिक रूप से अलग हो जाती हैं। यदि जांच नहीं की जाती है, तो एक स्तरित समाधान बनाता है जो कम जटिल है और अधिकांश परिदृश्यों के लिए उपयुक्त है।",
"SeparateIdentityServerOption": "सर्वर एप्लिकेशन को दो अनुप्रयोगों में अलग करता है: पहला पहचान सर्वर के लिए है और दूसरा आपके सर्वर साइड HTTP एपीआई के लिए है।",
"UseslatestPreVersion": "नवीनतम पूर्व-रिलीज़ संस्करण का उपयोग करता है",
"ReadTheDocumentation": "<स्पैन क्लास = \"टेक्स्ट-प्राइमरी\"> पढ़ें </ span> <स्पैन क्लास = \"टेक्स्ट-सक्सेस\"> डॉक्यूमेंटेशन </ span>",
"Documentation": "प्रलेखन",
"GettingStartedTutorial": "स्टार्टिंग ट्यूटोरियल",
"ApplicationDevelopmentTutorial": "अनुप्रयोग विकास ट्यूटोरियल",
"TheStartupTemplate": "स्टार्टअप टेम्पलेट",
"InstallABPCLIInfo": "एबीपी सीएलआई एबीपी ढांचे के साथ एक नया समाधान शुरू करने का सबसे तेज़ तरीका है। कमांड लाइन विंडो का उपयोग करके ABP CLI स्थापित करें:",
"DifferentLevelOfNamespaces": "आप विभिन्न स्तरों के नामस्थानों का उपयोग कर सकते हैं; जैसे BookStore, Acme.BookStore या Acme.Retail.BookStore।",
"ABPCLIExamplesInfo": "<strong> नया </ strong> कमांड डेटाबेस प्रदाता के रूप में <strong> एंटिटी फ्रेमवर्क कोर </ strong> के साथ <strong> स्तरित MVC एप्लिकेशन </ strong> बनाता है। हालांकि, इसके पास अतिरिक्त विकल्प हैं। उदाहरण:",
"SeeCliDocumentForMoreInformation": "अधिक विकल्पों के लिए <a href=\"lights0 Ideal\"> ABP CLI दस्तावेज़ </a> देखें या ऊपर \"डायरेक्ट डाउनलोड\" टैब चुनें।",
"Optional": "ऐच्छिक",
"LocalFrameworkRef": "फ्रेमवर्क पैकेज के लिए स्थानीय प्रोजेक्ट संदर्भ रखें।",
"BlobStoring": "ब्लॉब भंडारण",
"BlobStoringExplanation": "BLOB भंडारण प्रणाली BLOBs के साथ काम करने के लिए एक अमूर्तता प्रदान करती है। एबीपी कुछ प्री-बिल्ट स्टोरेज प्रोवाइडर इंटीग्रेशन (एज़्योर, एडब्ल्यूएस, फाइल सिस्टम, डेटाबेस इत्यादि) प्रदान करता है जिन्हें आप आसानी से अपने अनुप्रयोगों में उपयोग कर सकते हैं।",
"TextTemplating": "पाठ अस्थायी",
"TextTemplatingExplanation": "टेम्प्लेट टेम्प्लेटिंग का उपयोग टेम्प्लेट और मॉडल (डेटा ऑब्जेक्ट) के आधार पर सामग्री को गतिशील रूप से प्रस्तुत करने के लिए किया जाता है। उदाहरण के लिए, आप पूर्व-निर्मित टेम्पलेट के साथ गतिशील ईमेल सामग्री बनाने के लिए इसका उपयोग कर सकते हैं।",
"MultipleUIOptions": "एकाधिक यूआई विकल्प",
"MultipleDBOptions": "एकाधिक डेटाबेस प्रदाता",
"MultipleUIOptionsExplanation": "कोर फ्रेमवर्क को यूआई स्वतंत्र के रूप में डिज़ाइन किया गया है और यह किसी भी प्रकार के यूआई सिस्टम के साथ काम कर सकता है, जबकि कई पूर्व-निर्मित और एकीकृत विकल्प बॉक्स से बाहर प्रदान किए गए हैं।",
"MultipleDBOptionsExplanation": "रूपरेखा किसी भी डेटा स्रोत के साथ काम कर सकती है, जबकि निम्नलिखित प्रदाता आधिकारिक रूप से विकसित और समर्थित हैं;",
"SelectLanguage": "भाषा का चयन करें",
"LatestArticleOnCommunity": "एबीपी समुदाय पर नवीनतम लेख",
"Register": "रजिस्टर करें",
"IsDownloadable": "डाउनलोड करने योग्य है"
}
}

202
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/it.json

@ -0,0 +1,202 @@
{
"culture": "it",
"texts": {
"GetStarted": "Inizia - Modelli di avvio",
"Create": "Creare",
"NewProject": "Nuovo progetto",
"DirectDownload": "Download diretto",
"ProjectName": "Nome del progetto",
"ProjectType": "Tipo di progetto",
"DatabaseProvider": "Provider di database",
"DatabaseManagementSystem": "Sistema di gestione del database",
"NTier": "N-Tier",
"IncludeUserInterface": "Includi l'interfaccia utente",
"CreateNow": "Crea adesso",
"TheStartupProject": "Il progetto di avvio",
"Tutorial": "Tutorial",
"UsingCLI": "Utilizzo della CLI",
"SeeDetails": "Vedi i dettagli",
"AbpShortDescription": "ABP Framework è un'infrastruttura completa per creare applicazioni Web moderne seguendo le migliori pratiche e convenzioni di sviluppo software.",
"SourceCodeUpper": "CODICE SORGENTE",
"LatestReleaseLogs": "Ultimi registri di rilascio",
"Infrastructure": "Infrastruttura",
"Architecture": "Architettura",
"Modular": "Modulare",
"DontRepeatYourself": "Non ripetere te stesso",
"DeveloperFocused": "Concentrato sullo sviluppatore",
"FullStackApplicationInfrastructure": "Infrastruttura applicativa full stack.",
"DomainDrivenDesign": "Progettazione basata sul dominio",
"DomainDrivenDesignExplanation": "Progettato e sviluppato sulla base di modelli e principi DDD. Fornisce un modello a più livelli per la tua applicazione.",
"Authorization": "Autorizzazione",
"AuthorizationExplanation": "Autorizzazione avanzata con utente, ruolo e sistema di autorizzazioni granulare. Basato sulla libreria Microsoft Identity.",
"MultiTenancy": "Multi-Tenancy",
"MultiTenancyExplanationShort": "Applicazioni SaaS rese facili! Multi-tenancy integrato dal database all'interfaccia utente.",
"CrossCuttingConcerns": "Preoccupazioni trasversali",
"CrossCuttingConcernsExplanationShort": "Infrastruttura completa per autorizzazione, convalida, gestione delle eccezioni, memorizzazione nella cache, registrazione di audit, gestione delle transazioni e altro ancora.",
"BuiltInBundlingMinification": "Raggruppamento e minimizzazione incorporati",
"BuiltInBundlingMinificationExplanation": "Non è necessario utilizzare strumenti esterni per raggruppare e minimizzare. ABP offre un modo più semplice, dinamico, potente, modulare e integrato!",
"VirtualFileSystem": "File system virtuale",
"VirtualFileSystemExplanation": "Incorpora viste, script, stili, immagini ... in pacchetti / librerie e riutilizzali in diverse applicazioni.",
"Theming": "Theming",
"ThemingExplanationShort": "Usa e personalizza il tema dell'interfaccia utente standard basato su bootstrap o creane uno tuo.",
"BootstrapTagHelpersDynamicForms": "Bootstrap Tag Helpers e moduli dinamici",
"BootstrapTagHelpersDynamicFormsExplanation": "Invece di scrivere manualmente i dettagli ripetuti dei componenti bootstrap, usa gli helper tag di ABP per semplificarlo e sfruttare intellisense. Crea rapidamente moduli dell'interfaccia utente basati su un modello C # utilizzando l'helper tag del modulo dinamico.",
"HTTPAPIsDynamicProxies": "API HTTP e proxy dinamici",
"HTTPAPIsDynamicProxiesExplanation": "Esponi automaticamente i servizi dell'applicazione come API HTTP in stile REST e utilizzali con JavaScript dinamici e proxy C #.",
"CompleteArchitectureInfo": "Architettura moderna per creare soluzioni software manutenibili.",
"DomainDrivenDesignBasedLayeringModelExplanation": "Aiuta a implementare un'architettura a strati basata su DDD e a costruire una base di codice gestibile.",
"DomainDrivenDesignBasedLayeringModelExplanationCont": "Fornisce modelli di avvio, astrazioni, classi di base, servizi, documentazione e guide per aiutarti a sviluppare la tua applicazione in base a modelli e principi DDD.",
"MicroserviceCompatibleModelExplanation": "Il framework principale ei moduli di pre-compilazione sono progettati pensando all'architettura dei microservizi.",
"MicroserviceCompatibleModelExplanationCont": "Fornisce infrastruttura, integrazioni, campioni e documentazione per implementare più facilmente soluzioni di microservizi, mentre non apporta ulteriore complessità se si desidera un'applicazione monolitica.",
"ModularInfo": "ABP fornisce un sistema di moduli che consente di sviluppare moduli applicativi riutilizzabili, collegarsi agli eventi del ciclo di vita dell'applicazione ed esprimere le dipendenze tra le parti principali del sistema.",
"PreBuiltModulesThemes": "Moduli e temi predefiniti",
"PreBuiltModulesThemesExplanation": "Moduli e temi open source e commerciali sono pronti per l'uso nella tua applicazione aziendale.",
"NuGetNPMPackages": "Pacchetti NuGet e NPM",
"NuGetNPMPackagesExplanation": "Distribuito come pacchetti NuGet e NPM. Facile da installare e aggiornare.",
"ExtensibleReplaceable": "Estensibile / sostituibile",
"ExtensibleReplaceableExplanation": "Tutti i servizi e i moduli sono progettati tenendo conto dell'estensibilità. Puoi sostituire servizi, pagine, stili e componenti.",
"CrossCuttingConcernsExplanation2": "Mantieni la tua base di codice più piccola in modo da poter concentrarti sul codice specifico per la tua attività.",
"CrossCuttingConcernsExplanation3": "Non dedicare tempo all'implementazione dei requisiti delle applicazioni comuni su più progetti.",
"AuthenticationAuthorization": "Autenticazione e autorizzazione",
"ExceptionHandling": "La gestione delle eccezioni",
"Validation": "Validazione",
"DatabaseConnection": "Connessione al database",
"TransactionManagement": "Gestione delle transazioni",
"AuditLogging": "Registrazione di audit",
"Caching": "Caching",
"Multitenancy": "Multitenancy",
"DataFiltering": "Filtraggio dei dati",
"ConventionOverConfiguration": "Convenzione sulla configurazione",
"ConventionOverConfigurationExplanation": "ABP implementa convenzioni di applicazioni comuni per impostazione predefinita con una configurazione minima o zero.",
"ConventionOverConfigurationExplanationList1": "Registra automaticamente i servizi noti per l'inserimento delle dipendenze.",
"ConventionOverConfigurationExplanationList2": "Espone i servizi dell'applicazione come API HTTP mediante convenzioni di denominazione.",
"ConventionOverConfigurationExplanationList3": "Crea proxy client HTTP dinamici per C # e JavaScript.",
"ConventionOverConfigurationExplanationList4": "Fornisce archivi predefiniti per le tue entità.",
"ConventionOverConfigurationExplanationList5": "Gestisce l'unità di lavoro per richiesta Web o metodo di servizio dell'applicazione.",
"ConventionOverConfigurationExplanationList6": "Pubblica creare, aggiornare ed eliminare eventi per le tue entità.",
"BaseClasses": "Classi di base",
"BaseClassesExplanation": "Classi di base predefinite per modelli di applicazioni comuni.",
"DeveloperFocusedExplanation": "ABP è per gli sviluppatori.",
"DeveloperFocusedExplanationCont": "Ha lo scopo di semplificare lo sviluppo quotidiano del software senza impedirti di scrivere codice di basso livello.",
"SeeAllFeatures": "Visualizza tutte le funzionalità",
"CLI_CommandLineInterface": "CLI (Command Line Interface)",
"CLI_CommandLineInterfaceExplanation": "Include una CLI per aiutarti ad automatizzare la creazione di nuovi progetti e l'aggiunta di nuovi moduli.",
"StartupTemplates": "Modelli di avvio",
"StartupTemplatesExplanation": "Vari modelli di avvio forniscono una soluzione completamente configurata per avviare rapidamente lo sviluppo.",
"BasedOnFamiliarTools": "Basato su strumenti familiari",
"BasedOnFamiliarToolsExplanation": "Costruito e integrato con strumenti popolari che già conosci. Bassa curva di apprendimento, facile adattamento, sviluppo confortevole.",
"ORMIndependent": "ORM indipendente",
"ORMIndependentExplanation": "Il framework principale è indipendente da ORM / database e può funzionare con qualsiasi origine dati. I provider di Entity Framework Core e MongoDB sono già disponibili.",
"Features": "Esplora le funzionalità di ABP Framework",
"ABPCLI": "ABP CLI",
"Modularity": "Modularità",
"BootstrapTagHelpers": "Bootstrap Tag Helpers",
"DynamicForms": "Forme dinamiche",
"BundlingMinification": "Raggruppamento e minimizzazione",
"BackgroundJobs": "Lavori in background",
"BackgroundJobsExplanation": "Definire classi semplici per eseguire lavori in background come in coda. Usa il gestore dei lavori integrato o integra il tuo. Le integrazioni <a href=\"{0}\"> Hangfire </a> e <a href=\"{1}\"> RabbitMQ </a> sono già disponibili.",
"DDDInfrastructure": "Infrastruttura DDD",
"DomainDrivenDesignInfrastructure": "Infrastruttura di progettazione basata sul dominio",
"AutoRESTAPIs": "API REST automatiche",
"DynamicClientProxies": "Proxy client dinamici",
"DistributedEventBus": "Bus di eventi distribuito",
"DistributedEventBusWithRabbitMQIntegration": "Bus di eventi distribuito con integrazione RabbitMQ",
"TestInfrastructure": "Infrastruttura di test",
"AuditLoggingEntityHistories": "Registrazione di audit e cronologie delle entità",
"ObjectToObjectMapping": "Mappatura da oggetto a oggetto",
"ObjectToObjectMappingExplanation": "Astrazione della <a href=\"{0}\"> mappatura da oggetto a oggetto </a> con integrazione AutoMapper.",
"EmailSMSAbstractions": "Astrazioni tramite e-mail e SMS",
"EmailSMSAbstractionsWithTemplatingSupport": "Astrazioni tramite posta elettronica e SMS con supporto per i modelli",
"Localization": "Localizzazione",
"SettingManagement": "Gestione delle impostazioni",
"ExtensionMethods": "Metodi di estensione",
"ExtensionMethodsHelpers": "Metodi di estensione e aiutanti",
"AspectOrientedProgramming": "Programmazione orientata agli aspetti",
"DependencyInjection": "Iniezione di dipendenza",
"DependencyInjectionByConventions": "Inserimento delle dipendenze mediante convenzioni",
"ABPCLIExplanation": "ABP CLI (Command Line Interface) è uno strumento a riga di comando per eseguire alcune operazioni comuni per soluzioni basate su ABP.",
"ModularityExplanation": "ABP fornisce un'infrastruttura completa per creare i propri moduli applicativi che possono avere entità, servizi, integrazione di database, API, componenti dell'interfaccia utente e così via.",
"MultiTenancyExplanation": "Il framework ABP non solo supporta lo sviluppo di applicazioni multi-tenant, ma rende anche il tuo codice per lo più inconsapevole del multi-tenancy.",
"MultiTenancyExplanation2": "Può determinare automaticamente l'inquilino corrente, isolare i dati di diversi inquilini l'uno dall'altro.",
"MultiTenancyExplanation3": "Supporta database singolo, database per tenant e approcci ibridi.",
"MultiTenancyExplanation4": "Ti concentri sul tuo codice aziendale e lasci che il framework gestisca il multi-tenancy per tuo conto.",
"BootstrapTagHelpersExplanation": "Invece di scrivere manualmente i dettagli ripetuti dei componenti bootstrap, usa gli helper tag di ABP per semplificarlo e sfruttare intellisense. Puoi sicuramente usare Bootstrap ogni volta che ne hai bisogno.",
"DynamicFormsExplanation": "Gli helper dei moduli dinamici e dei tag di input possono creare il modulo completo da una classe C # come modello.",
"AuthenticationAuthorizationExplanation": "Ricche opzioni di autenticazione e autorizzazione integrate in ASP.NET Core Identity & IdentityServer4. Fornisce un sistema di autorizzazione estensibile e dettagliato.",
"CrossCuttingConcernsExplanation": "Non ripetere te stesso per implementare tutte queste cose comuni ancora e ancora. Concentrati sul tuo codice aziendale e lascia che ABP li automatizzi secondo le convenzioni.",
"DatabaseConnectionTransactionManagement": "Connessione al database e gestione delle transazioni",
"CorrelationIdTracking": "Monitoraggio dell'ID di correlazione",
"BundlingMinificationExplanation": "ABP offre un sistema di raggruppamento e minimizzazione semplice, dinamico, potente, modulare e integrato.",
"VirtualFileSystemnExplanation": "Il Virtual File System consente di gestire file che non esistono fisicamente nel file system (disco). Viene utilizzato principalmente per incorporare file (js, css, immagine, cshtml ...) negli assembly e utilizzarli come file fisici in runtime.",
"ThemingExplanation": "Il sistema di temi consente di sviluppare applicazioni e moduli indipendentemente dal tema definendo un set di librerie e layout di base comuni, basati sul più recente framework Bootstrap.",
"DomainDrivenDesignInfrastructureExplanation": "Un'infrastruttura completa per creare applicazioni a più livelli basate sui modelli e sui principi di Domain Driven Design;",
"Specification": "Specifica",
"Repository": "Repository",
"DomainService": "Servizio di dominio",
"ValueObject": "Oggetto valore",
"ApplicationService": "Servizio applicazioni",
"DataTransferObject": "Oggetto trasferimento dati",
"AggregateRootEntity": "Radice aggregata, entità",
"AutoRESTAPIsExplanation": "ABP può configurare automaticamente i servizi dell'applicazione come controller API per convenzione.",
"DynamicClientProxiesExplanation": "Utilizza facilmente le tue API da client JavaScript e C #.",
"DistributedEventBusWithRabbitMQIntegrationExplanation": "Pubblica e utilizza facilmente eventi distribuiti utilizzando Distributed Event Bus integrato con integrazione RabbitMQ disponibile.",
"TestInfrastructureExplanation": "Il framework è stato sviluppato in mente per test di unità e integrazione. Fornisce classi di base per renderlo più facile. I modelli di avvio vengono forniti preconfigurati per i test.",
"AuditLoggingEntityHistoriesExplanation": "Registrazione di audit integrata per applicazioni business-critical. Richiesta, servizio, registrazione di controllo a livello di metodo e cronologie di entità con dettagli a livello di proprietà.",
"EmailSMSAbstractionsWithTemplatingSupportExplanation": "Le astrazioni di IEmailSender e ISmsSender separano la logica dell'applicazione dall'infrastruttura. Il sistema avanzato di modelli di posta elettronica consente di creare e localizzare modelli di posta elettronica e di utilizzarli facilmente quando necessario.",
"LocalizationExplanation": "Il sistema di localizzazione consente di creare risorse in semplici file JSON e utilizzarli per localizzare la tua interfaccia utente. Supporta scenari avanzati come ereditarietà, estensioni e integrazione JavaScript mentre è completamente compatibile con il sistema di localizzazione di AspNet Core.",
"SettingManagementExplanation": "Definisci le impostazioni per la tua applicazione e ottieni i valori in fase di esecuzione in base alla configurazione, al tenant e all'utente correnti.",
"ExtensionMethodsHelpersExplanation": "Non ripeterti nemmeno per parti di codice banali. Le estensioni e gli helper per i tipi standard rendono il codice molto più pulito e facile da scrivere.",
"AspectOrientedProgrammingExplanation": "Fornisce una comoda infrastruttura per creare proxy dinamici e implementare la programmazione orientata agli aspetti. Intercetta qualsiasi classe ed esegui il codice prima e dopo l'esecuzione di ogni metodo.",
"DependencyInjectionByConventionsExplanation": "Non è necessario registrare manualmente le classi per l'inserimento delle dipendenze. Registra automaticamente i tipi di servizio comuni per convenzione. Per altri tipi di servizi, puoi utilizzare interfacce e attributi per renderlo più semplice e sul posto.",
"DataFilteringExplanation": "Definisci e utilizza i filtri di dati che vengono applicati automaticamente quando esegui query sulle entità dal database. Quando si implementano interfacce semplici, vengono forniti filtri Soft Delete e MultiTenant.",
"PublishEvents": "Pubblica eventi",
"HandleEvents": "Gestisci eventi",
"AndMore": "e altro ancora ...",
"Code": "Codice",
"Result": "Risultato",
"SeeTheDocumentForMoreInformation": "Consulta il <a href=\"{1}\"> {0} documento </a> per ulteriori informazioni",
"IndexPageHeroSection": "<span class = \"first-line shine\"> <strong> open source </strong> </span> <span class = \"second-line text-uppercase\"> Framework <br /> applicazione web </span> <span class = \"third-line shine2\"> <strong> per asp.net core </strong> </span>",
"UiFramework": "Framework dell'interfaccia utente",
"EmailAddress": "Indirizzo e-mail",
"Mobile": "Mobile",
"ReactNative": "React Native",
"Strong": "Forte",
"Complete": "Completare",
"BasedLayeringModel": "Modello di stratificazione basato",
"Microservice": "Microservizio",
"Compatible": "Compatibile",
"MeeTTheABPCommunityInfo": "La nostra missione è creare un ambiente in cui gli sviluppatori possano aiutarsi a vicenda con articoli, tutorial, casi di studio, ecc. E incontrare persone che la pensano allo stesso modo.",
"JoinTheABPCommunityInfo": "Fatti coinvolgere da una vivace comunità e diventa un collaboratore di ABP Framework!",
"AllArticles": "Tutti gli articoli",
"SubmitYourArticle": "Invia il tuo articolo",
"DynamicClientProxyDocument": "Consulta la documentazione relativa al proxy del client dinamico per <a href=\"{0}\"> JavaScript </a> e <a href=\"{1}\"> C # </a>.",
"EmailSMSAbstractionsDocument": "Per ulteriori informazioni, consulta i documenti di <a href=\"{0}\"> invio di email </a> e <a href=\"{1}\"> invio di SMS </a>.",
"CreateProjectWizard": "Questa procedura guidata crea un nuovo progetto dal modello di avvio che è configurato correttamente per avviare rapidamente il progetto.",
"TieredOption": "Crea una soluzione a più livelli in cui i livelli API Web e Http sono fisicamente separati. Se non selezionata, crea una soluzione a più livelli meno complessa e adatta alla maggior parte degli scenari.",
"SeparateIdentityServerOption": "Separa il lato server in due applicazioni: la prima è per il server di identità e la seconda è per l'API HTTP lato server.",
"UseslatestPreVersion": "Utilizza l'ultima versione pre-rilascio",
"ReadTheDocumentation": "<span class = \"text-primary\"> Leggi </span> <span class = \"text-success\"> La documentazione </span>",
"Documentation": "Documentazione",
"GettingStartedTutorial": "Tutorial introduttivo",
"ApplicationDevelopmentTutorial": "Tutorial sullo sviluppo di applicazioni",
"TheStartupTemplate": "Il modello di avvio",
"InstallABPCLIInfo": "ABP CLI è il modo più veloce per avviare una nuova soluzione con il framework ABP. Installa ABP CLI utilizzando una finestra della riga di comando:",
"DifferentLevelOfNamespaces": "È possibile utilizzare diversi livelli di spazi dei nomi; per esempio. BookStore, Acme.BookStore o Acme.Retail.BookStore.",
"ABPCLIExamplesInfo": "Il comando <strong> nuovo </strong> crea un '<strong> applicazione MVC a più livelli </strong> con <strong> Entity Framework Core </strong> come provider di database. Tuttavia, ha opzioni aggiuntive. Esempi:",
"SeeCliDocumentForMoreInformation": "Consulta il <a href=\"{0}\"> documento ABP CLI </a> per ulteriori opzioni o seleziona la scheda \"Download diretto\" in alto.",
"Optional": "Opzionale",
"LocalFrameworkRef": "Mantieni il riferimento al progetto locale per i pacchetti del framework.",
"BlobStoring": "Archiviazione BLOB",
"BlobStoringExplanation": "Il sistema di archiviazione BLOB fornisce un'astrazione per lavorare con i BLOB. ABP fornisce alcune integrazioni di provider di archiviazione predefinite (Azure, AWS, File System, Database e così via) che puoi facilmente utilizzare nelle tue applicazioni.",
"TextTemplating": "Modelli di testo",
"TextTemplatingExplanation": "La creazione di modelli di testo viene utilizzata per eseguire il rendering dinamico dei contenuti in base a un modello e un modello (un oggetto dati). Ad esempio, puoi utilizzarlo per creare contenuti di posta elettronica dinamici con un modello predefinito.",
"MultipleUIOptions": "Molteplici opzioni di interfaccia utente",
"MultipleDBOptions": "Più fornitori di database",
"MultipleUIOptionsExplanation": "Il framework principale è progettato come indipendente dall'interfaccia utente e può funzionare con qualsiasi tipo di sistema di interfaccia utente, mentre sono disponibili più opzioni predefinite e integrate.",
"MultipleDBOptionsExplanation": "Il framework può funzionare con qualsiasi fonte di dati, mentre i seguenti provider sono ufficialmente sviluppati e supportati;",
"SelectLanguage": "Seleziona la lingua",
"LatestArticleOnCommunity": "Ultimo articolo sulla comunità ABP",
"Register": "Registrati",
"IsDownloadable": "È scaricabile"
}
}

37
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/tr.json

@ -157,6 +157,41 @@
"EmailAddress": "E-Posta Adresi",
"Mobile": "Mobil",
"ReactNative": "React Native",
"SelectLanguage": "Dil seçin"
"SelectLanguage": "Dil seçin",
"Register": "Kayıt ol",
"IsDownloadable": "Yüklenebilir mi",
"DatabaseOptions": "Veritabanı Seçenekleri",
"BackToPackagesPage": "Paketler sayfasına geri dön",
"HowToInstall": "Nasıl Indirilir",
"SeeOnNpm": "NPM'de görüntüle",
"SeeOnNuget": "Nuget'de görüntüle",
"MVCGulpCommandExplanation": "Arayüz uygulaması olarak MVC (Razor Page) kullanıyorsanız, paketlerin indirilmesinden sonra \"gulp\" komutunu çalıştırın.",
"UsingABPCLI": "<a href=\"https://docs.abp.io/en/abp/latest/CLI\">ABP CLI </a>Kullanımı",
"WithoutABPCLI": "ABP CLI kullanmadan",
"ABPCLIModuleDependency": "ABP CLI otomatik olarak modül bağımlılıklarını ekler.",
"AddModuleDependency": "Modül bağımlılıklarını ekleyin",
"Packages": "Paketler",
"NugetPackages": "Nuget Paketleri",
"NPMPackages": "NPM Paketleri",
"SeeDocs": "Dökümanı Görüntüle",
"None": "Hiç",
"Application": "Uygulama",
"Module": "Modül",
"PackageName": "Paket adı",
"LicenseURL": "Lisans Linki",
"License": "Lisans",
"ProjectCreationSuccessMessage": "Projeniz başarıyla oluşturulmuştur",
"HowToRunSolution": "Uygulamayı Nasıl Çalıştırabiliriz?",
"GettingStartedMessage": "Uygulamanızı nasıl yapılandıracağınızı ve çalıştıracağınızı öğrenmek için başlanıç dökümanına bakınız.",
"WebAppDevTutorial": "Web Uygulaması Geliştirme Öğreticisi",
"WebAppDevTutorialMessage": "Adım adım web uygulaması geliştirme örneği için web uygulaması geliştirme öğreticisine bakınız.",
"CommunityArticles": "Topluluk Makaleleri",
"CommunityArticleMessage": "ABP Framework ile ilgili yararlı makaleleri okumak için ABP Topluluk Platformu'na bakın.",
"InvestigateSolutionDetails": "Çözüm detaylarını inceleyin",
"StartupTemplateDocumentationMessage": "Çözümünüzün mimarisini ve yapısını öğrenmek için uygulama başlangıç şablonu belgesine bakın.",
"ClientSideDevelopment": "İstemci Tarafı Geliştirme",
"ClientSideDevelopmentDocumentationMessage": "Kullanıcı arayüzü (istemci tarafı) geliştirmeyle ilgili temel noktaları öğrenmek için {0} belgesine bakın.",
"DatabaseProviderDocumentationMessage": "Veritabanı katmanı geliştirmeyle ilgili temel noktaları öğrenmek için {0} belgesine bakın.",
"ABPCommercialExplanationMessage": "ABP Commercial, ABP Framework için premium modüller, temalar, araçlar ve destek sağlar."
}
}

35
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hans.json

@ -196,6 +196,39 @@
"MultipleDBOptionsExplanation": "该框架可以使用任何数据源,并且以下提供程序已得到正式开发和支持;",
"SelectLanguage": "选择语言",
"LatestArticleOnCommunity": "关于ABP社区的最新文章",
"Register": "寄存器"
"Register": "注册",
"DatabaseOptions": "数据库选项",
"BackToPackagesPage": "回到包页面",
"HowToInstall": "如何安装",
"SeeOnNpm": "在NPM查看",
"SeeOnNuget": "在Nuget查看",
"MVCGulpCommandExplanation": "如果你使用MVC (Razor Pages) UI,在包安装完成后运行 \"gulp\" 命令.",
"UsingABPCLI": "使用 <a href=\"https://docs.abp.io/en/abp/latest/CLI\">Abp CLI</a>",
"WithoutABPCLI": "不使用 ABP CLI",
"ABPCLIModuleDependency": "ABP CLI会自动添加模块依赖.",
"AddModuleDependency": "然后添加模块依赖",
"Packages": "包",
"NugetPackages": "Nuget包",
"NPMPackages": "NPM包",
"SeeDocs": "查看文档",
"None": "空",
"Application": "应用程序",
"Module": "模块",
"PackageName": "包名称",
"LicenseURL": "许可URL",
"License": "许可",
"ProjectCreationSuccessMessage": "你的项目创建成功",
"HowToRunSolution": "如何运行你的解决方案n?",
"GettingStartedMessage": "查看入门文档了解如何配置和运行你的解决方案.",
"WebAppDevTutorial": "Web App 开发教程",
"WebAppDevTutorialMessage": "查看web应用程序开发教程文档,一步一步的开发示例.",
"CommunityArticles": "社区文档",
"CommunityArticleMessage": "查看ABP社区平台来阅读关于ABP框架的文档.",
"InvestigateSolutionDetails": "调查解决方案细节",
"StartupTemplateDocumentationMessage": "查看应用程序启动模板文档来学习你的解决方案架构和结构.",
"ClientSideDevelopment": "客户端部分开发",
"ClientSideDevelopmentDocumentationMessage": "查看{0}文档来学习用户页面(客户端部分)开发.",
"DatabaseProviderDocumentationMessage": "查看{0}文档来学习用数据库层开发.",
"ABPCommercialExplanationMessage": "ABP商业版为ABP框架提供了高级模块,主题,工具和支持."
}
}

37
abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/zh-Hant.json

@ -155,6 +155,41 @@
"IndexPageHeroSection": "<span class=\"third-line shine2\"><strong>asp.net core的</strong></span><span class=\"first-line shine\"><strong>開源</strong></span><span class=\"second-line text-uppercase\">Web應用程式<br />框架 </span>",
"UiFramework": "UI框架",
"EmailAddress": "電子信箱地址",
"SelectLanguage": "选择语言"
"SelectLanguage": "选择语言",
"LatestArticleOnCommunity": "關於ABP社區的最新文章",
"Register": "註冊",
"DatabaseOptions": "數據庫選項",
"BackToPackagesPage": "回到包頁面",
"HowToInstall": "如何安裝",
"SeeOnNpm": "在NPM查看",
"SeeOnNuget": "在Nuget查看",
"MVCGulpCommandExplanation": "如果你使用MVC (Razor Pages) UI,在包安裝完成後運行 \"gulp\" 命令.",
"UsingABPCLI": "使用 <a href=\"https://docs.abp.io/en/abp/latest/CLI\">Abp CLI</a>",
"WithoutABPCLI": "不使用 ABP CLI",
"ABPCLIModuleDependency": "ABP CLI會自動添加模塊依賴.",
"AddModuleDependency": "然後添加模塊依賴",
"Packages": "包",
"NugetPackages": "Nuget包",
"NPMPackages": "NPM包",
"SeeDocs": "查看文檔",
"None": "空",
"Application": "應用程序",
"Module": "模塊",
"PackageName": "包名稱",
"LicenseURL": "許可URL",
"License": "許可",
"ProjectCreationSuccessMessage": "你的項目創建成功",
"HowToRunSolution": "如何運行你的解決方案?",
"GettingStartedMessage": "查看入門文檔了解如何配置和運行你的解決方案.",
"WebAppDevTutorial": "Web App 開發教程",
"WebAppDevTutorialMessage": "查看web應用程序開發教程文檔,一步一步的開發示例.",
"CommunityArticles": "社區文檔",
"CommunityArticleMessage": "查看ABP社區平臺來閱讀關於ABP框架的文檔.",
"InvestigateSolutionDetails": "調查解決方案細節",
"StartupTemplateDocumentationMessage": "查看應用程序啟動模板文檔來學習你的解決方案架構和結構.",
"ClientSideDevelopment": "客戶端部分開發",
"ClientSideDevelopmentDocumentationMessage": "查看{0}文檔來學習用戶頁面(客戶端部分)開發.",
"DatabaseProviderDocumentationMessage": "查看{0}文檔來學習用數據庫層開發.",
"ABPCommercialExplanationMessage": "ABP商業版為ABP框架提供了高級模塊,主題,工具和支持."
}
}

36
docs/en/Authorization.md

@ -265,37 +265,7 @@ myGroup.AddPermission("Book_Creation")
#### Creating a Custom Permission Dependency
Any class implements the `IPermissionStateProvider` interface can disable a permission based on a custom condition.
**Example:**
````csharp
public class MyCustomPermissionStateProvider : IPermissionStateProvider
{
public Task<bool> IsEnabledAsync(PermissionStateContext context)
{
// You can implement your own logic here.
return Task.FromResult(
context.Permission.Name.StartsWith("Acme.BookStore"));
}
}
````
Then you can add `MyCustomPermissionStateProvider` to any permission definition, using the `AddStateProviders` extension method:
````csharp
myGroup.AddPermission("Book_Creation")
.AddStateProviders(new MyCustomPermissionStateProvider());
````
Or you can globally add your custom provider to make it working for all permissions:
````csharp
Configure<AbpPermissionOptions>(options =>
{
options.GlobalStateProviders.Add<MyCustomPermissionStateProvider>();
});
````
`PermissionDefinition` supports state check, Please refer to [Simple State Checker's documentation](SimpleStateChecker.md)
## IAuthorizationService
@ -473,7 +443,7 @@ public class SocialSecurityNumberClaimsPrincipalContributor : IAbpClaimsPrincipa
var socialSecurityNumber = await userService.GetSocialSecurityNumberAsync(userId.Value);
if (socialSecurityNumber != null)
{
identity.AddOrReplace(new Claim("SocialSecurityNumber", socialSecurityNumber));
identity.AddClaim(new Claim("SocialSecurityNumber", socialSecurityNumber));
}
}
}
@ -484,4 +454,4 @@ public class SocialSecurityNumberClaimsPrincipalContributor : IAbpClaimsPrincipa
* [Permission Management Module](Modules/Permission-Management.md)
* [ASP.NET Core MVC / Razor Pages JavaScript Auth API](UI/AspNetCore/JavaScript-API/Auth.md)
* [Permission Management in Angular UI](UI/Angular/Permission-Management.md)
* [Permission Management in Angular UI](UI/Angular/Permission-Management.md)

86
docs/en/Blog-Posts/2021-04-05 CmsKit/POST.md

@ -1,3 +1,85 @@
# Introducing the CMS Kit Module for the ABP Framework
# Introducing The CMS-Kit Module
One of the most exciting announcements of the ABP Framework 4.3 release was releasing the initial version of the CMS Kit module. The team had been working hard to release the initial version for months. For those who didn't read the [ABP Framework 4.3 release post](https://blog.abp.io/abp/ABP-Framework-4.3-RC-Has-Been-Published), the CMS Kit module adds CMS(Content Management System) capabilities to your application. Some of the CMS Kit features are open source and free, while others are only included in the Pro version included in the ABP Commercial.
List of free and pro features in the CMS Kit module;
- Free
- Page System: Provides a **page** management system to manage dynamic pages.
- Blog System: Provides a **blog** system to create blogs and publish posts.
- Tag System: Provides a **tag** system to tag any kind of resources, such as blog posts.
- Comment System: Provides a **comment** system to add comments feature to any type of resource, such as blog posts, products, etc.
- Reaction System: Provides a **reaction** system to add reactions to any type of resource, such as blog posts or comments, etc.
- Rating System: Provides a **rating** system to add ratings feature to any type of resource, such as comments, products, etc.
- Pro
- Newsletter System: Provides a **newsletter** system to allow users to subscribe to newsletters.
- Contact Form System: Provides a **contact form** system to allow users to write a message to you on public websites.
## Installation
CMS Kit module comes installed with commercial templates when you create the solution with the public website option. You can run the following command and create a solution with a public website.
```bash
abp new Acme --with-public-website
```
If you're using the open-source version or adding the module to an existing project, the ABP CLI allows adding a module to a solution using `add-module` command.
You can run the following command to add the module to an open-source solution.
```bash
abp add-module Volo.CmsKit
```
If you're a commercial user, run the following command to install the pro version of the module.
```bash
abp add-module Volo.CmsKit.Pro
```
After adding the module to the solution, you need to configure features. The CMS Kit module uses the [global feature](https://docs.abp.io/en/abp/latest/Global-Features) system for all features. To enable the features in the CMS Kit module, open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project and place the following code to the `Configure` method to enable all features in the CMS kit module.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.EnableAll();
});
```
If you're a commercial user, you need to enable CMS Kit Pro features as well.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKitPro(cmsKitPro =>
{
cmsKitPro.EnableAll();
});
```
> If you are using Entity Framework Core, do not forget to add a new migration and update your database after configuring the features.
We've completed the installation step. Run the project, and you will see the CMS menu item in the menu.
![cms-kit-menu](cms-kit-menu.png)
> CMS Kit's initial release only supports the MVC UI. We're planning to add Angular and Blazor support in upcoming releases.
## Package Structures
CMS Kit is designed for various usage scenarios. When you visit [nuget.org](https://www.nuget.org/packages?q=Volo.CmsKit) or [abp.io](https://abp.io/packages?moduleName=Volo.CmsKit.Pro) to see the available CMS Kit packages, you will find out that packages have admin, public and unified versions.
For example,
- `Volo.CmsKit.Admin.Application`: Contains functionality required by admin websites.
- `Volo.CmsKit.Public.Application`: Contains functionality required by public websites.
- `Volo.CmsKit.Application` : Unified package dependent on both public and admin packages.
If you want to separate admin and public website codes, you can use the admin and public packages. However, if you want to keep admin and public website codes in a shared project, you can use the unified packages to include admin and public packages.
> It is recommended to use the unified packages instead of adding both admin and public packages.
We've covered the initial features, installation and configuration steps in this post. You can read the [open-source](https://docs.abp.io/en/abp/latest/Modules/Cms-Kit) and [commercial](https://docs.abp.io/en/commercial/latest/modules/CMS-Kit) documentation to get further information about features and the CMS Kit module. CMS Kit's initial version contains lots of features that you can easily integrate and use in your applications. We're planning to improve the existing features, fixing bugs and adding new features in upcoming releases. If you want to give some feedback or have a feature request, please reach out to us from [GitHub](https://github.com/abpframework/abp) or [support.abp.io](https://support.abp.io). We will be happy to plan the CMS Kit module's future together.
Thank you!
TODO...

BIN
docs/en/Blog-Posts/2021-04-05 CmsKit/cms-kit-menu.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 KiB

22
docs/en/Community-Articles/2021-03-12-Simple-SignalR-Notification/POST.md

@ -38,8 +38,19 @@ Open `YourProjectWebModule.cs` class and add the following line to the `PreConfi
#### 2- Add Client Scripts
2- In the `ConfigureServices` method of your web module add the following code to add the `signalr.js` and `notification-hub.js`. We'll add these packages in the next steps.
2- In the `ConfigureServices` method of your web module add the following code to add the `signalr.js` and `notification-hub.js`. We'll add these packages in the next steps. If you are not using Lepton Theme you can add the files to `StandardBundles.Scripts.Global`.
```csharp
Configure<AbpBundlingOptions>(options =>
{
options
.ScriptBundles
.Get(LeptonThemeBundles.Scripts.Global) //or -> Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Bundling.StandardBundles.Scripts.Global
.AddFiles("/libs/signalr/signalr.js")
.AddFiles("/Pages/notification-hub.js");
});
```
![Script Bundles](add-script-bundles.jpg)
#### 3- Add Hub Endpoint
@ -71,6 +82,11 @@ Add the following JavaScript class into your `Pages` folder in your Web project.
Add [Microsoft.SignalR](https://www.npmjs.com/package/@microsoft/signalr) JavaScript package to the `package.json` which is located in your root folder of the Web project. After you add it, run `yarn` command in your Web directory to be able to install this package.
You can install the latest version (3.1.13 will be old)
```
"@microsoft/signalr": "^3.1.13"
````
![Add SignalR package](signalr-package.jpg)
#### 3- Add resource Mapping
@ -94,6 +110,8 @@ To do this replace the `Index.cshtml` and `Index.cshtml.cs` with the followings:
#### 5- See it in action
Run your web project and in the Index page you'll see a button named as "Get Notification". Click the button and see the notification that comes from SignalR. This is a basic usage of SignalR notification system. You can implement it according to your own requirements.
Run your web project and in the Index page you'll Server Time will be updated every second. The time information comes from backend via SignalR.
This is a very basic usage of SignalR notification system.
You can implement your own SignalR notification system based on your requirements.
![Result](result.jpg)

61
docs/en/Entity-Framework-Core-Migrations.md

@ -881,6 +881,67 @@ We had a reference to the `Acme.BookStore.EntityFrameworkCore.DbMigrationsForSec
You can run the `.DbMigrator` application to migrate & seed the databases. To test, you can delete both databases and run the `.DbMigrator` application again to see if it creates both of the databases.
## Separating Host & Tenant Database Schemas
In a multi-tenant solution, you may want to separate your database schemas, so host-related tables don't locate in the tenant databases when tenants have separate databases.
Some pre-built ABP modules are related only with the host side, like the [Tenant Management](Modules/Tenant-Management.md) module. So, in the tenant `DbContext` class you don't call `modelBuilder.ConfigureTenantManagement()` and that's all.
However, some modules, like the [Identity](Modules/Identity.md) module, is both used in host and tenant sides. It stores tenant users in the tenant database and host users in the host database. However, it stores some entities, like `IdentityClaimType`, only in the host side. In this case, you don't want to add these tables in the tenant database, even if they are not used and will always be empty.
ABP provides a simple way to set the multi-tenancy side for a `DbContext`, so the modules can check it and decide to map tables to the database, or not.
````csharp
public class MyTenantDbContext : AbpDbContext<MyTenantDbContext>
{
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.SetMultiTenancySide(MultiTenancySides.Tenant);
base.OnModelCreating(modelBuilder);
modelBuilder.ConfigureIdentity();
modelBuilder.ConfigureFeatureManagement();
modelBuilder.ConfigureAuditLogging();
}
}
````
The first line in the `OnModelCreating` sets multi-tenancy side to `Tenant`. For this example, Feature management tables are not created (because all the tables are host-specific), so calling `modelBuilder.ConfigureFeatureManagement()` has no effect. Also, `ConfigureIdentity()` call respects to the multi-tenancy side and doesn't create host-specific tables for this database.
`SetMultiTenancySide` can get the following values:
* `MultiTenancySides.Both` (**default value**): This `DbContext` (and the related database) is shared by host and tenant.
* `MultiTenancySides.Host`: This `DbContext` (and the related database) is used only by the host side.
* `MultiTenancySides.Tenant`: This `DbContext` (and the related database) is only for tenants.
If you create a re-usable application module or want to check that value in your application code, you can use `modelBuilder.GetMultiTenancySide()` to check the current side.
````csharp
var side = modelBuilder.GetMultiTenancySide();
if (!side.HasFlag(MultiTenancySides.Host))
{
...
}
````
Or practically you can use one of the shortcut extension methods:
````csharp
if (modelBuilder.IsTenantOnlyDatabase())
{
...
}
````
There are four methods to check the current side:
* `IsHostDatabase()`: Returns `true` if you should create host-related tables. It is equivalent of checking `modelBuilder.GetMultiTenancySide().HasFlag(MultiTenancySides.Host)`.
* `IsHostOnlyDatabase()`: Returns `true` if you should only create host-related tables, but should not create tenant-related tables. It is equivalent of checking `modelBuilder.GetMultiTenancySide() == MultiTenancySides.Host`.
* `IsTenantDatabase()`: Returns `true` if you should create tenant-related tables. It is equivalent of checking `modelBuilder.GetMultiTenancySide().HasFlag(MultiTenancySides.Tenant)`.
* `IsTenantOnlyDatabase()`: Returns `true` if you should only create tenant-related tables, but should not create host-related tables. It is equivalent of checking `modelBuilder.GetMultiTenancySide() == MultiTenancySides.Tenant`.
All pre-built ABP [modules](Modules/Index.md) checks this value in their `modelBuilder.ConfigureXXX()` methods.
## Conclusion
This document explains how to split your databases and manage your database migrations of your solution for Entity Framework Core. In brief, you need to have a separate migration project per different databases.

34
docs/en/Entity-Framework-Core.md

@ -626,6 +626,24 @@ See the "*ConfigureByConvention Method*" section above for more information.
## Advanced Topics
### Controlling the Multi-Tenancy
If your solution is [multi-tenant](Multi-Tenancy.md), tenants may have **separate databases**, you have **multiple** `DbContext` classes in your solution and some of your `DbContext` classes should be usable **only from the host side**, it is suggested to add `[IgnoreMultiTenancy]` attribute on your `DbContext` class. In this case, ABP guarantees that the related `DbContext` always uses the host [connection string](Connection-Strings.md), even if you are in a tenant context.
**Example:**
````csharp
[IgnoreMultiTenancy]
public class MyDbContext : AbpDbContext<MyDbContext>
{
...
}
````
Do not use the `[IgnoreMultiTenancy]` attribute if any one of your entities in your `DbContext` can be persisted in a tenant database.
> When you use repositories, ABP already uses the host database for the entities don't implement the `IMultiTenant` interface. So, most of time you don't need to `[IgnoreMultiTenancy]` attribute if you are using the repositories to work with the database.
### Set Default Repository Classes
Default generic repositories are implemented by `EfCoreRepository` class by default. You can create your own implementation and use it for all the default repository implementations.
@ -706,7 +724,19 @@ One advantage of using an interface for a DbContext is then it will be replaceab
### Replace Other DbContextes
Once you properly define and use an interface for DbContext, then any other implementation can replace it using the `ReplaceDbContext` option:
Once you properly define and use an interface for DbContext, then any other implementation can use the following ways to replace it:
**ReplaceDbContextAttribute**
```csharp
[ReplaceDbContext(typeof(IBookStoreDbContext))]
public class OtherDbContext : AbpDbContext<OtherDbContext>, IBookStoreDbContext
{
//...
}
```
**ReplaceDbContext option**
````csharp
context.Services.AddAbpDbContext<OtherDbContext>(options =>
@ -782,4 +812,4 @@ public class MyCustomEfCoreBulkOperationProvider
## See Also
* [Entities](Entities.md)
* [Repositories](Repositories.md)
* [Repositories](Repositories.md)

4
docs/en/Features.md

@ -146,9 +146,9 @@ A feature should be defined to be able to check it.
### FeatureDefinitionProvider
Create a class inheriting the `FeatureDefinitionProvider` to define permissions.
Create a class inheriting the `FeatureDefinitionProvider` to define features.
**Example: Defining permissions**
**Example: Defining features**
```csharp
using Volo.Abp.Features;

158
docs/en/Modules/Cms-Kit.md

@ -1,3 +1,159 @@
# CMS Kit Module
TODO
This module provides CMS(Content Management System) capabilities for your application.
* Provides a **page** management system to manage dynamic pages.
* Provides a [**blog**](cms-kit/Blog-System.md) system to create blogs and publish posts.
* Provides a [**tag**](cms-kit/Tag-Management.md) system to tag any kind of resources, like blog posts.
* Provides a [**comment**](cms-kit/Comment-System.md) system to add comments feature to any kind of resource, like blog posts, products, etc.
* Provides a [**reaction**](cms-kit/Reaction-System.md) system to add reactions feature to any kind of resource, like blog posts or comments.
* Provides a [**rating**](cms-kit/Rating-System.md) system to add rating feature to any kind of resource.
## How to install
The ABP CLI allows adding a module to a solution using `add-module` command. CMS kit module can be added using the command below;
```bash
abp add-module Volo.CmsKit
```
Open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project and place the following code to the `Configure` method to enable all features in the CMS kit module.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.EnableAll();
});
```
> If you are using EntityFrameworkCore, do not forget to add a new migration and update your database.
## Packages
This module follows the [module development best practices guide](https://docs.abp.io/en/abp/latest/Best-Practices/Index) and consists of several NuGet and NPM packages. See the guide if you want to understand the packages and relations between them.
CMS kit packages are designed for various usage scenarios. When you visit the [CMS kit package list page](https://www.nuget.org/packages?q=Volo.CmsKit), you will see that packages have admin, public and unified versions.
For example,
- `Volo.CmsKit.Admin.Application`: Contains functionality required by admin websites.
- `Volo.CmsKit.Public.Application`: Contains functionality required by public websites.
- `Volo.CmsKit.Application` : Unified package dependent on both public and admin packages.
If you want to separate admin and public website codes, you can use the admin and public packages. However, if you want to keep admin and public website codes in a shared project, you can use the unified packages to include admin and public packages.
It is recommended to use the unified packages instead of adding both admin and public packages.
## Feature System
CMS kit uses the [global feature](https://docs.abp.io/en/abp/latest/Global-Features) system for all implemented features. You can use the global feature system to enable all features or only enabled specific features easily.
To enable all features in the CMS kit, open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.EnableAll();
});
```
You can only enable specific features such as pages, like below.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.Pages.Enable();
});
```
## User interface
### Menu items
CMS kit module adds the following items to the "Main" menu, under the "CMS" menu item:
* **Pages**: Page management page.
* **Blogs**: Blog management page.
* **Blog Posts**: Blog post management page.
* **Tags**: Tag management page.
* **Comments**: Comment management page.
`CmsKitAdminMenus` class has the constants for the menu item names.
### Pages
### Page Management
Pages page is used to manage dynamic pages in the system.
![pages-page](../images/cmskit-module-pages-page.png)
You can create or edit an existing page on this page.
![pages-edit](../images/cmskit-module-pages-edit.png)
* When you create a page, you can access the created page via `pages/{slug}` URL.
### Blog Management
Blogs page is used to create and manage blogs in your system.
![blogs-page](../images/cmskit-module-blogs-page.png)
A screenshot from the new blog creation modal:
![blogs-edit](../images/cmskit-module-blogs-edit.png)
#### Blog Features
You can enable or disable a specific feature for blogs by clicking the features action.
![blogs-feature-action](../images/cmskit-module-blogs-feature-action.png)
You can select/deselect the desired features for blog posts.
![features-dialog](../images/cmskit-module-features-dialog.png)
### Blog Post Management
When you create blogs, you can manage blog posts on this page.
![blog-posts-page](../images/cmskit-module-blog-posts-page.png)
You can create and edit an existing blog post on this page. If you enable specific features such as tags, you can set tags for the blog post on this page.
![blog-post-edit](../images/cmskit-module-blog-post-edit.png)
### Tag Management
CMS Kit provides an extensible tagging mechanism to add tagging capabilities to various places.
![tags-page](../images/cmskit-module-tags-page.png)
You can create or edit an existing tag on this page.
![tag-edit](../images/cmskit-module-tag-edit.png)
### Comment Management
CMS Kit provides an extensible commenting mechanism to add comments to various places. You can add comment control to anywhere you want and manage the comments.
You can view and manage comments on this page.
![comment-page](../images/cmskit-module-comment-page.png)
You can manage and view replies on this page.
![comments-detail](../images/cmskit-module-comments-detail.png)
### Reactions
CMS Kit provides an extensible reaction component system to allow users to send reactions to your content. Here how the reactions component looks on a sample page.
![reactions](../images/cmskit-module-reactions.png)
You can also customize the reaction icons shown in the reaction component.
### Ratings
You can use the rating component to add rating a mechanism to your content. Here how the rating component looks on a sample page.
![ratings](../images/cmskit-module-ratings.png)

98
docs/en/Modules/cms-kit/Blog-System.md

@ -0,0 +1,98 @@
# Blog System
CMS kit provides a **blog** system to add blogs & posts to a public website. This section describes the details of the blog system.
## Feature
CMS kit uses the [global feature](https://docs.abp.io/en/abp/latest/Global-Features) system for all implemented features. Commercial startup templates come with all the CMS Kit-related features are enabled by default, if you create the solution with the public website option. If you're installing the CMS Kit manually or want to enable the blog feature individually, open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project and place the following code to the `Configure `method.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.Blogs.Enable();
});
```
# Internals
## Domain Layer
#### Aggregates
This module follows the [Entity Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Entities) guide.
- `Blog` _(aggregate root)_: Presents blogs of application.
- `BlogPost`_(aggregate root)_: Presents blog posts in blogs.
- `BlogFeature`:_(aggregate root)_: Presents blog features enabled/disabled state. Such as reactions, ratings, comments, etc.
#### Repositories
This module follows the [Repository Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Repositories) guide.
Following custom repositories are defined for this feature:
- `IBlogRepository`
- `IBlogPostRepository`
- `IBlogFeatureRepository`
#### Domain services
This module follows the [Domain Services Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Domain-Services) guide.
- `BlogManager`: Includes some operations for `Blog` aggreate root to keep data consistency.
- `CreateAsync`: Creates a new `Blog` entity and makes sure slug is used one time.
- `UpdateAsync`: Updates existing `Blog` entity and makes sure slug is used one time.
- `BlogPostManager`: Includes some operations for `BlogPost` aggreagate root such as creating & updating.
- `CreateAsync`: Creates a new BlogPost and makes sure slug is used only one time.
- `SetSlugUrlAsync`: Sets `UrlSlug` property of BlogPost entity and makes sure slug isn't duplicated in same blog.
- `BlogFeatureManager`: Includes some operations for managing blog features.
- `SetAsync`: Sets a feature enabled/disabled for a Blog.
- `SetDefaultsAsync`: Resets all feature configuration for a Blog.
### Application layer
#### Application Services
##### Admin
- `BlogAdminAppService` _(implements `IBlogAdminAppService`)_: Implements use cases of blog management.
- `BlogFeatureAdminAppService` _(implements `IBlogFeatureAdminAppService`)_: Implements use cases of blog feature management.
- `BlogPostAdminAppService` _(implements `IBlogPostAdminAppService`)_: Implements use cases of blog post management.
##### Common
- `BlogFeatureAppService` _(implements I`BlogFeatureAppService`)_: Implements feature checking operations.
##### Public
- `BlogPostPublicAppService` _(implements `IBlogPostPublicAppService`)_: Implements use cases of blog posts management on public websites.
### Database providers
#### Common
##### Table / collection prefix & schema
All tables/collections use the `Cms` prefix by default. Set static properties on the `CmsKitDbProperties` class if you need to change the table prefix or set a schema name (if supported by your database provider).
##### Connection string
This module uses `CmsKit` for the connection string name. If you don't define a connection string with this name, it fallbacks to the `Default` connection string.
See the [connection strings](https://docs.abp.io/en/abp/latest/Connection-Strings) documentation for details.
#### Entity Framework Core
##### Tables
- CmsBlogs
- CmsBlogPosts
- CmsBlogFeatures
#### MongoDB
##### Collections
- CmsBlogs
- CmsBlogPosts
- CmsBlogFeatures

117
docs/en/Modules/cms-kit/Comment-System.md

@ -0,0 +1,117 @@
# Comment System
CMS kit provides a **comment** system to add comments feature to any kind of resource, like blog posts, products, etc. This section describes the details of the comments system.
## Feature
CMS kit uses the [global feature](https://docs.abp.io/en/abp/latest/Global-Features) system for all implemented features. Commercial startup templates come with all the CMS kit related features are enabled by default, if you create the solution with public website option. If you're installing the CMS kit manually or want to enable the comment feature individually, open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project and place the following code to the `Configure ` method.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.Comments.Enable();
});
```
# Options
## CmsKitCommentOptions
You can use the comment system to add comments to any kind of resources, like blog posts, products etc. Comment system provides a mechanism to group comment definitions by entity types. For example, if you want to use comment system for blog posts and products, you need to define two entity types named `BlogPosts` and `Product`, and add comments under these entity types.
`CmsKitCommentOptions` can be configured in the domain layer, in the `ConfigureServices` method of your [module](https://docs.abp.io/en/abp/latest/Module-Development-Basics). Example:
```csharp
Configure<CmsKitCommentOptions>(options =>
{
options.EntityTypes.Add(new CommentEntityTypeDefinition("Product"));
});
```
> If you're using the blog feature, the ABP framework defines an entity type for the blog feature automatically. You can easily override or remove the predefined entity types in `Configure` method like shown above.
`CmsKitCommentOptions` properties:
- `EntityTypes`: List of defined entity types(`CmsKitCommentOptions`) in the comment system.
`CommentEntityTypeDefinition` properties:
- `EntityType`: Name of the entity type.
# Internals
## Domain Layer
#### Aggregates
This module follows the [Entity Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Entities) guide.
##### Comment
A comment represents a written comment from a user.
- `Comment` (aggregate root): Represents a written comment in the system.
#### Repositories
This module follows the [Repository Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Repositories) guide.
Following custom repositories are defined for this feature:
- `ICommentRepository`
#### Domain services
This module follows the [Domain Services Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Domain-Services) guide.
##### Comment Manager
`CommentManager` is used to perform some operations for the `Comment` aggregate root.
### Application layer
#### Application services
- `CommentAdminAppService` (implements `ICommentAdminAppService`): Implements the use cases of comment management system, like listing or removing comments etc.
- `CommentPublicAppService` (implements `ICommentPublicAppService`): Implements the use cases of comment management on the public websites, like listing comments, adding comments etc.
### Database providers
#### Common
##### Table / collection prefix & schema
All tables/collections use the `Cms` prefix by default. Set static properties on the `CmsKitDbProperties` class if you need to change the table prefix or set a schema name (if supported by your database provider).
##### Connection string
This module uses `CmsKit` for the connection string name. If you don't define a connection string with this name, it fallbacks to the `Default` connection string.
See the [connection strings](https://docs.abp.io/en/abp/latest/Connection-Strings) documentation for details.
#### Entity Framework Core
##### Tables
- CmsComments
#### MongoDB
##### Collections
- **CmsComments**
### MVC UI
The comment system provides a commenting widget to allow users to send comments to resources on public websites. You can simply place the widget on a page like below.
```csharp
@await Component.InvokeAsync(typeof(CommentingViewComponent), new
{
entityType = "entityType",
entityId = "entityId"
})
```
You need to specify entity type and entity ID parameters. Entity type represents the group name you specified while defining the comments in the domain module. Entity ID represents the unique identifier for the resource that users send comments to, such as blog post ID or product ID.
For more information about widgets see [widgets](https://docs.abp.io/en/abp/latest/UI/AspNetCore/Widgets) documentation.

116
docs/en/Modules/cms-kit/Rating-System.md

@ -0,0 +1,116 @@
# Rating System
CMS kit provides a **rating** system to to add ratings feature to any kind of resource like blog posts, comments, etc. This section describes the details of the rating system.
## Feature
CMS kit uses the [global feature](https://docs.abp.io/en/abp/latest/Global-Features) system for all implemented features. Commercial startup templates come with all the CMS kit related features are enabled by default, if you create the solution with the public website option. If you're installing the CMS kit manually or want to enable the rating feature individually, open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project and place the following code to the `Configure ` method.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.Ratings.Enable();
});
```
# Options
## CmsKitRatingOptions
You can use the rating system to to add ratings to any kind of resource, like blog posts, comments, etc. The rating system provides a mechanism to group ratings by entity types. For example, if you want to use the rating system for products, you need to define an entity type named `Product` and then add ratings under the defined entity type.
`CmsKitRatingOptions` can be configured in the domain layer, in the `ConfigureServices` method of your [module](https://docs.abp.io/en/abp/latest/Module-Development-Basics). Example:
```csharp
Configure<CmsKitRatingOptions>(options =>
{
options.EntityTypes.Add(new RatingEntityTypeDefinition("Product"));
});
```
> If you're using the blog feature, the ABP framework defines an entity type for the blog feature automatically. You can easily override or remove the predefined entity types in `Configure` method like shown above.
`CmsKitRatingOptions` properties:
- `EntityTypes`: List of defined entity types(`RatingEntityTypeDefinition`) in the rating system.
`RatingEntityTypeDefinition` properties:
- `EntityType`: Name of the entity type.
# Internals
## Domain Layer
#### Aggregates
This module follows the [Entity Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Entities) guide.
##### Rating
A rating represents a given rating from a user.
- `Rating` (aggregate root): Represents a given rating in the system.
#### Repositories
This module follows the [Repository Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Repositories) guide.
Following custom repositories are defined for this feature:
- `IRatingRepository`
#### Domain services
This module follows the [Domain Services Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Domain-Services) guide.
##### Reaction Manager
`RatingManager` is used to perform some operations for the `Rating` aggregate root.
### Application layer
#### Application services
- `RatingPublicAppService` (implements `IRatingPublicAppService`): Implements the use cases of rating system.
### Database providers
#### Common
##### Table / collection prefix & schema
All tables/collections use the `Cms` prefix by default. Set static properties on the `CmsKitDbProperties` class if you need to change the table prefix or set a schema name (if supported by your database provider).
##### Connection string
This module uses `CmsKit` for the connection string name. If you don't define a connection string with this name, it fallbacks to the `Default` connection string.
See the [connection strings](https://docs.abp.io/en/abp/latest/Connection-Strings) documentation for details.
#### Entity Framework Core
##### Tables
- CmsRatings
#### MongoDB
##### Collections
- **CmsRatings**
### MVC UI
The ratings system provides a rating widget to allow users send ratings to resources in public websites. You can simply place the widget on a page like below.
```csharp
@await Component.InvokeAsync(typeof(RatingViewComponent), new
{
entityType = "entityType",
entityId = "entityId"
})
```
You need to specify entity type and entity ID parameters. Entity type represents the group name you specified while defining the reactions in the domain module. Entity ID represents the unique identifier for the resource that users give ratings to, such as blog post ID or product ID.
For more information about widgets see [widgets](https://docs.abp.io/en/abp/latest/UI/AspNetCore/Widgets) documentation.

128
docs/en/Modules/cms-kit/Reaction-System.md

@ -0,0 +1,128 @@
# Reaction System
CMS kit provides a **reaction** system to add reactions feature to any kind of resource, like blog posts or comments. This section describes the details of the reaction system.
## Feature
CMS kit uses the [global feature](https://docs.abp.io/en/abp/latest/Global-Features) system for all implemented features. Commercial startup templates come with all the CMS kit related features are enabled by default, if you create the solution with the public website option. If you're installing the CMS kit manually or want to enable reaction feature individually, open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project and place the following code to the `Configure ` method.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.Reactions.Enable();
});
```
# Options
## CmsKitReactionOptions
You can use the reaction system to to add reactions feature to any kind of resource, like blog posts or comments, etc. The reaction system provides a mechanism to group reactions by entity types. For example, if you want to use the reaction system for products, you need to define an entity type named `Product`, and then add reactions under the defined entity type.
`CmsKitReactionOptions` can be configured in the domain layer, in the `ConfigureServices` method of your [module](https://docs.abp.io/en/abp/latest/Module-Development-Basics). Example:
```csharp
Configure<CmsKitReactionOptions>(options =>
{
options.EntityTypes.Add(
new ReactionEntityTypeDefinition(
"Product",
reactions: new[]
{
new ReactionDefinition(StandardReactions.Smile),
new ReactionDefinition(StandardReactions.ThumbsUp),
new ReactionDefinition(StandardReactions.ThumbsDown),
new ReactionDefinition(StandardReactions.Confused),
new ReactionDefinition(StandardReactions.Eyes),
new ReactionDefinition(StandardReactions.Heart)
}));
});
```
> If you're using the comment or blog features, the ABP framework defines predefined reactions for these features automatically. You can easily override or remove the predefined reactions in `Configure` method like shown above.
`CmsKitReactionOptions` properties:
- `EntityTypes`: List of defined entity types(`CmsKitReactionOptions`) in the reaction system.
`ReactionEntityTypeDefinition` properties:asdas
- `EntityType`: Name of the entity type.
- `Reactions`: List of defined reactions(`ReactionDefinition`) in the entity type.
# Internals
## Domain Layer
#### Aggregates
This module follows the [Entity Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Entities) guide.
##### UserReaction
A user reaction represents a given reaction from a user.
- `UserReaction` (aggregate root): Represents a given reaction in the system.
#### Repositories
This module follows the [Repository Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Repositories) guide.
Following custom repositories are defined for this feature:
- `IUserReactionRepository`
#### Domain services
This module follows the [Domain Services Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Domain-Services) guide.
##### Reaction Manager
`ReactionManager` is used to perform some operations for the `UserReaction` aggregate root.
### Application layer
#### Application services
- `ReactionPublicAppService` (implements `IReactionPublicAppService`): Implements the use cases of reaction system.
### Database providers
#### Common
##### Table / collection prefix & schema
All tables/collections use the `Cms` prefix by default. Set static properties on the `CmsKitDbProperties` class if you need to change the table prefix or set a schema name (if supported by your database provider).
##### Connection string
This module uses `CmsKit` for the connection string name. If you don't define a connection string with this name, it fallbacks to the `Default` connection string.
See the [connection strings](https://docs.abp.io/en/abp/latest/Connection-Strings) documentation for details.
#### Entity Framework Core
##### Tables
- CmsUserReactions
#### MongoDB
##### Collections
- **CmsUserReactions**
### MVC UI
The reaction system provides a reaction widget to allow users to send reactions to resources on public websites. You can place the widget on a page like below.
```csharp
@await Component.InvokeAsync(typeof(ReactionSelectionViewComponent), new
{
entityType = "entityType",
entityId = "entityId"
})
```
You need to specify entity type and entity ID parameters. Entity type represents the group name you specified while defining the reactions in the domain module. Entity ID represents the unique identifier for the resource that users give reactions to, such as blog post ID or product ID.
For more information about widgets see [widgets](https://docs.abp.io/en/abp/latest/UI/AspNetCore/Widgets) documentation.

135
docs/en/Modules/cms-kit/Tag-Management.md

@ -0,0 +1,135 @@
# Tag Management
CMS kit provides a **tag** system to tag any kind of resources, like blog posts. This section describes the details of the tag system.
## Feature
CMS kit uses the [global feature](https://docs.abp.io/en/abp/latest/Global-Features) system for all implemented features. Commercial startup templates come with all the CMS kit related features are enabled by default, if you create the solution with public website option. If you're installing the CMS kit manually or want to enable the tag management feature individually, open the `GlobalFeatureConfigurator` class in the `Domain.Shared` project and place the following code to the `Configure ` method.
```csharp
GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
cmsKit.Tags.Enable();
});
```
# Options
## CmsKitTagOptions
You can use the tag system to tag any kind of resources, like blog posts, products, etc. The tag system provides a mechanism to group tags by entity types. For example, if you want to use the tag system for blog posts and products, you need to define two entity types named `BlogPosts` and `Product` and add tags under these entity types.
`CmsKitTagOptions` can be configured in the domain layer, in the `ConfigureServices` method of your [module](https://docs.abp.io/en/abp/latest/Module-Development-Basics). Example:
```csharp
Configure<CmsKitTagOptions>(options =>
{
options.EntityTypes.Add(new TagEntityTypeDefiniton("Product"));
});
```
> If you're using the blog feature, the ABP framework defines an entity type for the blog feature automatically. You can easily override or remove the predefined entity types in `Configure` method like shown above.
`CmsKitTagOptions` properties:
- `EntityTypes`: List of defined entity types(`TagEntityTypeDefiniton`) in the tag system.
`TagEntityTypeDefiniton` properties:
- `EntityType`: Name of the entity type.
- `DisplayName`: Display name of the entity type. You can use a user friendly display name to show entity type definition on the admin website.
- `CreatePolicies`: List of policy names allowing users to create tags under the entity type.
- `UpdatePolicies`: List of policy names allowing users to update tags under the entity type.
- `DeletePolicies`: List of policy names allowing users to delete tags under the entity type.
# Internals
## Domain Layer
#### Aggregates
This module follows the [Entity Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Entities) guide.
##### Tag
A tag represents a tag under the entity type.
- `Tag` (aggregate root): Represents a tag in the system.
##### EntityTag
An entity tag represents a connection between the tag and the tagged entity.
- `EntityTag`(entity): Represents a connection between the tag and the tagged entity.
#### Repositories
This module follows the [Repository Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Repositories) guide.
Following custom repositories are defined for this feature:
- `ITagRepository`
- `IEntityTagRepository`
#### Domain services
This module follows the [Domain Services Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Domain-Services) guide.
##### Tag Manager
`TagManager` is used to perform some operations for the `Tag` aggregate root.
##### Entity Tag Manager
`EntityTagManager` is used to perform some operations for the `EntityTag` entity.
### Application layer
#### Application services
- `TagAdminAppService` (implements `ITagAdminAppService`): Implements the use cases of tag management.
- `EntityTagAdminAppService` (implements `IEntityTagAdminAppService`): Implements the use cases of entity tag relationship.
- `TagAppService` (implements `ITagAppService`): Implements the use cases of entity tag relationship for public websites.
### Database providers
#### Common
##### Table / collection prefix & schema
All tables/collections use the `Cms` prefix by default. Set static properties on the `CmsKitDbProperties` class if you need to change the table prefix or set a schema name (if supported by your database provider).
##### Connection string
This module uses `CmsKit` for the connection string name. If you don't define a connection string with this name, it fallbacks to the `Default` connection string.
See the [connection strings](https://docs.abp.io/en/abp/latest/Connection-Strings) documentation for details.
#### Entity Framework Core
##### Tables
- CmsTags
- CmsEntityTags
- CmsTags
#### MongoDB
##### Collections
- **CmsTags**
- **CmsEntityTags**
### MVC UI
The tag system provides a tag widget to display associated tags of the resource on public websites. You can simply place the widget on a page like below.
```csharp
@await Component.InvokeAsync(typeof(TagViewComponent), new
{
entityType = "entityType",
entityId = "entityId"
})
```
For more information about widgets see [widgets](https://docs.abp.io/en/abp/latest/UI/AspNetCore/Widgets) documentation.

32
docs/en/MongoDB.md

@ -292,6 +292,24 @@ Configure<AbpUnitOfWorkDefaultOptions>(options =>
### Advanced Topics
### Controlling the Multi-Tenancy
If your solution is [multi-tenant](Multi-Tenancy.md), tenants may have **separate databases**, you have **multiple** `DbContext` classes in your solution and some of your `DbContext` classes should be usable **only from the host side**, it is suggested to add `[IgnoreMultiTenancy]` attribute on your `DbContext` class. In this case, ABP guarantees that the related `DbContext` always uses the host [connection string](Connection-Strings.md), even if you are in a tenant context.
**Example:**
````csharp
[IgnoreMultiTenancy]
public class MyDbContext : AbpMongoDbContext
{
...
}
````
Do not use the `[IgnoreMultiTenancy]` attribute if any one of your entities in your `DbContext` can be persisted in a tenant database.
> When you use repositories, ABP already uses the host database for the entities don't implement the `IMultiTenant` interface. So, most of time you don't need to `[IgnoreMultiTenancy]` attribute if you are using the repositories to work with the database.
#### Set Default Repository Classes
Default generic repositories are implemented by `MongoDbRepository` class by default. You can create your own implementation and use it for default repository implementation.
@ -373,7 +391,19 @@ One advantage of using interface for a MongoDbContext is then it becomes replace
#### Replace Other DbContextes
Once you properly define and use an interface for a MongoDbContext , then any other implementation can replace it using the `ReplaceDbContext` option:
Once you properly define and use an interface for a MongoDbContext , then any other implementation can use the following ways to replace it:
**ReplaceDbContextAttribute**
```csharp
[ReplaceDbContext(typeof(IBookStoreMongoDbContext))]
public class OtherMongoDbContext : AbpMongoDbContext, IBookStoreMongoDbContext
{
//...
}
```
**ReplaceDbContext option**
```csharp
context.Services.AddMongoDbContext<OtherMongoDbContext>(options =>

31
docs/en/Road-Map.md

@ -6,7 +6,7 @@ This document provides a road map, release schedule and planned features for the
### v4.4
This version will focus on **documentation** and **improvements** of current features. In addition, the following features are planned;
This version will focus on **documentation** and **improvements** of current features. In addition, the following features are planned:
* Publishing distributed events as transactional ([#6126](https://github.com/abpframework/abp/issues/6126))
* Revisit the microservice demo solution ([#8385](https://github.com/abpframework/abp/issues/8385))
@ -15,26 +15,22 @@ This version will focus on **documentation** and **improvements** of current fea
* Pre-configured test project for the [Blazor UI](UI/Blazor/Overall.md) ([#5516](https://github.com/abpframework/abp/issues/5516))
* Razor engine support for text templating ([#8373](https://github.com/abpframework/abp/issues/8373))
**Planned release date**: End of Quarter 2, 2021.
### v4.5
We planned to focus on v5.0 after 4.4 release. However, we may release v4.5 if we see it necessary.
**Planned release date**: End of Quarter 2, 2021. See the [4.4 milestone](https://github.com/abpframework/abp/milestone/52) to track the progress.
### v5.0
This version will focus on .NET 6 and performance improvements.
We planned to focus on the ABP Framework v5.0 after the 4.4 release. This version will focus on the following works:
* Upgrading to .NET 6
* .NET Trimming compatibility
* Using source generators and reducing reflection usage
* Performance improvements
* Improving the abp.io platform
* Upgrading to .NET 6.0 ([#9004](https://github.com/abpframework/abp/issues/9004))
* Upgrading to Bootstrap 5.x ([#8922](https://github.com/abpframework/abp/issues/8922))
* Alternative to IdentityServer4 ([#7221](https://github.com/abpframework/abp/issues/7221))
* Dapr integration ([#2183](https://github.com/abpframework/abp/issues/2183))
* Resource based authorization system ([#236](https://github.com/abpframework/abp/issues/236))
* API Versioning system: finalize & document ([#497](https://github.com/abpframework/abp/issues/497))
* Performance optimizations; Enabling .NET Trimming, using source generators and reducing reflection, etc.
* Improving the abp.io platform and work more on contents and documents
**Planned release date**: End of Quarter 4, 2021.
> Note: v5.0 features will be more clear in the next months. We will consider to add new features from the *Backlog Items*.
**Planned release date**: End of Quarter 4, 2021. See the [5.0 milestone](https://github.com/abpframework/abp/milestone/51) to track the progress.
## Backlog Items
@ -42,13 +38,10 @@ The *Next Versions* section above shows the main focus of the planned versions.
Here, a list of major items in the backlog we are considering to work on in the next versions.
* [#2183](https://github.com/abpframework/abp/issues/2183) / Dapr integration
* [#2882](https://github.com/abpframework/abp/issues/2882) / Providing a gRPC integration infrastructure (while it is [already possible](https://github.com/abpframework/abp-samples/tree/master/GrpcDemo) to create or consume gRPC endpoints for your application, we plan to create endpoints for the [standard application modules](https://docs.abp.io/en/abp/latest/Modules/Index))
* [#633](https://github.com/abpframework/abp/issues/633) / Realtime notification system
* [#236](https://github.com/abpframework/abp/issues/236) / Resource based authorization system
* [#1754](https://github.com/abpframework/abp/issues/1754) / Multi-lingual entities
* [#57](https://github.com/abpframework/abp/issues/57) / Built-in CQRS infrastructure
* [#336](https://github.com/abpframework/abp/issues/336) / Health Check abstraction
* [#336](https://github.com/abpframework/abp/issues/336) / Health Check abstractions
* [#2532](https://github.com/abpframework/abp/issues/2532), [#2564](https://github.com/abpframework/abp/issues/2465) / CosmosDB integration with EF Core and MongoDB API
* [#4223](https://github.com/abpframework/abp/issues/4223) / WebHook system
* [#162](https://github.com/abpframework/abp/issues/162) / Azure ElasticDB Integration for multitenancy

125
docs/en/SimpleStateChecker.md

@ -0,0 +1,125 @@
# Simple State Checker
The simple state checking system can be used to enable/disable an object based on some dynamic conditions. For example, you can disable a menu item on the user interface, if the current user has not granted for a given permission. The simple state checking system provides a generic way to define and check such conditions.
## Definition state checker.
Any class can inherit `IHasSimpleStateCheckers` to support state checks.
````csharp
public class MyObject : IHasSimpleStateCheckers<MyObject>
{
public int Id { get; set; }
public List<ISimpleStateChecker<MyObject>> SimpleStateCheckers { get; }
public MyObject()
{
SimpleStateCheckers = new List<ISimpleStateChecker<MyObject>>();
}
}
````
The `MyObject` class contains a collection of state checkers, you can add your custom checkers to it.
````csharp
public class MyObjectStateChecker : ISimpleStateChecker<MyObject>
{
public Task<bool> IsEnabledAsync(SimpleStateCheckerContext<MyObject> context)
{
var currentUser = context.ServiceProvider.GetRequiredService<ICurrentUser>();
return Task.FromResult(currentUser.IsInRole("Admin"));
}
}
````
````csharp
var myobj = new MyObject()
{
Id = 100
};
myobj.SimpleStateCheckers.Add(new MyObjectStateChecker());
````
## Definition Global State Checkers
`AbpSimpleStateCheckerOptions` is the options class that used to set the global state checkers for specific object.
Example: Add global state for `MyObject`:
````csharp
services.Configure<AbpSimpleStateCheckerOptions<MyObject>>(options =>
{
options.GlobalSimpleStateCheckers.Add<MyGlobalObjectStateChecker>();
//options.GlobalSimpleStateCheckers.Add<>(); //Add more global state checkers
});
````
> Write this inside the `ConfigureServices` method of your module.
## Check the state
You can inject `ISimpleStateCheckerManager<MyObject>` service to check state.
````csharp
bool enabled = await stateCheckerManager.IsEnabledAsync(myobj);
````
### Batch check the states
If there are many instance items that require state checking, there may be performance problems.
In this case, you can implement `ISimpleBatchStateChecker`. It can check multiple items at once.
You need to make sure that the same `ISimpleBatchStateChecker` instance is added to the `SimpleStateCheckers` of multiple instances.
> `SimpleBatchStateCheckerBase` inherits the `ISimpleBatchStateChecker` interface and implements the `IsEnabledAsync` method of a single object by default.
````csharp
public class MyObjectBatchStateChecker : SimpleBatchStateCheckerBase<MyObject>
{
public override Task<SimpleStateCheckerResult<MyObject>> IsEnabledAsync(SimpleBatchStateCheckerContext<MyObject> context)
{
var result = new SimpleStateCheckerResult<MyObject>(context.States);
foreach (var myObject in context.States)
{
if (myObject.Id > 100)
{
result[myObject] = true;
}
}
return Task.FromResult(result);
}
}
````
````csharp
var myobj1 = new MyObject()
{
Id = 100
};
var myobj2 = new MyObject()
{
Id = 99
};
var myObjectBatchStateChecker = new MyObjectBatchStateChecker();
myobj1.SimpleStateCheckers.Add(myObjectBatchStateChecker);
myobj2.SimpleStateCheckers.Add(myObjectBatchStateChecker);
SimpleStateCheckerResult<MyObject> stateCheckerResult = await stateCheckerManager.IsEnabledAsync(new []{ myobj1, myobj2 });
````
## Built-in State Checkers
The `PermissionDefinition`, `ApplicationMenuItem` and `ToolbarItem` objects have implemented state checks and have built-in general state checkers, you can directly use their extension methods.
````csharp
RequireAuthenticated();
RequirePermissions(bool requiresAll, params string[] permissions);
RequireFeatures(bool requiresAll, params string[] features);
RequireGlobalFeatures(bool requiresAll, params Type[] globalFeatures);
````

24
docs/en/String-Encryption.md

@ -43,9 +43,9 @@ All encryption operations are included in `IStringEncryptionService`. You can in
```csharp
public class MyService : DomainService
{
public IStringEncryptionService StringEncryptionService { get; }
protected IStringEncryptionService StringEncryptionService { get; }
public MyAppService(IStringEncryptionService stringEncryptionService)
public MyService(IStringEncryptionService stringEncryptionService)
{
StringEncryptionService = stringEncryptionService;
}
@ -69,11 +69,14 @@ All encryption operations are included in `IStringEncryptionService`. You can in
`IStringEncryptionService` methods has **passPharase** parameter with default value and it uses default PassPhrase when you don't pass passPhrase parameter.
```csharp
StringEncryptionService.Encrypt(value); // Default Pass Phrase
StringEncryptionService.Encrypt(value, "MyCustomPassPhrase"); // Custom Pass Phrase
// Default Pass Phrase
var encryptedValue = StringEncryptionService.Encrypt(value);
// Custom Pass Phrase
var encryptedValue = StringEncryptionService.Encrypt(value, "MyCustomPassPhrase");
// Encrypt & Decrypt have same parameters.
StringEncryptionService.Decrypt(value, "MyCustomPassPhrase");
var decryptedValue = StringEncryptionService.Decrypt(value, "MyCustomPassPhrase");
```
### Using Custom Salt
@ -81,11 +84,14 @@ StringEncryptionService.Decrypt(value, "MyCustomPassPhrase");
`IStringEncryptionService` methods has **salt** parameter with default value and it uses default Salt when you don't pass the parameter.
```csharp
StringEncryptionService.Encrypt(value); // Default Salt
StringEncryptionService.Encrypt(value, salt: Encoding.UTF8.GetBytes("MyCustomSalt")); // Custom Salt
// Default Salt
var encryptedValue = StringEncryptionService.Encrypt(value);
// Custom Salt
var encryptedValue = StringEncryptionService.Encrypt(value, salt: Encoding.UTF8.GetBytes("MyCustomSalt"));
// Encrypt & Decrypt have same parameters.
StringEncryptionService.Decrypt(value, salt: Encoding.UTF8.GetBytes("MyCustomSalt"));
var decryptedValue = StringEncryptionService.Decrypt(value, salt: Encoding.UTF8.GetBytes("MyCustomSalt"));
```
***
@ -116,4 +122,4 @@ Configure<AbpStringEncryptionOptions>(opts =>
- **Keysize:** This constant is used to determine the keysize of the encryption algorithm.
Default value: `256`
Default value: `256`

30
docs/en/UI/Angular/Page-Component.md

@ -1,4 +1,4 @@
# Page Component
# Page Component
ABP provides a component that wraps your content with some built-in components to reduce the amount of code you need to write.
@ -11,7 +11,7 @@ Let's look at the following example without `abp-page` component.
```html
<div class="row entry-row">
<div class="col-auto">
<h1 class="content-header-title">{{ '::Dashboard' | abpLocalization }}</h1>
<h1 class="content-header-title">{%{{{ '::Dashboard' | abpLocalization }}}%}</h1>
</div>
<div id="breadcrumb" class="col-lg-auto pl-lg-0">
<abp-breadcrumb></abp-breadcrumb>
@ -26,7 +26,7 @@ Let's look at the following example without `abp-page` component.
</div>
```
## Page Parts
## Page Parts
PageComponent divides the template shown above into three parts, `title`, `breadcrumb`, `toolbar`. Each can be configured separately. There, also, is an enum exported from the package that describes each part.
@ -67,41 +67,35 @@ And change the template of `dashboard.component.ts` to the following:
</abp-page>
```
## Inputs
## Inputs
* title: `string`: Will be be rendered within `h1.content-header-title`. If not provided, the parent `div` will not be rendered
* breadcrumb: `boolean`: Determines whether to render `abp-breadcrumb`. Default is `true`.
* toolbar: `any`: Will be passed into `abp-page-toolbar` component through `record` input. If your page does not contain `abp-page-toolbar`, you can simply omit this field.
## Overriding template
## Overriding template
If you need to replace the template of any part, you can use the following sub-components.
```html
<abp-page>
<abp-page-title-container>
<div class="col">
<h2>Custom Title</h2>
</div>
<abp-page-title-container class="col">
<h2>Custom Title</h2>
</abp-page-title-container>
<abp-page-breacrumb-container>
<div class="col">
<my-breadcrumb></my-breadcrumb>
</div>
<abp-page-breacrumb-container class="col">
<my-breadcrumb></my-breadcrumb>
</abp-page-breacrumb-container>
<abp-page-toolbar-container>
<div class="col">
<!-- ... -->
</div>
<abp-page-toolbar-container class="col">
<button (click)="doSth()">Some Action</button>
</abp-page-toolbar-container>
</abp-page>
```
You do not have to provide them all. You can just use which one you need to replace. These components have priority over the inputs declared above. If you use these components, you can omit the inputs.
## PagePartDirective
## PagePartDirective
`PageModule` provides a structural directive that is used internally within `PageComponent` and can also be used externally.

19
docs/en/UI/AspNetCore/Navigation-Menu.md

@ -104,7 +104,6 @@ There are more options of a menu item (the constructor of the `ApplicationMenuIt
* `target` (`string`): Target of the menu item. Can be `null` (default), "\_*blank*", "\_*self*", "\_*parent*", "\_*top*" or a frame name for web applications.
* `elementId` (`string`): Can be used to render the element with a specific HTML `id` attribute.
* `cssClass` (`string`): Additional string classes for the menu item.
* `RequiredPermissionName` (`string`): The required permission name, this menu item will be removed if this permission is not granted.
### Authorization
@ -121,21 +120,21 @@ if (await context.IsGrantedAsync("MyPermissionName"))
}
````
For the authorization, you can use `RequiredPermissionName` as a shortcut. It is also more performant, ABP optimizes the permission check for all the items.
For the authorization, you can use `RequirePermissions` extension method as a shortcut. It is also more performant, ABP optimizes the permission check for all the items.
````csharp
context.Menu.AddItem(
new ApplicationMenuItem("MyProject.Crm", l["Menu:CRM"])
.AddItem(new ApplicationMenuItem(
name: "MyProject.Crm.Customers",
displayName: l["Menu:Customers"],
url: "/crm/customers",
requiredPermissionName: "MyProject.Crm.Customers")
name: "MyProject.Crm.Customers",
displayName: l["Menu:Customers"],
url: "/crm/customers")
.RequirePermissions("MyProject.Crm.Customers")
).AddItem(new ApplicationMenuItem(
name: "MyProject.Crm.Orders",
displayName: l["Menu:Orders"],
url: "/crm/orders",
requiredPermissionName: "MyProject.Crm.Orders")
name: "MyProject.Crm.Orders",
displayName: l["Menu:Orders"],
url: "/crm/orders")
.RequirePermissions("MyProject.Crm.Orders")
)
);
````

4
docs/en/UI/AspNetCore/Toolbars.md

@ -61,10 +61,10 @@ if (await context.IsGrantedAsync("MyPermissionName"))
}
````
You can use `RequiredPermissionName` as a shortcut. It is also more performant, ABP optimizes the permission check for all the items.
You can use `RequirePermissions` extension method as a shortcut. It is also more performant, ABP optimizes the permission check for all the items.
````csharp
context.Toolbar.Items.Insert(0, new ToolbarItem(typeof(NotificationViewComponent), requiredPermissionName: "MyPermissionName"));
context.Toolbar.Items.Insert(0, new ToolbarItem(typeof(NotificationViewComponent)).RequirePermissions("MyPermissionName"));
````
This class adds the `NotificationViewComponent` as the first item in the `Main` toolbar.

87
docs/en/docs-nav.json

@ -39,31 +39,6 @@
}
]
},
{
"text": "Startup Templates",
"items": [
{
"text": "Overall",
"path": "Startup-Templates/Index.md"
},
{
"text": "Application",
"path": "Startup-Templates/Application.md"
},
{
"text": "Module",
"path": "Startup-Templates/Module.md"
},
{
"text": "Console",
"path": "Startup-Templates/Console.md"
},
{
"text": "WPF",
"path": "Startup-Templates/WPF.md"
}
]
},
{
"text": "Tutorials",
"items": [
@ -122,6 +97,45 @@
}
]
},
{
"text": "CLI",
"path": "CLI.md",
"items": [
{
"text": "Build Command",
"path": "CLI-BuildCommand.md"
},
{
"text": "Create Solution Sample Commands",
"path": "CLI-New-Command-Samples.md"
}
]
},
{
"text": "Startup Templates",
"items": [
{
"text": "Overall",
"path": "Startup-Templates/Index.md"
},
{
"text": "Application",
"path": "Startup-Templates/Application.md"
},
{
"text": "Module",
"path": "Startup-Templates/Module.md"
},
{
"text": "Console",
"path": "Startup-Templates/Console.md"
},
{
"text": "WPF",
"path": "Startup-Templates/WPF.md"
}
]
},
{
"text": "Fundamentals",
"items": [
@ -379,6 +393,10 @@
{
"text": "Cancellation Token Provider",
"path": "Cancellation-Token-Provider.md"
},
{
"text": "Simple State Checker",
"path": "SimpleStateChecker.md"
}
]
},
@ -1292,25 +1310,6 @@
}
]
},
{
"text": "Reference",
"items": [
{
"text": "CLI",
"path": "CLI.md",
"items": [
{
"text": "Build Command",
"path": "CLI-BuildCommand.md"
},
{
"text": "Create Solution Sample Commands",
"path": "CLI-New-Command-Samples.md"
}
]
}
]
},
{
"text": "Contribution Guide",
"path": "Contribution/Index.md"

BIN
docs/en/images/cmskit-module-blog-post-edit.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

BIN
docs/en/images/cmskit-module-blog-posts-page.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
docs/en/images/cmskit-module-blogs-edit.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
docs/en/images/cmskit-module-blogs-feature-action.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
docs/en/images/cmskit-module-blogs-page.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
docs/en/images/cmskit-module-comment-page.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
docs/en/images/cmskit-module-comments-detail.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

BIN
docs/en/images/cmskit-module-features-dialog.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
docs/en/images/cmskit-module-pages-edit.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

BIN
docs/en/images/cmskit-module-pages-page.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
docs/en/images/cmskit-module-ratings.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
docs/en/images/cmskit-module-reactions.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

BIN
docs/en/images/cmskit-module-tag-edit.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

BIN
docs/en/images/cmskit-module-tags-page.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

2
docs/zh-Hans/Blob-Storing-Minio.md

@ -42,7 +42,7 @@ Configure<AbpBlobStoringOptions>(options =>
* **EndPoint** (string): 你的Minio对象存储服务的URL, 查看文档:https://docs.min.io/docs/dotnet-client-quickstart-guide.html
* **AccessKey** (string): Access key是唯一标识你的账户的用户ID,
* **SecretKey** (string): Access key是唯一标识你的账户的用户ID
* **SecretKey** (string): Secret Key是你的账户的密码
* **BucketName** (string):你可以指定bucket名称,如果没有指定,将使用 `BlobContainerName` 属性定义的BLOB容器的名称(查阅[BLOB storing document](Blob-Storing.md)),MinIO完全兼容S3标准,所以有一些 **bucket命名规则**,必须符合[规则](https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html):
* Bucket名称必须介于 3 到 63 个字符之间.
* Bucket名称只能由小写字母、数字、句点 (.) 和连字符 (-) 组成.

14
docs/zh-Hans/Entity-Framework-Core.md

@ -433,7 +433,19 @@ public class BookRepository : EfCoreRepository<IBookStoreDbContext, Book, Guid>,
### 替换其他仓储
正确定义并使用DbContext接口后,任何其他实现都可以使用以下ReplaceDbContext options 替换它:
正确定义并使用DbContext接口后,任何其他实现都可以使用以下方法替换它:
**ReplaceDbContextAttribute**
```csharp
[ReplaceDbContext(typeof(IBookStoreDbContext))]
public class OtherDbContext : AbpDbContext<OtherDbContext>, IBookStoreDbContext
{
//...
}
```
**ReplaceDbContext option**
````csharp
context.Services.AddAbpDbContext<OtherDbContext>(options =>

14
docs/zh-Hans/MongoDB.md

@ -329,7 +329,19 @@ public class BookRepository
##### 替换其他的DbContexts
一旦你正确定义并为MongoDbContext使用了接口,其他的实现就可以使用`ReplaceDbContext`来替换:
一旦你正确定义并为MongoDbContext使用了接口,任何其他实现都可以使用以下方法替换它:
**ReplaceDbContextAttribute**
```csharp
[ReplaceDbContext(typeof(IBookStoreMongoDbContext))]
public class OtherMongoDbContext : AbpMongoDbContext, IBookStoreMongoDbContext
{
//...
}
```
**ReplaceDbContext option**
```csharp
context.Services.AddMongoDbContext<OtherMongoDbContext>(options =>

2
docs/zh-Hans/Tutorials/Part-1.md

@ -84,7 +84,7 @@ namespace Acme.BookStore.Books
}
````
* ABP为实体提供了两个基本的基类: `AggregateRoot`和`Entity`. **Aggregate Root**是[**领域驱动设计**](./Domain-Driven-Design.md) 概念之一. 可以视为直接查询和处理的根实体(请参阅[实体文档](./Entities.md)).
* ABP为实体提供了两个基本的基类: `AggregateRoot`和`Entity`. **Aggregate Root**是[**领域驱动设计**](./Domain-Driven-Design.md) 概念之一. 可以视为直接查询和处理的根实体(请参阅[实体文档](../Entities.md)).
* `Book`实体继承了`AuditedAggregateRoot`,`AuditedAggregateRoot`类在`AggregateRoot`类的基础上添加了一些审计属性(`CreationTime`, `CreatorId`, `LastModificationTime` 等). ABP框架自动为你管理这些属性.
* `Guid`是`Book`实体的主键类型.

2
docs/zh-Hans/Tutorials/Part-3.md

@ -398,7 +398,7 @@ namespace Acme.BookStore.Web
我们将为表格每行添加下拉按钮 ("Actions"):
打开 `Pages/Books/Index.cshtml` 页面,并按下方所示修改表格部分的代码:
打开 `Pages/Books/Index.js` 页面,并按下方所示修改表格部分的代码:
````js
$(function () {

7
framework/Volo.Abp.sln

@ -395,6 +395,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.TextTemplating.Raz
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.TextTemplating.Scriban.Tests", "test\Volo.Abp.TextTemplating.Scriban.Tests\Volo.Abp.TextTemplating.Scriban.Tests.csproj", "{75D8DADB-3FA9-4C1D-B23A-DBFD08133B7C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.MongoDB.Tests.SecondContext", "test\Volo.Abp.MongoDB.Tests.SecondContext\Volo.Abp.MongoDB.Tests.SecondContext.csproj", "{90B1866A-EF99-40B9-970E-B898E5AA523F}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -1177,6 +1179,10 @@ Global
{75D8DADB-3FA9-4C1D-B23A-DBFD08133B7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{75D8DADB-3FA9-4C1D-B23A-DBFD08133B7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{75D8DADB-3FA9-4C1D-B23A-DBFD08133B7C}.Release|Any CPU.Build.0 = Release|Any CPU
{90B1866A-EF99-40B9-970E-B898E5AA523F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{90B1866A-EF99-40B9-970E-B898E5AA523F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{90B1866A-EF99-40B9-970E-B898E5AA523F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{90B1866A-EF99-40B9-970E-B898E5AA523F}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -1376,6 +1382,7 @@ Global
{42EA6F06-2D78-4D18-8AC4-8F2AB7E6DA19} = {5DF0E140-0513-4D0D-BE2E-3D4D85CD70E6}
{C996F458-98FB-483D-9306-4701290E2FC1} = {447C8A77-E5F0-4538-8687-7383196D04EA}
{75D8DADB-3FA9-4C1D-B23A-DBFD08133B7C} = {447C8A77-E5F0-4538-8687-7383196D04EA}
{90B1866A-EF99-40B9-970E-B898E5AA523F} = {447C8A77-E5F0-4538-8687-7383196D04EA}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BB97ECF4-9A84-433F-A80B-2A3285BDD1D5}

12
framework/src/Volo.Abp.AspNetCore.Authentication.OpenIdConnect/Microsoft/Extensions/DependencyInjection/AbpOpenIdConnectExtensions.cs

@ -4,6 +4,7 @@ using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authentication.OAuth.Claims;
using Microsoft.AspNetCore.Authentication.OpenIdConnect;
using Microsoft.Extensions.Options;
using Microsoft.IdentityModel.Protocols.OpenIdConnect;
using Volo.Abp.AspNetCore.MultiTenancy;
namespace Microsoft.Extensions.DependencyInjection
@ -35,6 +36,17 @@ namespace Microsoft.Extensions.DependencyInjection
SetAbpTenantId(receivedContext);
return authorizationCodeReceived.Invoke(receivedContext);
};
options.Events.OnRemoteFailure = remoteFailureContext =>
{
if (remoteFailureContext.Failure is OpenIdConnectProtocolException &&
remoteFailureContext.Failure.Message.Contains("access_denied"))
{
remoteFailureContext.HandleResponse();
remoteFailureContext.Response.Redirect($"{remoteFailureContext.Request.PathBase}/");
}
return Task.CompletedTask;
};
});
}

14
framework/src/Volo.Abp.AspNetCore.Components.Web.BasicTheme/Themes/Basic/AppWithoutAuth.razor

@ -0,0 +1,14 @@
@using Microsoft.Extensions.Options
@using Volo.Abp.AspNetCore.Components.Web.Theming.Routing
@inject IOptions<AbpRouterOptions> RouterOptions
<Router AppAssembly="RouterOptions.Value.AppAssembly"
AdditionalAssemblies="RouterOptions.Value.AdditionalAssemblies">
<Found Context="routeData">
<RouteView RouteData="@routeData" DefaultLayout="@typeof(MainLayout)" />
</Found>
<NotFound>
<LayoutView Layout="@typeof(MainLayout)">
<p>Sorry, there's nothing at this address.</p>
</LayoutView>
</NotFound>
</Router>

23
framework/src/Volo.Abp.AspNetCore.Components.Web/Volo/Abp/AspNetCore/Components/Web/Security/AbpComponentsClaimsCache.cs

@ -1,5 +1,6 @@
using System.Security.Claims;
using System.Threading.Tasks;
using JetBrains.Annotations;
using Microsoft.AspNetCore.Components.Authorization;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.DependencyInjection;
@ -14,21 +15,29 @@ namespace Volo.Abp.AspNetCore.Components.Web.Security
{
public ClaimsPrincipal Principal { get; private set; }
[CanBeNull]
private readonly AuthenticationStateProvider _authenticationStateProvider;
public AbpComponentsClaimsCache(IClientScopeServiceProviderAccessor clientScopeServiceProviderAccessor)
public AbpComponentsClaimsCache(
IClientScopeServiceProviderAccessor serviceProviderAccessor)
{
_authenticationStateProvider = clientScopeServiceProviderAccessor.ServiceProvider.GetRequiredService<AuthenticationStateProvider>();
_authenticationStateProvider.AuthenticationStateChanged += async (task) =>
_authenticationStateProvider = serviceProviderAccessor.ServiceProvider.GetService<AuthenticationStateProvider>();
if (_authenticationStateProvider != null)
{
Principal = (await task).User;
};
_authenticationStateProvider.AuthenticationStateChanged += async (task) =>
{
Principal = (await task).User;
};
}
}
public virtual async Task InitializeAsync()
{
var authenticationState = await _authenticationStateProvider.GetAuthenticationStateAsync();
Principal = authenticationState.User;
if (_authenticationStateProvider != null)
{
var authenticationState = await _authenticationStateProvider.GetAuthenticationStateAsync();
Principal = authenticationState.User;
}
}
}
}

13
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/BasicThemeToolbarContributor.cs

@ -1,7 +1,10 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Components.Authorization;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.AspNetCore.Components.Web.BasicTheme.Themes.Basic;
using Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars;
using Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme.Themes.Basic;
using Volo.Abp.DependencyInjection;
namespace Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme
{
@ -12,7 +15,15 @@ namespace Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme
if (context.Toolbar.Name == StandardToolbars.Main)
{
context.Toolbar.Items.Add(new ToolbarItem(typeof(LanguageSwitch)));
context.Toolbar.Items.Add(new ToolbarItem(typeof(LoginDisplay)));
//TODO: Can we find a different way to understand if authentication was configured or not?
var authenticationStateProvider = context.ServiceProvider
.GetService<AuthenticationStateProvider>();
if (authenticationStateProvider != null)
{
context.Toolbar.Items.Add(new ToolbarItem(typeof(LoginDisplay)));
}
}
return Task.CompletedTask;

27
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LoginDisplay.razor

@ -1,13 +1,12 @@
@using Microsoft.AspNetCore.Components.WebAssembly.Authentication
@using Microsoft.Extensions.Localization
@using Microsoft.Extensions.Localization
@using Volo.Abp.Users
@using Volo.Abp.MultiTenancy
@using global::Localization.Resources.AbpUi
@inherits AbpComponentBase
@inject ICurrentUser CurrentUser
@inject ICurrentTenant CurrentTenant
@inject IJSRuntime JsRuntime
@inject NavigationManager Navigation
@inject SignOutSessionStateManager SignOutManager
@inject IStringLocalizer<AbpUiResource> UiLocalizer
<AuthorizeView>
<Authorized>
@ -38,24 +37,4 @@
<NotAuthorized>
<a class="nav-link" href="authentication/login">@UiLocalizer["Login"]</a>
</NotAuthorized>
</AuthorizeView>
@code{
private async Task NavigateToAsync(string uri, string target = null)
{
if (target == "_blank")
{
await JsRuntime.InvokeVoidAsync("open", uri, target);
}
else
{
Navigation.NavigateTo(uri);
}
}
private async Task BeginSignOut()
{
await SignOutManager.SetSignOutState();
await NavigateToAsync("authentication/logout");
}
}
</AuthorizeView>

49
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/LoginDisplay.razor.cs

@ -1,8 +1,11 @@
using System;
using System.Threading.Tasks;
using JetBrains.Annotations;
using Microsoft.AspNetCore.Components;
using Microsoft.AspNetCore.Components.Authorization;
using Microsoft.AspNetCore.Components.Routing;
using Microsoft.AspNetCore.Components.WebAssembly.Authentication;
using Microsoft.JSInterop;
using Volo.Abp.UI.Navigation;
namespace Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme.Themes.Basic
@ -11,23 +14,32 @@ namespace Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme.Themes.Basic
{
[Inject]
protected IMenuManager MenuManager { get; set; }
[Inject]
protected AuthenticationStateProvider AuthenticationStateProvider { get; set; }
protected ApplicationMenu Menu { get; set; }
[CanBeNull]
protected AuthenticationStateProvider AuthenticationStateProvider;
[CanBeNull]
protected SignOutSessionStateManager SignOutManager;
protected ApplicationMenu Menu { get; set; }
protected override async Task OnInitializedAsync()
{
Menu = await MenuManager.GetAsync(StandardMenus.User);
Navigation.LocationChanged += OnLocationChanged;
AuthenticationStateProvider.AuthenticationStateChanged += async (task) =>
LazyGetService(ref AuthenticationStateProvider);
LazyGetService(ref SignOutManager);
if (AuthenticationStateProvider != null)
{
Menu = await MenuManager.GetAsync(StandardMenus.User);
await InvokeAsync(StateHasChanged);
};
AuthenticationStateProvider.AuthenticationStateChanged += async (task) =>
{
Menu = await MenuManager.GetAsync(StandardMenus.User);
await InvokeAsync(StateHasChanged);
};
}
}
protected virtual void OnLocationChanged(object sender, LocationChangedEventArgs e)
@ -39,5 +51,26 @@ namespace Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme.Themes.Basic
{
Navigation.LocationChanged -= OnLocationChanged;
}
private async Task NavigateToAsync(string uri, string target = null)
{
if (target == "_blank")
{
await JsRuntime.InvokeVoidAsync("open", uri, target);
}
else
{
Navigation.NavigateTo(uri);
}
}
private async Task BeginSignOut()
{
if (SignOutManager != null)
{
await SignOutManager.SetSignOutState();
await NavigateToAsync("authentication/logout");
}
}
}
}

24
framework/src/Volo.Abp.AspNetCore.Components/Volo/Abp/AspNetCore/Components/AbpComponentBase.cs

@ -108,6 +108,18 @@ namespace Volo.Abp.AspNetCore.Components
return reference;
}
protected TService LazyGetService<TService>(ref TService reference) => LazyGetService(typeof(TService), ref reference);
protected TRef LazyGetService<TRef>(Type serviceType, ref TRef reference)
{
if (reference == null)
{
reference = (TRef)ScopedServices.GetService(serviceType);
}
return reference;
}
protected TService LazyGetNonScopedRequiredService<TService>(ref TService reference) => LazyGetNonScopedRequiredService(typeof(TService), ref reference);
@ -120,6 +132,18 @@ namespace Volo.Abp.AspNetCore.Components
return reference;
}
protected TService LazyGetNonScopedService<TService>(ref TService reference) => LazyGetNonScopedService(typeof(TService), ref reference);
protected TRef LazyGetNonScopedService<TRef>(Type serviceType, ref TRef reference)
{
if (reference == null)
{
reference = (TRef)NonScopedServices.GetService(serviceType);
}
return reference;
}
[Inject]
protected IServiceProvider NonScopedServices { get; set; }

26
framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/AbpAspNetCoreMultiTenancyOptions.cs

@ -1,4 +1,9 @@
using Volo.Abp.MultiTenancy;
using System;
using System.Globalization;
using System.Net;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
using Volo.Abp.MultiTenancy;
namespace Volo.Abp.AspNetCore.MultiTenancy
{
@ -9,9 +14,26 @@ namespace Volo.Abp.AspNetCore.MultiTenancy
/// </summary>
public string TenantKey { get; set; }
public Func<HttpContext, Exception, Task> MultiTenancyMiddlewareErrorPageBuilder { get; set; }
public AbpAspNetCoreMultiTenancyOptions()
{
TenantKey = TenantResolverConsts.DefaultTenantKey;
MultiTenancyMiddlewareErrorPageBuilder = async (context, exception)=>
{
context.Response.StatusCode = (int) HttpStatusCode.InternalServerError;;
context.Response.ContentType = "text/html";
var message = exception.Message;
var details = exception is BusinessException businessException ? businessException.Details : string.Empty;
await context.Response.WriteAsync($"<html lang=\"{CultureInfo.CurrentCulture.Name}\"><body>\r\n");
await context.Response.WriteAsync($"<h3>{message}</h3>{details}<br>\r\n");
await context.Response.WriteAsync("</body></html>\r\n");
// Note the 500 spaces are to work around an IE 'feature'
await context.Response.WriteAsync(new string(' ', 500));
};
}
}
}
}

21
framework/src/Volo.Abp.AspNetCore.MultiTenancy/Volo/Abp/AspNetCore/MultiTenancy/MultiTenancyMiddleware.cs

@ -1,10 +1,14 @@
using System;
using System.Globalization;
using System.IO;
using System.Net;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Diagnostics;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Localization;
using Microsoft.AspNetCore.RequestLocalization;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Localization;
using Volo.Abp.MultiTenancy;
@ -16,18 +20,31 @@ namespace Volo.Abp.AspNetCore.MultiTenancy
{
private readonly ITenantConfigurationProvider _tenantConfigurationProvider;
private readonly ICurrentTenant _currentTenant;
private readonly AbpAspNetCoreMultiTenancyOptions _options;
public MultiTenancyMiddleware(
ITenantConfigurationProvider tenantConfigurationProvider,
ICurrentTenant currentTenant)
ICurrentTenant currentTenant,
IOptions<AbpAspNetCoreMultiTenancyOptions> options)
{
_tenantConfigurationProvider = tenantConfigurationProvider;
_currentTenant = currentTenant;
_options = options.Value;
}
public async Task InvokeAsync(HttpContext context, RequestDelegate next)
{
var tenant = await _tenantConfigurationProvider.GetAsync(saveResolveResult: true);
TenantConfiguration tenant;
try
{
tenant = await _tenantConfigurationProvider.GetAsync(saveResolveResult: true);
}
catch (Exception e)
{
await _options.MultiTenancyMiddlewareErrorPageBuilder(context, e);
return;
}
if (tenant?.Id != _currentTenant.Id)
{
using (_currentTenant.Change(tenant?.Id, tenant?.Name))

4
framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/MultiTenancy/FindTenantResultDto.cs

@ -10,5 +10,7 @@ namespace Volo.Abp.AspNetCore.Mvc.MultiTenancy
public Guid? TenantId { get; set; }
public string Name { get; set; }
public bool IsActive { get; set; }
}
}
}

2
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Form/AbpSelectTagHelper.cs

@ -12,6 +12,8 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Form
public string Label { get; set; }
public bool SuppressLabel { get; set; }
public IEnumerable<SelectListItem> AspItems { get; set; }
public AbpFormControlSize Size { get; set; } = AbpFormControlSize.Default;

5
framework/src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Form/AbpSelectTagHelperService.cs

@ -168,6 +168,11 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Form
protected virtual async Task<string> GetLabelAsHtmlAsync(TagHelperContext context, TagHelperOutput output, TagHelperOutput selectTag)
{
if (TagHelper.SuppressLabel)
{
return string.Empty;
}
if (!string.IsNullOrEmpty(TagHelper.Label))
{
var label = new TagBuilder("label");

10
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Pages/Abp/MultiTenancy/AbpTenantAppService.cs

@ -28,10 +28,11 @@ namespace Pages.Abp.MultiTenancy
{
Success = true,
TenantId = tenant.Id,
Name = tenant.Name
Name = tenant.Name,
IsActive = tenant.IsActive
};
}
public async Task<FindTenantResultDto> FindTenantByIdAsync(Guid id)
{
var tenant = await TenantStore.FindAsync(id);
@ -45,8 +46,9 @@ namespace Pages.Abp.MultiTenancy
{
Success = true,
TenantId = tenant.Id,
Name = tenant.Name
Name = tenant.Name,
IsActive = tenant.IsActive
};
}
}
}
}

9
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Pages/Abp/MultiTenancy/TenantSwitchModal.cshtml.cs

@ -20,7 +20,7 @@ namespace Pages.Abp.MultiTenancy
protected AbpAspNetCoreMultiTenancyOptions Options { get; }
public TenantSwitchModalModel(
ITenantStore tenantStore,
ITenantStore tenantStore,
IOptions<AbpAspNetCoreMultiTenancyOptions> options)
{
TenantStore = tenantStore;
@ -49,6 +49,11 @@ namespace Pages.Abp.MultiTenancy
{
var tenant = await TenantStore.FindAsync(Input.Name);
if (tenant == null)
{
throw new UserFriendlyException(L["GivenTenantIsNotExist", Input.Name]);
}
if (!tenant.IsActive)
{
throw new UserFriendlyException(L["GivenTenantIsNotAvailable", Input.Name]);
}
@ -71,4 +76,4 @@ namespace Pages.Abp.MultiTenancy
public string Name { get; set; }
}
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/ar.json

@ -1,6 +1,7 @@
{
"culture": "ar",
"texts": {
"GivenTenantIsNotExist": "المستأجر المحدد غير موجود: {0}",
"GivenTenantIsNotAvailable": "الجهة المحددة غير متاحة: {0}",
"Tenant": "الجهة",
"Switch": "تغيير",
@ -9,4 +10,4 @@
"SwitchTenant": "تغيير الجهة",
"NotSelected": "غير محدد"
}
}
}

1
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/cs.json

@ -1,6 +1,7 @@
{
"culture": "cs",
"texts": {
"GivenTenantIsNotExist": "Vybraný tenant neexistuje: {0}",
"GivenTenantIsNotAvailable": "Zvolený tenant není dostupný: {0}",
"Tenant": "Tenant",
"Switch": "změnit",

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/de-DE.json

@ -1,6 +1,7 @@
{
"culture": "de-DE",
"texts": {
"GivenTenantIsNotExist": "Der angegebene Client ist nicht vorhanden: {0}",
"GivenTenantIsNotAvailable": "Der angegebene Mandant ist nicht verfügbar: {0}",
"Tenant": "Mandant",
"Switch": "wechseln",
@ -9,4 +10,4 @@
"SwitchTenant": "Mandant wechseln",
"NotSelected": "Nicht ausgewählt"
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/de.json

@ -1,6 +1,7 @@
{
"culture": "de",
"texts": {
"GivenTenantIsNotExist": "Der angegebene Client ist nicht vorhanden: {0}",
"GivenTenantIsNotAvailable": "Der angegebene Mandant ist nicht verfügbar: {0}",
"Tenant": "Mandant",
"Switch": "wechseln",
@ -9,4 +10,4 @@
"SwitchTenant": "Mandant wechseln",
"NotSelected": "Nicht ausgewählt"
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en-GB.json

@ -1,6 +1,7 @@
{
"culture": "en-GB",
"texts": {
"GivenTenantIsNotExist": "Given tenant is not exist: {0}",
"GivenTenantIsNotAvailable": "Given tenant is not available: {0}",
"Tenant": "Tenant",
"Switch": "switch",
@ -9,4 +10,4 @@
"SwitchTenant": "Switch tenant",
"NotSelected": "Not selected"
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/en.json

@ -1,6 +1,7 @@
{
"culture": "en",
"texts": {
"GivenTenantIsNotExist": "Given tenant is not exist: {0}",
"GivenTenantIsNotAvailable": "Given tenant is not available: {0}",
"Tenant": "Tenant",
"Switch": "switch",
@ -9,4 +10,4 @@
"SwitchTenant": "Switch tenant",
"NotSelected": "Not selected"
}
}
}

1
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/es-mx.json

@ -1,6 +1,7 @@
{
"culture": "es-MX",
"texts": {
"GivenTenantIsNotExist": "El inquilino {0} no existe",
"GivenTenantIsNotAvailable": "El inquilino {0} no está disponible",
"Tenant": "Inquilino",
"Switch": "cambiar",

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/es.json

@ -1,6 +1,7 @@
{
"culture": "es",
"texts": {
"GivenTenantIsNotExist": "El inquilino {0} no existe",
"GivenTenantIsNotAvailable": "El inquilino {0} no está disponible",
"Tenant": "Inquilino",
"Switch": "cambiar",
@ -9,4 +10,4 @@
"SwitchTenantHint": "Deje en blanco el campo nombre para cambiar el lado del host.",
"NotSelected": "No seleccionado"
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/fi.json

@ -1,6 +1,7 @@
{
"culture": "fi",
"texts": {
"GivenTenantIsNotExist": "Annettua vuokralaista ei ole olemassa: {0}",
"GivenTenantIsNotAvailable": "Annettua vuokralaista ei ole saatavilla: {0}",
"Tenant": "Vuokralainen",
"Switch": "vaihtaa",
@ -9,4 +10,4 @@
"SwitchTenant": "Vaihda vuokralainen",
"NotSelected": "Ei valittu"
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/fr.json

@ -1,6 +1,7 @@
{
"culture": "fr",
"texts": {
"GivenTenantIsNotExist": "Adott bérlő nem létezik: {0}",
"GivenTenantIsNotAvailable": "Le Tenant donné n'est pas disponible: {0}",
"Tenant": "Tenant",
"Switch": "Changer",
@ -9,4 +10,4 @@
"SwitchTenant": "Changer le Tenant",
"NotSelected": "Non séléctionné"
}
}
}

13
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/hi.json

@ -0,0 +1,13 @@
{
"culture": "hi",
"texts": {
"GivenTenantIsNotExist": "किरायेदार मौजूद नहीं है: {0}",
"GivenTenantIsNotAvailable": "उपलब्ध किरायेदार उपलब्ध नहीं है: {0}",
"Tenant": "किरायेदार",
"Switch": "स्विच",
"Name": "नाम",
"SwitchTenantHint": "होस्ट फ़ील्ड पर जाने के लिए नाम फ़ील्ड रिक्त छोड़ें।",
"SwitchTenant": "किरायेदार स्विच करें",
"NotSelected": "नहीं चुने गए"
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/hu.json

@ -1,6 +1,7 @@
{
"culture": "hu",
"texts": {
"GivenTenantIsNotExist": "Adott bérlő nem létezik: {0}",
"GivenTenantIsNotAvailable": "A megadott előfizető nem érhető el: {0}",
"Tenant": "Előfizető",
"Switch": "váltás",
@ -9,4 +10,4 @@
"SwitchTenant": "Előfizető váltás",
"NotSelected": "Nincs kiválasztva"
}
}
}

13
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/it.json

@ -0,0 +1,13 @@
{
"culture": "it",
"texts": {
"GivenTenantIsNotExist": "Il tenant specificato non esiste: {0}",
"GivenTenantIsNotAvailable": "Il tenant specificato non è disponibile: {0}",
"Tenant": "Inquilino",
"Switch": "interruttore",
"Name": "Nome",
"SwitchTenantHint": "Lascia vuoto il campo del nome per passare al lato host.",
"SwitchTenant": "Cambia inquilino",
"NotSelected": "Non selezionato"
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/nl.json

@ -1,6 +1,7 @@
{
"culture": "nl",
"texts": {
"GivenTenantIsNotExist": "Opgegeven huurder bestaat niet: {0}",
"GivenTenantIsNotAvailable": "Gegeven klant is niet beschikbaar: {0}",
"Tenant": "Klant",
"Switch": "Schakel over",
@ -9,4 +10,4 @@
"SwitchTenant": "Klant wisselen",
"NotSelected": "Niet geselecteerd"
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/pl-PL.json

@ -1,6 +1,7 @@
{
"culture": "pl-PL",
"texts": {
"GivenTenantIsNotExist": "Podany najemca nie istnieje: {0}",
"GivenTenantIsNotAvailable": "Podany tenant jest niedostępny: {0}",
"Tenant": "Tenant",
"Switch": "zmień",
@ -8,4 +9,4 @@
"SwitchTenantHint": "Pozostaw pole nazwy puste, aby przełączyć się na stronę hosta.",
"NotSelected": "Nie wybrano"
}
}
}

3
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/pt-BR.json

@ -1,6 +1,7 @@
{
"culture": "pt-BR",
"texts": {
"GivenTenantIsNotExist": "O inquilino dado não existe: {0}",
"GivenTenantIsNotAvailable": "Inquilino não está disponível: {0}",
"Tenant": "Inquilino",
"Switch": "trocar",
@ -9,4 +10,4 @@
"SwitchTenant": "Alterar Inquilino",
"NotSelected": "Não selecionado"
}
}
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save