diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/nl.json b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/nl.json
new file mode 100644
index 0000000000..2e3971055e
--- /dev/null
+++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/nl.json
@@ -0,0 +1,12 @@
+{
+ "culture": "nl",
+ "texts": {
+ "GivenTenantIsNotAvailable": "Gegeven klant is niet beschikbaar: {0}",
+ "Tenant": "Klant",
+ "Switch": "Schakel over",
+ "Name": "Name",
+ "SwitchTenantHint": "Laat het naamveld leeg om over te schakelen naar de hostkant.",
+ "SwitchTenant": "Klant wisselen",
+ "NotSelected": "Niet geselecteerd"
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/Resources/AbpDdd/nl.json b/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/Resources/AbpDdd/nl.json
new file mode 100644
index 0000000000..cc4412cffc
--- /dev/null
+++ b/framework/src/Volo.Abp.Ddd.Application.Contracts/Volo/Abp/Application/Localization/Resources/AbpDdd/nl.json
@@ -0,0 +1,6 @@
+{
+ "culture": "nl",
+ "texts": {
+ "MaxResultCountExceededExceptionMessage": "{0} kan niet meer dan {1} zijn! Vergroot {2}.{3} op de server om een groter resultaat toe te staan."
+ }
+}
diff --git a/framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/Localization/nl.json b/framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/Localization/nl.json
new file mode 100644
index 0000000000..923671e885
--- /dev/null
+++ b/framework/src/Volo.Abp.Emailing/Volo/Abp/Emailing/Localization/nl.json
@@ -0,0 +1,23 @@
+{
+ "culture": "nl",
+ "texts": {
+ "DisplayName:Abp.Mailing.DefaultFromAddress": "Standard vanaf adres",
+ "DisplayName:Abp.Mailing.DefaultFromDisplayName": "Standaard vanaf weergave naam",
+ "DisplayName:Abp.Mailing.Smtp.Host": "Host",
+ "DisplayName:Abp.Mailing.Smtp.Port": "Poort",
+ "DisplayName:Abp.Mailing.Smtp.UserName": "Gebruiker naam",
+ "DisplayName:Abp.Mailing.Smtp.Password": "wachtwoord",
+ "DisplayName:Abp.Mailing.Smtp.Domain": "Domein",
+ "DisplayName:Abp.Mailing.Smtp.EnableSsl": "SSL toestaan",
+ "DisplayName:Abp.Mailing.Smtp.UseDefaultCredentials": "Gebruik standaard inloggegevens",
+ "Description:Abp.Mailing.DefaultFromAddress": "Standard vanaf adres",
+ "Description:Abp.Mailing.DefaultFromDisplayName": "Standaard vanaf weergave naam",
+ "Description:Abp.Mailing.Smtp.Host": "De naam of het IP-adres van de host die wordt gebruikt voor SMTP-transacties.",
+ "Description:Abp.Mailing.Smtp.Port": "De poort die wordt gebruikt voor SMTP-transacties.",
+ "Description:Abp.Mailing.Smtp.UserName": "Gebruikersnaam gekoppeld aan de inloggegevens.",
+ "Description:Abp.Mailing.Smtp.Password": "Het wachtwoord voor de gebruikersnaam die bij de inloggegevens hoort.",
+ "Description:Abp.Mailing.Smtp.Domain": "Het domein of de computernaam die de inloggegevens verifieert.",
+ "Description:Abp.Mailing.Smtp.EnableSsl": "Of de SmtpClient Secure Sockets Layer (SSL) gebruikt om de verbinding te versleutelen.",
+ "Description:Abp.Mailing.Smtp.UseDefaultCredentials": "Of de standaard inloggegevens worden verzonden met verzoeken."
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.Localization/Volo/Abp/Localization/Resources/AbpLocalization/nl.json b/framework/src/Volo.Abp.Localization/Volo/Abp/Localization/Resources/AbpLocalization/nl.json
new file mode 100644
index 0000000000..dd11c28ea0
--- /dev/null
+++ b/framework/src/Volo.Abp.Localization/Volo/Abp/Localization/Resources/AbpLocalization/nl.json
@@ -0,0 +1,7 @@
+{
+ "culture": "nl",
+ "texts": {
+ "DisplayName:Abp.Localization.DefaultLanguage": "Standaard taal",
+ "Description:Abp.Localization.DefaultLanguage": "De standaardtaal van de applicatie."
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/Localization/Resource/nl.json b/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/Localization/Resource/nl.json
new file mode 100644
index 0000000000..279f79e1dc
--- /dev/null
+++ b/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/Localization/Resource/nl.json
@@ -0,0 +1,6 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Menu:Administration": "Administratie"
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/nl.json b/framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/nl.json
new file mode 100644
index 0000000000..b44ea3794b
--- /dev/null
+++ b/framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/nl.json
@@ -0,0 +1,63 @@
+{
+ "culture": "nl",
+ "texts": {
+ "InternalServerErrorMessage": "Er is een interne fout opgetreden tijdens uw verzoek!",
+ "ValidationErrorMessage": "Uw verzoek is niet geldig!",
+ "ValidationNarrativeErrorMessageTitle": "Tijdens de validatie zijn de volgende fouten gedetecteerd.",
+ "DefaultErrorMessage": "er is een fout opgetreden!",
+ "DefaultErrorMessageDetail": "Foutdetails niet verzonden door server.",
+ "DefaultErrorMessage401": "U bent niet geverifieerd!",
+ "DefaultErrorMessage401Detail": "U moet inloggen om deze bewerking uit te voeren.",
+ "DefaultErrorMessage403": "U bent niet geautoriseerd!",
+ "DefaultErrorMessage403Detail": "U mag deze bewerking niet uitvoeren!",
+ "DefaultErrorMessage404": "Bron niet gevonden!",
+ "DefaultErrorMessage404Detail": "De gevraagde bron kan niet worden gevonden op de server!",
+ "EntityNotFoundErrorMessage": "Er is geen entiteit {0} met id = {1}!",
+ "Languages": "Talen",
+ "Error": "Fout",
+ "AreYouSure": "Bent u zeker?",
+ "Cancel": "Annuleren",
+ "Yes": "Ja",
+ "No": "Nee",
+ "Ok": "Ok",
+ "Close": "Sluiten",
+ "Save": "Opslaan",
+ "SavingWithThreeDot": "Opslaan...",
+ "Actions": "Acties",
+ "Delete": "Verwijder",
+ "Edit": "Bewerk",
+ "Refresh": "Ververs",
+ "Language": "Taal",
+ "LoadMore": "Meer laden",
+ "ProcessingWithThreeDot": "Verwerken...",
+ "LoadingWithThreeDot": "Laden...",
+ "Welcome": "Welkom",
+ "Login": "Log in",
+ "Register": "Registreren",
+ "Logout": "Afmelden",
+ "Submit": "Verzenden",
+ "Back": "Terug",
+ "PagerSearch": "Zoeken",
+ "PagerNext": "Volgende",
+ "PagerPrevious": "Vorige",
+ "PagerFirst": "Eerste",
+ "PagerLast": "Laatste",
+ "PagerInfo": "Toont _START_ tot _END_ van _TOTAL_ vermeldingen",
+ "PagerInfo{0}{1}{2}": "{0} tot {1} van {2} vermeldingen weergeven",
+ "PagerInfoEmpty": "Toont 0 tot 0 van 0 vermeldingen",
+ "PagerInfoFiltered": "(gefilterd uit in totaal _MAX_ vermeldingen)",
+ "NoDataAvailableInDatatable": "Geen gegevens beschikbaar",
+ "PagerShowMenuEntries": "Toon _MENU_-vermeldingen",
+ "DatatableActionDropdownDefaultText": "Acties",
+ "ChangePassword": "Verander wachtwoord",
+ "PersonalInfo": "Mijn profiel",
+ "AreYouSureYouWantToCancelEditingWarningMessage": "U heeft nog niet-opgeslagen wijzigingen.",
+ "UnhandledException": "Onverwerkte uitzondering!",
+ "401Message": "Ongeautoriseerd",
+ "403Message": "Verboden",
+ "404Message": "Pagina niet gevonden",
+ "500Message": "Interne Server Fout",
+ "GoHomePage": "Ga naar de homepage",
+ "GoBack": "Ga terug"
+ }
+}
diff --git a/framework/src/Volo.Abp.Validation/Volo/Abp/Validation/Localization/nl.json b/framework/src/Volo.Abp.Validation/Volo/Abp/Validation/Localization/nl.json
new file mode 100644
index 0000000000..ff0edfa54d
--- /dev/null
+++ b/framework/src/Volo.Abp.Validation/Volo/Abp/Validation/Localization/nl.json
@@ -0,0 +1,34 @@
+{
+ "culture": "nl",
+ "texts": {
+ "'{0}' and '{1}' do not match.": "'{0}' en '{1}' komen niet overeen.",
+ "The {0} field is not a valid credit card number.": "Het veld {0} is geen geldig krediet kaartnummer.",
+ "{0} is not valid.": "{0} is niet geldig.",
+ "The {0} field is not a valid e-mail address.": "Het veld {0} is geen geldig e-mailadres.",
+ "The {0} field only accepts files with the following extensions: {1}": "Het veld {0} accepteert alleen bestanden met de volgende extensies: {1}",
+ "The field {0} must be a string or array type with a maximum length of '{1}'.": "Het veld {0} moet een tekenreeks- of arraytype zijn met een maximale lengte van '{1}'.",
+ "The field {0} must be a string or array type with a minimum length of '{1}'.": "Het veld {0} moet een tekenreeks- of arraytype zijn met een minimale lengte van '{1}'.",
+ "The {0} field is not a valid phone number.": "Het veld {0} is geen geldig telefoonnummer.",
+ "The field {0} must be between {1} and {2}.": "Het veld {0} moet tussen {1} en {2} liggen.",
+ "The field {0} must match the regular expression '{1}'.": "Het veld {0} moet overeenkomen met de reguliere expressie '{1}'.",
+ "The {0} field is required.": "Het veld {0} is verplicht.",
+ "The field {0} must be a string with a maximum length of {1}.": "Het veld {0} moet een tekenreeks zijn met een maximale lengte van {1}.",
+ "The field {0} must be a string with a minimum length of {2} and a maximum length of {1}.": "Het veld {0} moet een tekenreeks zijn met een minimale lengte van {2} en een maximale lengte van {1}.",
+ "The {0} field is not a valid fully-qualified http, https, or ftp URL.": "Het veld {0} is geen geldige, volledig gekwalificeerde http-, https- of ftp-URL.",
+ "The field {0} is invalid.": "Het veld {0} is ongeldig.",
+ "ThisFieldIsNotAValidCreditCardNumber.": "Dit veld is geen geldig krediet kaartnummer.",
+ "ThisFieldIsNotValid.": "Dir veld is ongeldig.",
+ "ThisFieldIsNotAValidEmailAddress.": "Dit veld is geen geldig e-mail adres.",
+ "ThisFieldOnlyAcceptsFilesWithTheFollowingExtensions:{0}": "Dit veld accepteert alleen bestanden met de volgende extensies: {0}",
+ "ThisFieldMustBeAStringOrArrayTypeWithAMaximumLengthOf{0}": "Dit veld moet een tekenreeks- of arraytype zijn met een maximale lengte van '{0}'.",
+ "ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf{0}": "Dit veld moet een tekenreeks- of arraytype zijn met een minimale lengte van '{0}'.",
+ "ThisFieldIsNotAValidPhoneNumber.": "Dit veld is geen geldig telefoonnummer.",
+ "ThisFieldMustBeBetween{0}And{1}": "Dit veld moet tussen {0} en {1} liggen.",
+ "ThisFieldMustMatchTheRegularExpression{0}": "Dit veld moet overeenkomen met de reguliere expressie '{0}'.",
+ "ThisFieldIsRequired.": "Dit veld is verplicht.",
+ "ThisFieldMustBeAStringWithAMaximumLengthOf{0}": "Dit veld moet een tekenreeks zijn met een maximale lengte van {0}.",
+ "ThisFieldMustBeAStringWithAMinimumLengthOf{1}AndAMaximumLengthOf{0}": "Dit veld moet een tekenreeks zijn met een minimale lengte van {1} en een maximale lengte van {0}.",
+ "ThisFieldIsNotAValidFullyQualifiedHttpHttpsOrFtpUrl": "Dit veld is geen geldige, volledig gekwalificeerde http-, https- of ftp-URL.",
+ "ThisFieldIsInvalid.": "Dit veld is ongeldig."
+ }
+}
\ No newline at end of file
diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/Localization/Resource/nl.json b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/Localization/Resource/nl.json
new file mode 100644
index 0000000000..526e7203a7
--- /dev/null
+++ b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/Localization/Resource/nl.json
@@ -0,0 +1,7 @@
+{
+ "culture": "nl",
+ "texts": {
+ "BirthDate": "Geboortedatum",
+ "Value1": "Waarde een"
+ }
+}
\ No newline at end of file
diff --git a/framework/test/Volo.Abp.Emailing.Tests/Volo/Abp/Emailing/Localization/nl.json b/framework/test/Volo.Abp.Emailing.Tests/Volo/Abp/Emailing/Localization/nl.json
new file mode 100644
index 0000000000..2a19df7473
--- /dev/null
+++ b/framework/test/Volo.Abp.Emailing.Tests/Volo/Abp/Emailing/Localization/nl.json
@@ -0,0 +1,6 @@
+{
+ "culture": "nl",
+ "texts": {
+ "hello": "hallo"
+ }
+}
\ No newline at end of file
diff --git a/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/CountryNames/nl.json b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/CountryNames/nl.json
new file mode 100644
index 0000000000..849d1b0df6
--- /dev/null
+++ b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/CountryNames/nl.json
@@ -0,0 +1,7 @@
+{
+ "culture": "nl",
+ "texts": {
+ "USA": "Verenigde Staten van Amerika",
+ "Brazil": "Brazilië"
+ }
+}
\ No newline at end of file
diff --git a/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/Validation/nl.json b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/Validation/nl.json
new file mode 100644
index 0000000000..5875cf7a12
--- /dev/null
+++ b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/Validation/nl.json
@@ -0,0 +1,7 @@
+{
+ "culture": "nl",
+ "texts": {
+ "ThisFieldIsRequired": "Dit veld is verplicht",
+ "MaxLenghtErrorMessage": "Dit veld mag maximaal '{0}' tekens bevatten"
+ }
+}
\ No newline at end of file
diff --git a/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Source/nl.json b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Source/nl.json
new file mode 100644
index 0000000000..0e0ba67ef6
--- /dev/null
+++ b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Source/nl.json
@@ -0,0 +1,11 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Hello {0}.": "Hallo {0}.",
+ "Car": "Auto",
+ "CarPlural": "Auto's",
+ "MaxLenghtErrorMessage": "De lengte van dit veld mag maximaal '{0}' tekens zijn",
+ "Universe": "Universum",
+ "FortyTwo": "Tweeënveertig"
+ }
+}
\ No newline at end of file
diff --git a/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/SourceExt/nl.json b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/SourceExt/nl.json
new file mode 100644
index 0000000000..7e7354d11b
--- /dev/null
+++ b/framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/SourceExt/nl.json
@@ -0,0 +1,6 @@
+{
+ "culture": "nl",
+ "texts": {
+ "SeeYou": "Tot ziens"
+ }
+}
\ No newline at end of file
diff --git a/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/Localization/Resources/nl.json b/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/Localization/Resources/nl.json
new file mode 100644
index 0000000000..64a1a70124
--- /dev/null
+++ b/modules/account/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/Localization/Resources/nl.json
@@ -0,0 +1,45 @@
+{
+ "culture": "nl",
+ "texts": {
+ "UserName": "Gebruikersnaam",
+ "EmailAddress": "E-mailadres",
+ "UserNameOrEmailAddress": "Gebruikersnaam of e-mail adres",
+ "Password": "Wachtwoord",
+ "RememberMe": "Herinner me",
+ "UseAnotherServiceToLogin": "Gebruik een andere dienst om in te loggen",
+ "UserLockedOutMessage": "Het gebruikersaccount is geblokkeerd vanwege ongeldige inlogpogingen. Wacht even en probeer het opnieuw.",
+ "InvalidUserNameOrPassword": "Ongeldige gebruikersnaam of wachtwoord!",
+ "LoginIsNotAllowed": "U mag niet inloggen! U moet uw e-mailadres / telefoonnummer bevestigen.",
+ "SelfRegistrationDisabledMessage": "Zelfregistratie is uitgeschakeld voor deze applicatie. Neem contact op met de applicatiebeheerder om een nieuwe gebruiker te registreren.",
+ "LocalLoginDisabledMessage": "Lokale aanmelding is uitgeschakeld voor deze applicatie.",
+ "Login": "Log in",
+ "Cancel": "Annuleer",
+ "Register": "Registreer",
+ "AreYouANewUser": "Bent u een nieuwe gebruiker?",
+ "AlreadyRegistered": "Al geregistreerd?",
+ "InvalidLoginRequest": "Ongeldig inlogverzoek",
+ "ThereAreNoLoginSchemesConfiguredForThisClient": "Er zijn geen aanmeldingsschema's geconfigureerd voor deze client.",
+ "LogInUsingYourProviderAccount": "Log in met uw {0} -account",
+ "DisplayName:CurrentPassword": "Huidig wachtwoord",
+ "DisplayName:NewPassword": "Nieuw wachtwoord",
+ "DisplayName:NewPasswordConfirm": "Bevestig nieuw wachtwoord",
+ "PasswordChangedMessage": "Uw wachtwoord is met succes veranderd.",
+ "DisplayName:UserName": "Gebruikersnaam",
+ "DisplayName:Email": "E-mail",
+ "DisplayName:Name": "Naam",
+ "DisplayName:Surname": "Achternaam",
+ "DisplayName:Password": "Wachtwoord",
+ "DisplayName:EmailAddress": "E-mail adres",
+ "DisplayName:PhoneNumber": "Telefoonnummer",
+ "PersonalSettings": "Persoonlijke instellingen",
+ "PersonalSettingsSaved": "Persoonlijke instellingen opgeslagen",
+ "PasswordChanged": "wachtwoord veranderd",
+ "NewPasswordConfirmFailed": "Bevestig het nieuwe wachtwoord a.u.b..",
+ "Manage": "Beheer",
+ "ManageYourProfile": "Beheer uw profiel",
+ "DisplayName:Abp.Account.IsSelfRegistrationEnabled": "Is zelfregistratie ingeschakeld",
+ "Description:Abp.Account.IsSelfRegistrationEnabled": "Of een gebruiker het account zelf kan registreren.",
+ "DisplayName:Abp.Account.EnableLocalLogin": "Verifieer met een lokaal account",
+ "Description:Abp.Account.EnableLocalLogin": "Geeft aan of de server gebruikers toestaat zich te verifiëren met een lokaal account."
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Localization/Resources/Blogging/ApplicationContracts/nl.json b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Localization/Resources/Blogging/ApplicationContracts/nl.json
new file mode 100644
index 0000000000..7e34f16b79
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Localization/Resources/Blogging/ApplicationContracts/nl.json
@@ -0,0 +1,14 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Permission:Blogging": "Blog",
+ "Permission:Blogs": "Blogs",
+ "Permission:Posts": "Posts",
+ "Permission:Tags": "Tags",
+ "Permission:Comments": "Kommentaar",
+ "Permission:Management": "Beheer",
+ "Permission:Edit": "Bewerk",
+ "Permission:Create": "Maak aan",
+ "Permission:Delete": "Verwijder"
+ }
+}
\ No newline at end of file
diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Localization/Resources/nl.json b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Localization/Resources/nl.json
new file mode 100644
index 0000000000..6548e4c0a8
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Localization/Resources/nl.json
@@ -0,0 +1,49 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Menu:Blogs": "Blogs",
+ "Menu:BlogManagement": "Blog Beheer",
+ "Title": "Titel",
+ "Delete": "Verwijder",
+ "Reply": "Antwoord",
+ "ReplyTo": "Antwoord aan {0}",
+ "ContinueReading": "Lees verder",
+ "DaysAgo": "{0} dagen geleden",
+ "YearsAgo": "{0} jaar geleden",
+ "MonthsAgo": "{0} maanden geleden",
+ "WeeksAgo": "{0} weken geleden",
+ "MinutesAgo": "{0} minuten geleden",
+ "SecondsAgo": "{0} seconden geleden",
+ "HoursAgo": "{0} uur geleden",
+ "Now": "nu",
+ "Content": "Inhoud",
+ "SeeAll": "Alles zien",
+ "PopularTags": "Populaire tags",
+ "WiewsWithCount": "{0} keer bekeken",
+ "LastPosts": "Laatste berichten",
+ "LeaveComment": "Laat commentaar achter",
+ "TagsInThisArticle": "Tags in dit artikel",
+ "Posts": "Berichten",
+ "Edit": "Bewerk",
+ "BLOG": "BLOG",
+ "CommentDeletionWarningMessage": "Reactie wordt verwijderd.",
+ "PostDeletionWarningMessage": "Berich wordt verwijderd.",
+ "BlogDeletionWarningMessage": "Blog wordt verwijderd.",
+ "AreYouSure": "Weet u het zeker?",
+ "CommentWithCount": "{0} reacties",
+ "Comment": "Reactie",
+ "ShareOnTwitter": "Delen op Twitter",
+ "CoverImage": "Omslagfoto",
+ "CreateANewPost": "Maak een nieuw bericht",
+ "CreateANewBlog": "Maak een nieuwe Blog",
+ "WhatIsNew": "Wat is nieuw?",
+ "Name": "Naam",
+ "ShortName": "Korte naam",
+ "CreationTime": "Creatie tijd",
+ "Description": "Beschrijving",
+ "Blogs": "Blogs",
+ "Tags": "Tags",
+ "ShareOn": "Delen op",
+ "TitleLengthWarning": "Houd uw titel kleiner dan 60 tekens om SEO-vriendelijk te zijn!"
+ }
+}
\ No newline at end of file
diff --git a/modules/docs/app/VoloDocs.Web/Localization/Resources/VoloDocs/Web/nl.json b/modules/docs/app/VoloDocs.Web/Localization/Resources/VoloDocs/Web/nl.json
new file mode 100644
index 0000000000..b787dd4474
--- /dev/null
+++ b/modules/docs/app/VoloDocs.Web/Localization/Resources/VoloDocs/Web/nl.json
@@ -0,0 +1,10 @@
+{
+ "culture": "nl",
+ "texts": {
+ "DocsTitle": "VoloDocs",
+ "WelcomeVoloDocs": "Welkom bij de VoloDocs!",
+ "NoProjectWarning": "Er is nog geen gedefinieerd project!",
+ "CreateYourFirstProject": "Klik hier om uw eerste project te starten",
+ "NoProject": "Geen project!"
+ }
+}
\ No newline at end of file
diff --git a/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/nl.json b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/nl.json
new file mode 100644
index 0000000000..1be125e486
--- /dev/null
+++ b/modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/nl.json
@@ -0,0 +1,37 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Permission:DocumentManagement": "Document beheer",
+ "Permission:Projects": "Projecten",
+ "Permission:Edit": "Bewerk",
+ "Permission:Delete": "Verwijder",
+ "Permission:Create": "Maak aan",
+ "Permission:Documents": "Documenten",
+ "Menu:DocumentManagement": "Documenten",
+ "Menu:ProjectManagement": "Projecten",
+ "CreateANewProject": "Maak een nieuw project",
+ "Edit": "Bewerk",
+ "Create": "Maak aan",
+ "Pull": "Pull",
+ "Projects": "Projecten",
+ "Name": "Naam",
+ "ShortName": "Korte naam",
+ "DocumentStoreType": "DocumentStoreType",
+ "Format": "Formaat",
+ "ShortNameInfoText": "Wordt gebruikt voor unieke URL.",
+ "DisplayName:Name": "Naam",
+ "DisplayName:ShortName": "Korte naam",
+ "DisplayName:Format": "Formaat",
+ "DisplayName:DefaultDocumentName": "Standaard documentnaam",
+ "DisplayName:NavigationDocumentName": "Navigatiedocumentnaam",
+ "DisplayName:MinimumVersion": "Minimale versie",
+ "DisplayName:MainWebsiteUrl": "URL van hoofdwebsite",
+ "DisplayName:LatestVersionBranchName": "Laatste versie vertakkingsnaam",
+ "DisplayName:GitHubRootUrl": "GitHub root URL",
+ "DisplayName:GitHubAccessToken": "GitHub-toegangstoken",
+ "DisplayName:GitHubUserAgent": "GitHub-gebruikersagent",
+ "DisplayName:All": "Pull all",
+ "DisplayName:LanguageCode": "Taalcode",
+ "DisplayName:Version": "Versie"
+ }
+}
\ No newline at end of file
diff --git a/modules/docs/src/Volo.Docs.Domain/Volo/Docs/Localization/Domain/nl.json b/modules/docs/src/Volo.Docs.Domain/Volo/Docs/Localization/Domain/nl.json
new file mode 100644
index 0000000000..56e6800f9f
--- /dev/null
+++ b/modules/docs/src/Volo.Docs.Domain/Volo/Docs/Localization/Domain/nl.json
@@ -0,0 +1,31 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Documents": "Documenten",
+ "BackToWebsite": "Terug naar website",
+ "Contributors": "Bijdragers",
+ "ShareOn": "Delen op",
+ "Version": "Versie",
+ "Edit": "Bewerk",
+ "LastEditTime": "Laatste bewerking",
+ "Delete": "Verwijder",
+ "ClearCache": "Cache wissen",
+ "ClearCacheConfirmationMessage": "Weet u zeker dat u alle caches voor het project \"{0}\" wilt wissen?",
+ "InThisDocument": "In dit document",
+ "GoToTop": "Ga naar boven",
+ "Projects": "Project (en)",
+ "NoProjectWarning": "Er zijn nog geen projecten!",
+ "DocumentNotFound": "Oeps, het opgevraagde document is niet gevonden!",
+ "NavigationDocumentNotFound": "Deze versie heeft geen navigatiedocument!",
+ "DocumentNotFoundInSelectedLanguage": "Document in de gewenste taal is niet gevonden. Document in de standaardtaal wordt weergegeven.",
+ "FilterTopics": "Filter onderwerpen",
+ "FullSearch": "Zoek in documenten",
+ "Volo.Docs.Domain:010001": "Elastisch zoeken is niet ingeschakeld.",
+ "MultipleVersionDocumentInfo": "Dit document heeft meerdere versies. Selecteer de opties die het beste bij u passen.",
+ "New": "Nieuw",
+ "Upd": "Bew",
+ "NewExplanation": "Gemaakt in de afgelopen twee weken.",
+ "UpdatedExplanation": "Bewerkt in de afgelopen twee weken.",
+ "Volo.Docs.Domain:010002": "KorteNaam {ShortName} bestaat al."
+ }
+}
diff --git a/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain.Shared/Volo/Abp/FeatureManagement/Localization/Domain/nl.json b/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain.Shared/Volo/Abp/FeatureManagement/Localization/Domain/nl.json
new file mode 100644
index 0000000000..8bb07d32d4
--- /dev/null
+++ b/modules/feature-management/src/Volo.Abp.FeatureManagement.Domain.Shared/Volo/Abp/FeatureManagement/Localization/Domain/nl.json
@@ -0,0 +1,7 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Features": "Functies",
+ "NoFeatureFoundMessage": "Er is geen functie beschikbaar."
+ }
+}
\ No newline at end of file
diff --git a/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/Localization/nl.json b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/Localization/nl.json
new file mode 100644
index 0000000000..84ed47efce
--- /dev/null
+++ b/modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/Localization/nl.json
@@ -0,0 +1,104 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Menu:IdentityManagement": "Identiteitsbeheer",
+ "Users": "Gebruikers",
+ "NewUser": "Nieuwe Gebruiker",
+ "UserName": "Gebruikersnaam",
+ "EmailAddress": "E-mail adres",
+ "PhoneNumber": "Telefoonnummer",
+ "UserInformations": "Gebruikers informatie",
+ "DisplayName:IsDefault": "Standaard",
+ "DisplayName:IsStatic": "Statisch",
+ "DisplayName:IsPublic": "Openbaar",
+ "Roles": "Roles",
+ "Password": "Wachtwoord",
+ "PersonalInfo": "Mijn profiel",
+ "PersonalSettings": "Persoonlijke instellingen",
+ "UserDeletionConfirmationMessage": "Gebruiker '{0}' wordt verwijderd. Bevestigt U dat?",
+ "RoleDeletionConfirmationMessage": "Rol '{0}' wordt verwijderd. Bevestigt U dat?",
+ "DisplayName:RoleName": "Rol naam",
+ "DisplayName:UserName": "Gebruikersnaam",
+ "DisplayName:Name": "Naam",
+ "DisplayName:Surname": "Achternaam",
+ "DisplayName:Password": "Wachtwoord",
+ "DisplayName:Email": "E-mail adres",
+ "DisplayName:PhoneNumber": "Telefoonnummer",
+ "DisplayName:TwoFactorEnabled": "Twee-factor-verificatie",
+ "DisplayName:LockoutEnabled": "Account vergrendelen na mislukte inlogpogingen",
+ "NewRole": "Nieuwe rol",
+ "RoleName": "Rol naam",
+ "CreationTime": "Creatie tijd",
+ "Permissions": "Rechten",
+ "DisplayName:CurrentPassword": "Huidig wachtwoord",
+ "DisplayName:NewPassword": "Nieuw wachtwoord",
+ "DisplayName:NewPasswordConfirm": "Bevestig nieuw wachtwoord",
+ "PasswordChangedMessage": "Uw wachtwoord is met succes veranderd.",
+ "PersonalSettingsSavedMessage": "Uw persoonlijke instellingen zijn succesvol opgeslagen.",
+ "Identity.DefaultError": "Er is een onbekende fout opgetreden.",
+ "Identity.ConcurrencyFailure": "Optimistische gelijktijdigheidsfout, object is gewijzigd.",
+ "Identity.DuplicateEmail": "E-mail '{0}' is al in gebruik.",
+ "Identity.DuplicateRoleName": "De rolnaam '{0}' is al in gebruik.",
+ "Identity.DuplicateUserName": "Gebruikersnaam '{0}' is al in gebruik.",
+ "Identity.InvalidEmail": "E-mail' {0} 'is ongeldig.",
+ "Identity.InvalidPasswordHasherCompatibilityMode": "De opgegeven PasswordHasherCompatibilityMode is ongeldig.",
+ "Identity.InvalidPasswordHasherIterationCount": "De iteratietelling moet een positief geheel getal zijn.",
+ "Identity.InvalidRoleName": "Rolnaam '{0}' is ongeldig.",
+ "Identity.InvalidToken": "Ongeldig token.",
+ "Identity.InvalidUserName": "Gebruikersnaam '{0}' is ongeldig, mag alleen letters of cijfers bevatten.",
+ "Identity.LoginAlreadyAssociated": "Er bestaat al een gebruiker met deze login.",
+ "Identity.PasswordMismatch": "Incorrect wachtwoord.",
+ "Identity.PasswordRequiresDigit": "Wachtwoorden moeten minimaal één cijfer bevatten ('0' - '9').",
+ "Identity.PasswordRequiresLower": "Wachtwoorden moeten minstens één kleine letter bevatten ('a' - 'z').",
+ "Identity.PasswordRequiresNonAlphanumeric": "Wachtwoorden moeten minimaal één niet-alfanumeriek teken bevatten.",
+ "Identity.PasswordRequiresUpper": "Wachtwoorden moeten ten minste één hoofdletter bevatten ('A' - 'Z').",
+ "Identity.PasswordTooShort": "Wachtwoorden moeten uit minimaal {0} tekens bestaan.",
+ "Identity.RoleNotFound": "Rol {0} bestaat niet.",
+ "Identity.UserAlreadyHasPassword": "Gebruiker heeft al een wachtwoord ingesteld.",
+ "Identity.UserAlreadyInRole": "Gebruiker al in rol '{0}'.",
+ "Identity.UserLockedOut": "Gebruiker is geblokkeerd.",
+ "Identity.UserLockoutNotEnabled": "Lockout is niet ingeschakeld voor deze gebruiker.",
+ "Identity.UserNameNotFound": "Gebruiker {0} bestaat niet.",
+ "Identity.UserNotInRole": "Gebruiker speelt geen rol '{0}'.",
+ "Identity.PasswordConfirmationFailed": "Wachtwoord komt niet overeen met de wachtwoord bevestiging.",
+ "Identity.StaticRoleRenamingErrorMessage": "Statische rollen kunnen niet worden hernoemd.",
+ "Identity.StaticRoleDeletionErrorMessage": "Statische rollen kunnen niet worden verwijderd.",
+ "Volo.Abp.Identity:010001": "U kunt uw eigen account niet verwijderen!",
+ "Permission:IdentityManagement": "Identiteitsbeheer",
+ "Permission:RoleManagement": "Rolbeheer",
+ "Permission:Create": "Maak aan",
+ "Permission:Edit": "Verander",
+ "Permission:Delete": "Verwijder",
+ "Permission:ChangePermissions": "Wijzig de rechten",
+ "Permission:UserManagement": "Gebruikersbeheer",
+ "Permission:UserLookup": "Gebruiker opzoeken",
+ "DisplayName:Abp.Identity.Password.RequiredLength": "Vereiste lengte",
+ "DisplayName:Abp.Identity.Password.RequiredUniqueChars": "Vereist aantal unieke tekens",
+ "DisplayName:Abp.Identity.Password.RequireNonAlphanumeric": "Vereist niet-alfanumeriek teken",
+ "DisplayName:Abp.Identity.Password.RequireLowercase": "Vereist kleine letter",
+ "DisplayName:Abp.Identity.Password.RequireUppercase": "Vereist hoofdletter",
+ "DisplayName:Abp.Identity.Password.RequireDigit": "Vereist cijfer",
+ "DisplayName:Abp.Identity.Lockout.AllowedForNewUsers": "Ingeschakeld voor nieuwe gebruikers",
+ "DisplayName:Abp.Identity.Lockout.LockoutDuration": "Blokkeringsduur (seconden)",
+ "DisplayName:Abp.Identity.Lockout.MaxFailedAccessAttempts": "Max mislukte toegangspogingen",
+ "DisplayName:Abp.Identity.SignIn.RequireConfirmedEmail": "Vereist bevestigde e-mail",
+ "DisplayName:Abp.Identity.SignIn.EnablePhoneNumberConfirmation": "Schakel telefoonnummerbevestiging in",
+ "DisplayName:Abp.Identity.SignIn.RequireConfirmedPhoneNumber": "Vereist bevestigd telefoonnummer",
+ "DisplayName:Abp.Identity.User.IsUserNameUpdateEnabled": "Is gebruikersnaam aktualisering ingeschakeld",
+ "DisplayName:Abp.Identity.User.IsEmailUpdateEnabled": "Is e-mail aktualisering ingeschakeld",
+ "Description:Abp.Identity.Password.RequiredLength": "De minimale lengte die een wachtwoord moet hebben.",
+ "Description:Abp.Identity.Password.RequiredUniqueChars": "Het minimumaantal unieke tekens dat een wachtwoord moet bevatten.",
+ "Description:Abp.Identity.Password.RequireNonAlphanumeric": "Als wachtwoorden een niet-alfanumeriek teken moeten bevatten.",
+ "Description:Abp.Identity.Password.RequireLowercase": "Als wachtwoorden een ASCII-teken in kleine letters moeten bevatten.",
+ "Description:Abp.Identity.Password.RequireUppercase": "Als wachtwoorden een ASCII-teken in hoofdletters moeten bevatten.",
+ "Description:Abp.Identity.Password.RequireDigit": "Als wachtwoorden een cijfer moeten bevatten.",
+ "Description:Abp.Identity.Lockout.AllowedForNewUsers": "Of een nieuwe gebruiker kan worden geblokkeerd.",
+ "Description:Abp.Identity.Lockout.LockoutDuration": "De duur dat een gebruiker wordt geblokkeerd wanneer een blokkering optreedt.",
+ "Description:Abp.Identity.Lockout.MaxFailedAccessAttempts": "Het aantal mislukte toegangspogingen dat is toegestaan voordat een gebruiker wordt geblokkeerd, ervan uitgaande dat blokkering is ingeschakeld.",
+ "Description:Abp.Identity.SignIn.RequireConfirmedEmail": "Of een bevestigd e-mail adres vereist is om in te loggen.",
+ "Description:Abp.Identity.SignIn.EnablePhoneNumberConfirmation": "Of het telefoonnummer kan worden bevestigd door de gebruiker.",
+ "Description:Abp.Identity.SignIn.RequireConfirmedPhoneNumber": "Of een bevestigd telefoonnummer vereist is om in te loggen.",
+ "Description:Abp.Identity.User.IsUserNameUpdateEnabled": "Of de gebruikersnaam kan worden bijgewerkt door de gebruiker.",
+ "Description:Abp.Identity.User.IsEmailUpdateEnabled": "Of de e-mail door de gebruiker kan worden veranderd."
+ }
+}
diff --git a/modules/identityserver/src/Volo.Abp.IdentityServer.Domain.Shared/Volo/Abp/IdentityServer/Localization/Resources/nl.json b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain.Shared/Volo/Abp/IdentityServer/Localization/Resources/nl.json
new file mode 100644
index 0000000000..01cccfc567
--- /dev/null
+++ b/modules/identityserver/src/Volo.Abp.IdentityServer.Domain.Shared/Volo/Abp/IdentityServer/Localization/Resources/nl.json
@@ -0,0 +1,12 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Volo.IdentityServer:DuplicateIdentityResourceName": "Identiteitsbronnaam bestaat al: {Name}",
+ "Volo.IdentityServer:DuplicateApiResourceName": "API-bronnaam bestaat al: {Name}",
+ "Volo.IdentityServer:DuplicateClientId": "ClientId bestaat al: {ClientId}",
+ "UserLockedOut": "Het gebruikersaccount is geblokkeerd vanwege ongeldige inlogpogingen. Wacht even en probeer het opnieuw.",
+ "InvalidUserNameOrPassword": "ongeldige gebruikersnaam of wachtwoord!",
+ "LoginIsNotAllowed": "U mag niet inloggen! U moet uw e-mailadres / telefoonnummer bevestigen.",
+ "InvalidUsername": "Ongeldige gebruikersnaam of wachtwoord!"
+ }
+}
\ No newline at end of file
diff --git a/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain.Shared/Volo/Abp/PermissionManagement/Localization/Domain/nl.json b/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain.Shared/Volo/Abp/PermissionManagement/Localization/Domain/nl.json
new file mode 100644
index 0000000000..13291c5798
--- /dev/null
+++ b/modules/permission-management/src/Volo.Abp.PermissionManagement.Domain.Shared/Volo/Abp/PermissionManagement/Localization/Domain/nl.json
@@ -0,0 +1,10 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Permissions": "Rechten",
+ "OnlyProviderPermissons": "Alleen deze provider",
+ "All": "Alle",
+ "SelectAllInAllTabs": "Verleen alle rechten",
+ "SelectAllInThisTab": "Selecteer alles"
+ }
+}
\ No newline at end of file
diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo/Abp/SettingManagement/Localization/Resources/AbpSettingManagement/nl.json b/modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo/Abp/SettingManagement/Localization/Resources/AbpSettingManagement/nl.json
new file mode 100644
index 0000000000..2fecb32ec6
--- /dev/null
+++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo/Abp/SettingManagement/Localization/Resources/AbpSettingManagement/nl.json
@@ -0,0 +1,7 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Settings": "Instellingen",
+ "SuccessfullySaved": "Succesvol opgeslagen"
+ }
+}
\ No newline at end of file
diff --git a/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo/Abp/TenantManagement/Localization/Resources/nl.json b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo/Abp/TenantManagement/Localization/Resources/nl.json
new file mode 100644
index 0000000000..c187ad3976
--- /dev/null
+++ b/modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo/Abp/TenantManagement/Localization/Resources/nl.json
@@ -0,0 +1,22 @@
+{
+ "culture": "nl",
+ "texts": {
+ "Menu:TenantManagement": "Klanten beheer",
+ "Tenants": "Klanten",
+ "NewTenant": "Nieuwe klant",
+ "TenantName": "Naam klant",
+ "DisplayName:TenantName": "Naam klant",
+ "TenantDeletionConfirmationMessage": "Klant '{0}' wordt verwijderd. Bevestigt u dat?",
+ "ConnectionStrings": "Connection Strings",
+ "DisplayName:DefaultConnectionString": "Standaard Connection String",
+ "DisplayName:UseSharedDatabase": "Gebruik de gedeelde database",
+ "Permission:TenantManagement": "Klanten beheer",
+ "Permission:Create": "Maak aan",
+ "Permission:Edit": "Bewerk",
+ "Permission:Delete": "Verwijder",
+ "Permission:ManageConnectionStrings": "Beheer connection strings",
+ "Permission:ManageFeatures": "Beheer functies",
+ "DisplayName:AdminEmailAddress": "Admin e-mail adres",
+ "DisplayName:AdminPassword": "Admin wachtwoord"
+ }
+}
\ No newline at end of file