diff --git a/.github/workflows/auto-pr.yml b/.github/workflows/auto-pr.yml index 526cfc144b..39fb6199ad 100644 --- a/.github/workflows/auto-pr.yml +++ b/.github/workflows/auto-pr.yml @@ -1,4 +1,4 @@ -name: Merge branch dev with rel-8.3 +name: Merge branch rel-9.0 with rel-8.3 on: push: branches: @@ -7,7 +7,7 @@ permissions: contents: read jobs: - merge-dev-with-rel-8-3: + merge-rel-9-0-with-rel-8-3: permissions: contents: write # for peter-evans/create-pull-request to create branch pull-requests: write # for peter-evans/create-pull-request to create a PR @@ -15,7 +15,7 @@ jobs: steps: - uses: actions/checkout@v2 with: - ref: dev + ref: rel-9.0 - name: Reset promotion branch run: | git fetch origin rel-8.3:rel-8.3 @@ -24,13 +24,15 @@ jobs: uses: peter-evans/create-pull-request@v3 with: branch: auto-merge/rel-8-3/${{github.run_number}} - title: Merge branch dev with rel-8.3 - body: This PR generated automatically to merge dev with rel-8.3. Please review the changed files before merging to prevent any errors that may occur. + title: Merge branch rel-9.0 with rel-8.3 + body: This PR generated automatically to merge rel-9.0 with rel-8.3. Please review the changed files before merging to prevent any errors that may occur. reviewers: maliming + draft: true token: ${{ github.token }} - name: Merge Pull Request env: GH_TOKEN: ${{ secrets.BOT_SECRET }} run: | + gh pr ready gh pr review auto-merge/rel-8-3/${{github.run_number}} --approve - gh pr merge auto-merge/rel-8-3/${{github.run_number}} --merge --auto --delete-branch \ No newline at end of file + gh pr merge auto-merge/rel-8-3/${{github.run_number}} --merge --auto --delete-branch diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/sv.json new file mode 100644 index 0000000000..d5b7e713d9 --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Account/Localization/Resources/sv.json @@ -0,0 +1,18 @@ +{ + "culture": "sv", + "texts": { + "Account": "ABP-konto - Logga in och registrera dig | ABP.IO", + "Welcome": "Välkommen", + "UseOneOfTheFollowingLinksToContinue": "Använd någon av följande länkar för att fortsätta", + "FrameworkHomePage": "Ramverkets startsida", + "FrameworkDocumentation": "Dokumentation av ramverk", + "OfficialBlog": "Officiell blogg", + "CommercialHomePage": "Kommersiell hemsida", + "CommercialSupportWebSite": "Webbplats för kommersiellt stöd", + "CommunityWebSite": "ABP:s gemensamma webbplats", + "ManageAccount": "Mitt konto | ABP.IO", + "ManageYourProfile": "Hantera din profil", + "ReturnToApplication": "Återgå till ansökan", + "IdentityUserNotAvailable:Deleted": "Den här e-postadressen är inte tillgänglig. Anledning till detta: Redan raderad." + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/sv.json new file mode 100644 index 0000000000..f6b113895b --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Admin/Localization/Resources/sv.json @@ -0,0 +1,640 @@ +{ + "culture": "sv", + "texts": { + "Permission:Organizations": "Organisationer", + "Permission:Manage": "Hantera organisationer", + "Permission:DiscountRequests": "Rabattförfrågningar", + "Permission:DiscountManage": "Hantera rabattförfrågningar", + "Permission:Disable": "Avaktivera", + "Permission:Enable": "Aktivera", + "Permission:EnableSendEmail": "Aktivera skicka e-post", + "Permission:SendEmail": "Skicka e-post", + "Permission:NpmPackages": "NPM-paket", + "Permission:NugetPackages": "Nuget-paket", + "Permission:Maintenance": "Underhåll", + "Permission:Maintain": "Behålla", + "Permission:ClearCaches": "Rensa cacheminnen", + "Permission:Modules": "Moduler", + "Permission:Packages": "Paket", + "Permission:Edit": "Redigera", + "Permission:Delete": "Radera", + "Permission:Create": "Skapa", + "Permission:Accounting": "Redovisning", + "Permission:Accounting:Quotation": "Offert", + "Permission:Accounting:Invoice": "Faktura", + "Menu:Organizations": "Organisationer", + "Menu:Accounting": "Redovisning", + "Menu:Packages": "Paket", + "Menu:DiscountRequests": "Rabattförfrågningar", + "NpmPackageDeletionWarningMessage": "Detta NPM-paket kommer att raderas. Kan du bekräfta det?", + "NugetPackageDeletionWarningMessage": "Detta Nuget-paket kommer att raderas. Kan du bekräfta det?", + "ModuleDeletionWarningMessage": "Denna modul kommer att raderas. Kan du bekräfta det?", + "Name": "Namn", + "DisplayName": "Visa namn", + "ShortDescription": "Kort beskrivning", + "NameFilter": "Namn", + "CreationTime": "Skapelsetid", + "IsPro": "Är pro", + "IsFreeToActiveLicenseOwners": "Gratis för licensinnehavare", + "ShowOnModuleList": "Visa på modullistan", + "EfCoreConfigureMethodName": "Konfigurera metodnamn", + "IsProFilter": "Är pro", + "ApplicationType": "Typ av applikation", + "Target": "Mål", + "TargetFilter": "Mål", + "ModuleClass": "Modul klass", + "NugetPackageTarget.DomainShared": "Delad domän", + "NugetPackageTarget.Domain": "Domän", + "NugetPackageTarget.Application": "Tillämpning", + "NugetPackageTarget.ApplicationContracts": "Ansökan Kontrakt", + "NugetPackageTarget.HttpApi": "Http Api", + "NugetPackageTarget.HttpApiClient": "Http Api-klient", + "NugetPackageTarget.Web": "Webb", + "NugetPackageTarget.EntityFrameworkCore": "DeleteAllEntityFramework Core", + "NugetPackageTarget.MongoDB": "MongoDB", + "Edit": "Redigera", + "Delete": "Radera", + "Refresh": "Uppdatera", + "NpmPackages": "NPM-paket", + "NugetPackages": "Nuget-paket", + "NpmPackageCount": "Antal NPM-paket", + "NugetPackageCount": "Antal Nuget-paket", + "Module": "Moduler", + "ModuleInfo": "Modulinformation", + "CreateANpmPackage": "Skapa ett NPM-paket", + "CreateAModule": "Skapa en modul", + "CreateANugetPackage": "Skapa ett Nuget-paket", + "AddNew": "Lägg till ny", + "PackageAlreadyExist{0}": "\"{0}\"-paketet är redan tillagt.", + "ModuleAlreadyExist{0}": "\"{0}\"-modulen är redan tillagd.", + "ClearCache": "Rensa cache", + "SuccessfullyCleared": "Framgångsrikt rensad", + "Menu:NpmPackages": "NPM-paket", + "Menu:Modules": "Moduler", + "Menu:Maintenance": "Underhåll", + "Menu:NugetPackages": "NuGet-paket", + "CreateAnOrganization": "Skapa en organisation", + "Organizations": "Organisationer", + "LongName": "Långt namn", + "LicenseType": "Typ av licens", + "MissingLicenseTypeField": "Fältet för licenstyp är obligatoriskt!", + "LicenseStartTime": "Licensens starttid", + "LicenseEndTime": "Licensens sluttid", + "AllowedDeveloperCount": "Tillåtet antal utvecklare", + "UserNameOrEmailAddress": "Användarnamn eller e-postadress", + "AddOwner": "Lägg till ägare", + "UserName": "Användarnamn", + "Email": "E-post", + "Developers": "Utvecklare", + "AddDeveloper": "Lägg till utvecklare", + "Create": "Skapa", + "UserNotFound": "Användaren hittades inte", + "{0}WillBeRemovedFromDevelopers": "{0} Kommer att tas bort från utvecklare, bekräftar du?", + "{0}WillBeRemovedFromOwners": "{Kommer att tas bort från ägarna, bekräftar du?", + "{0}WillBeRemovedFromMembers": "{0} Kommer att tas bort från medlemmar, bekräftar du?", + "Computers": "Datorer", + "UniqueComputerId": "Unikt dator-ID", + "LastSeenDate": "Datum för senaste observation", + "{0}Computer{1}WillBeRemovedFromRecords": "Dator för {0} ({1}) kommer att tas bort från register", + "OrganizationDeletionWarningMessage": "Organisationen kommer att raderas", + "DeletingLastOwnerWarningMessage": "En organisation måste ha minst en ägare! Därför kan du inte ta bort den här ägaren", + "This{0}AlreadyExistInThisOrganization": "Denna {0} finns redan i denna organisation", + "AreYouSureYouWantToDeleteAllComputers": "Är du säker på att du vill radera alla datorer?", + "DeleteAll": "Radera alla", + "DoYouWantToCreateNewUser": "Vill du skapa en ny användare?", + "MasterModules": "Master-moduler", + "OrganizationName": "Organisationens namn", + "CreationDate": "Datum för skapande", + "LicenseStartDate": "Licensens startdatum", + "LicenseEndDate": "Licensens slutdatum", + "OrganizationNamePlaceholder": "Organisationens namn...", + "TotalQuestionCountPlaceholder": "Totalt antal frågor...", + "RemainingQuestionCountPlaceholder": "Kvarstående frågor är...", + "LicenseTypePlaceholder": "Licenstyp...", + "CreationDatePlaceholder": "Datum för skapande...", + "LicenseStartDatePlaceholder": "Licensens startdatum...", + "LicenseEndDatePlaceholder": "Licensens slutdatum...", + "UsernameOrEmail": "Användarnamn eller e-post", + "UsernameOrEmailPlaceholder": "Användarnamn eller e-post...", + "Member": "Ledamot", + "PurchaseOrderNo": "Inköpsorder nr", + "QuotationDate": "Datum för offert", + "CompanyName": "Företagets namn", + "CompanyAddress": "Företagets adress", + "Price": "Pris", + "DiscountText": "Rabatt text", + "DiscountQuantity": "Rabatt kvantitet", + "DiscountPrice": "Rabatterat pris", + "Quotation": "Offert", + "ExtraText": "Extra text", + "ExtraAmount": "Extra belopp", + "DownloadQuotation": "Ladda ner offert", + "Invoice": "Faktura", + "TaxNumber": "Skattenummer", + "InvoiceNumber": "Fakturanummer", + "InvoiceDate": "Fakturadatum", + "InvoiceNote": "Fakturanota", + "Quantity": "Kvantitet", + "AddProduct": "Lägg till produkt", + "AddProductWarning": "Du måste lägga till produkt!", + "TotalPrice": "Totalt pris", + "Generate": "Generera", + "MissingQuantityField": "Kvantitetsfältet är obligatoriskt!", + "MissingPriceField": "Prisfältet är obligatoriskt!", + "CodeUsageStatus": "Status", + "Country": "Land", + "DeveloperCount": "Antal utvecklare", + "RequestCode": "Begär kod", + "WebSite": "Webbplats", + "GithubUsername": "Användarnamn för Github", + "PhoneNumber": "Telefonnummer", + "ProjectDescription": "Projektbeskrivning", + "Referrer": "Hänvisare", + "DiscountRequests": "Begäran om rabatt", + "Copylink": "Kopiera länk", + "Disable": "Avaktivera", + "Enable": "Aktivera", + "EnableSendEmail": "Aktivera skicka e-post", + "SendEmail": "Skicka e-post", + "SuccessfullyDisabled": "Framgångsrikt avaktiverad", + "SuccessfullyEnabled": "Framgångsrikt aktiverad", + "EmailSent": "Skickad e-post", + "SuccessfullySent": "Framgångsrikt skickat", + "SuccessfullyDeleted": "Framgångsrikt raderad", + "DiscountRequestDeletionWarningMessage": "Begäran om rabatt kommer att raderas", + "BusinessType": "Typ av verksamhet", + "TotalQuestionCount": "Totalt antal frågor", + "RemainingQuestionCount": "Antal återstående frågor", + "TotalQuestionMustBeGreaterWarningMessage": "TotalQuestionCount måste vara större än RemainingQuestionCount !", + "QuestionCountsMustBeGreaterThanZero": "TotalQuestionCount och RemainingQuestionCount måste vara noll eller större än noll!", + "UnlimitedQuestionCount": "Obegränsat antal frågor", + "Notes": "Anteckningar", + "Menu:Community": "Gemenskap", + "Menu:Posts": "Inlägg", + "Wait": "Vänta", + "Approve": "Godkänna", + "Reject": "Avvisa", + "Details": "Detaljer", + "Url": "Url", + "Title": "Titel", + "ContentSource": "Källa för innehåll", + "Status": "Status", + "ReadPost": "Läs inlägget", + "PostHasBeenWaiting": "Posten har väntat", + "PostHasBeenApproved": "Inlägget har godkänts", + "PostHasBeenRejected": "Inlägget har avvisats", + "Permission:Community": "Gemenskap", + "Permission:CommunityPost": "Post", + "Link": "Link", + "Enum:ContentSource:0": "Github", + "Enum:ContentSource:1": "Extern", + "Enum:Status:0": "Väntar på", + "Enum:Status:1": "Avvisad", + "Enum:Status:2": "Godkänd", + "Summary": "Sammanfattning", + "AuthorName": "Författarens namn", + "CoverImage": "Omslagsbild", + "RemoveCacheConfirmationMessage": "Är du säker på att du tar bort cacheminnet för \"{0}\" -posten?", + "SuccessfullyRemoved": "Framgångsrikt rensad", + "RemoveCache": "Ta bort cachen", + "Language": "Språk", + "Optional": "Valfritt", + "CreatePostLanguageInfo": "Det språk som inlägget är skrivet på", + "Enum:ContentSource:2": "Videoinlägg", + "VideoPreview": "Förhandsgranskning av video", + "VideoPreviewErrorMessage": "Angiven video-URL kunde inte hämtas från Youtube. Detta kan orsakas av att videon är privat eller att den angivna webbadressen inte är tillgänglig.", + "DeleteCoverImage": "Ta bort omslagsbild", + "DeleteCoverImageConfirmationMessage": "Är du säker att du vill ta bort omslagsbilden för \"{0}\"?", + "DeleteCoverImageSuccessMessage": "Omslagsbilden har raderats framgångsrikt", + "PaymentsOf": "Betalningar av", + "ShowPaymentsOfOrganization": "Betalningar", + "Date": "Datum", + "Products": "Produkter", + "TotalAmount": "Totalt belopp", + "Currency": "Valuta", + "Gateway": "Gateway", + "State": "Stat", + "FailReason": "Orsak till misslyckande", + "ReIndexAllPosts": "Återindexera alla inlägg", + "ReIndexAllPostsConfirmationMessage": "Är du säker på att du vill indexera om alla inlägg?", + "SuccessfullyReIndexAllPosts": "Alla inlägg har framgångsrikt indexerats om.", + "Permission:FullSearch": "Fulltextsökning", + "Menu:CliAnalytics": "CLI Analys", + "Menu:Reports": "Dynamiska rapporter", + "TemplateName": "Mallens namn", + "TemplateVersion": "Mallversion", + "DatabaseProvider": "Databasleverantör", + "IsTiered": "Är Tiered", + "ProjectName": "Projektets namn", + "Username": "Användarens namn", + "Tool": "Verktyg", + "Command": "Kommando", + "UiFramework": "Ramverk för användargränssnitt", + "Options": "Alternativ", + "CliAnalytics": "Cli Analytics", + "Reports": "Dynamiska rapporter", + "Permission:CliAnalyticses": "Cli Analyticses", + "Permission:CliAnalytics": "Cli Analytics", + "Permission:Reports": "Rapporter", + "Search": "Sök", + "ClearFilter": "Rensa filter", + "LicensePrivateKey": "Licens privat nyckel", + "LicensePublicKey": "Licens offentlig nyckel", + "ApiKey": "NuGet API-nyckel", + "ShowInvoiceRequestsOfOrganization": "Fakturaförfrågningar", + "ShowQuestionsOfOrganization": "Frågor och svar", + "Question": "Fråga", + "Open": "Öppna", + "Questions": "Frågor och svar", + "InvoiceRequests": "Fakturaförfrågningar", + "Address": "Adress", + "TaxNo": "Skatt Nej", + "Permission:InvoiceRequest": "Fakturabegäran", + "Permission:Question": "Fråga", + "AddNoteSuccessMessage": "Not framgångsrikt tillagd", + "NameSurname": "Namn Efternamn", + "Note": "Notera", + "Add": "Lägg till", + "ProjectDownloads": "Projektnedladdningar", + "ShowProjectDownloadsOfOrganization": "Projektnedladdningar", + "ShowAuditLogsOfOrganization": "Granskningsloggar", + "Enum:EntityChangeType:0": "Skapad", + "Enum:EntityChangeType:1": "Uppdaterad", + "Enum:EntityChangeType:2": "Borttagen", + "TenantId": "Hyresgäst-ID", + "ChangeTime": "Ändra tid", + "EntityTypeFullName": "Fullständigt namn på entitetstyp", + "AuditLogsFor{0}Organization": "Granskningsloggar för organisationen \"{0}\"", + "Permission:EntityChange": "Förändring av enhet", + "Permission:ProjectDownload": "Projekt Ladda ner", + "Permission:PaymentRequest": "Begäran om betalning", + "CreatorEmailAddress": "E-postadress till skaparen", + "EmailSendDate": "Datum för e-postutskick", + "PaymentRequestsFor{0}Organization": "Betalningsförfrågningar för \"{0}\" organisation", + "PaymentDetails": "Betalningsinformation", + "PaymentProduct": "Betalning Produkt", + "ProductName": "Produktens namn", + "Code": "Kod", + "GenerateInvoice": "Generera faktura", + "ExportOrganizationsToExcel": "Exportera till Excel", + "ThisExtensionIsNotAllowed": "Denna förlängning är inte tillåten.", + "TheFileIsTooLarge": "Filen är för stor!", + "PostDeletionConfirmationMessage": "Är du säker på att du vill radera det här inlägget?", + "ChooseCoverImage": "Välj en omslagsbild...", + "Menu:Quotation": "Offert", + "Menu:Invoice": "Faktura", + "Menu:Quotation/Invoice": "Offert/faktura", + "Menu:PaymentRequests": "Betalningsförfrågningar", + "Permission:PaymentRequests": "Betalningsförfrågningar", + "PaymentRequests": "Betalningsförfrågningar", + "Creator": "Skapare", + "ExtraProperties": "Extra egenskaper", + "Organization": "Organisation", + "Waiting": "Väntar på", + "Completed": "Färdigställd", + "Failed": "Misslyckades", + "PaymentRequestDeletionWarningMessage": "Denna betalningsbegäran kommer att raderas. Kan du bekräfta det?", + "Payment": "Betalning", + "AddPayment": "Lägg till betalning", + "Enum:PurchaseType:1": "Ny licens", + "Enum:PurchaseType:2": "Licensförlängning", + "Enum:PurchaseType:3": "Uppgradering av licens", + "Enum:PurchaseType:4": "Ytterligare utvecklare", + "LicenceType": "Typ av licens", + "PurchaseType": "Typ av köp", + "ReceiptNo": "Kvitto nr", + "PaymentTime": "Betalningstid", + "ProductPrice": "Produktens pris", + "AdditionalDeveloper": "Ytterligare utvecklare", + "ThisPaymentHasBeenAlreadyUsed": "Denna betalning har redan använts", + "PaymentTimeCannotBeFutureTime": "Betalningstid kan inte vara en framtida tid!", + "SaveAndDownload": "Spara och ladda ner", + "BillingInfo": "Faktureringsinformation", + "DeleteInvoice": "Ta bort faktura", + "PaymentStateSetTo": "Betalningsstatus satt till {0}", + "ChangeState": "Ändra tillstånd", + "Permission:TrialLicense": "Trial-licens", + "Menu:TrialLicenses": "Preliminära licenser", + "TrialLicenses": "Preliminära licenser", + "UserNameFilter": "Användarnamn", + "TrialLicenseStatusFilter": "Status", + "TrialLicenseStartDateFilter": "Startdatum", + "TrialLicenseEndDateFilter": "Slutdatum", + "FirstName": "Förnamn", + "LastName": "Efternamn", + "StartDate": "Startdatum", + "EndDate": "Slutdatum", + "PurchasedDate": "Inköpsdatum", + "OrganizationDetail": "Organisation Detalj", + "TrialLicenseStatus": "Status för provlicens", + "TrialLicenseDetail": "Trial licens detalj", + "AcceptsMarketingCommunications": "Marknadskommunikation", + "PurposeOfUsage": "Syfte med användningen", + "CountryName": "Landets namn", + "CompanySize": "Företagets storlek", + "DetailTrialLicense": "Detaljer", + "Requested": "Begärd", + "Activated": "Aktiverad", + "PurchasedToNormalLicense": "Köpte", + "Expired": "Utgått", + "TrialLicenseDeletionWarningMessage": "Är du säker på att du vill ta bort testlicensen? Testlicens, organisation och supportkonton kommer att raderas!", + "LicenseCategoryFilter": "Licenskategori", + "Permission:SendWelcomeEmail": "Skicka välkomstmejl", + "SendWelcomeEmail": "Skicka välkomstmejl", + "SendWelcomeEmailWarningMessage": "Är du säker på att du vill skicka ett välkomstmeddelande till organisationens medlemmar?", + "SendWelcomeEmailSuccessMessage": "Välkomstmejl skickat framgångsrikt!", + "Activate": "Aktivera", + "ActivateTrialLicenseWarningMessage": " När du aktiverar en testlicens skickas ett välkomstmeddelande till användaren. Vill du aktivera det?", + "ActivateTrialLicenseSuccessMessage": "Aktiverades framgångsrikt och välkomstmeddelandet skickades till organisationsmedlemmarna.", + "PaymentRequestId": "Betalningsbegäran Id", + "AdditionalDeveloperCount": "Ytterligare antal utvecklare", + "LicensePrice": "Licenspris", + "PurchaseDate": "Köpdatum", + "IsAbpBookDownloaded": "Mastering ABP Book nedladdad?", + "IsMasteringAbpBookDownloadEnabled": "ABP Book nedladdning aktiverad", + "Permission:Accounting:CustomPaymentLinkGenerator": "Anpassad betalningslänk", + "CustomPaymentLink": "Anpassad betalningslänk", + "Menu:CustomPaymentLink": "Anpassad betalningslänk", + "Amount": "Belopp", + "GenerateCustomPaymentLink": "Generera anpassad betalningslänk", + "GeneratedPaymentLink": "Genererad betalningslänk", + "CopyText": "Kopiera text", + "Permission:CommunityEvents": "Händelser", + "Menu:Events": "Händelser", + "Events": "Händelser", + "EventType": "Typ av händelse", + "Number": "Antal", + "RegistrationURL": "URL för registrering", + "URL": "URL", + "EventDeletionConfirmationMessage": "Är du säker på att du vill ta bort den här händelsen?", + "Enum:EventType:0": "Samtal med gemenskapen", + "CreateAnEvent": "Skapa ett evenemang", + "Permission:CommunitySpeakers": "Högtalare", + "CreateASpeaker": "Skapa en högtalare", + "Speakers": "Högtalare", + "Image": "Bild", + "GithubURL": "URL till Github", + "SpeakerDeletionConfirmationMessage": "Är du säker att du vill ta bort den här högtalaren?", + "Menu:Speakers": "Högtalare", + "ChooseSpeakerImage": "Välj en högtalarbild...", + "SpeakerImage": "Bild på högtalare", + "AddSpeaker": "Lägg till högtalare", + "ShowPurchaseItemsOfOrganizations": "Köp av föremål", + "Enum:OrganizationPurchaseState:0": "Ej levererad", + "Enum:OrganizationPurchaseState:1": "Levereras", + "PurchaseItems": "Köp av föremål", + "SuccessfullyUpdated": "Framgångsrikt uppdaterad", + "SuccessfullyAdded": "Framgångsrikt tillagt", + "PurchaseState": "Status för köp", + "ShowBetweenDayCount": "Visa mellan dagarna", + "PurchaseOrder": "Inköpsorder", + "ShowCreateInvoiceOfOrganization": "Skapa faktura", + "ShowCreateQuotationOfOrganization": "Skapa offert/faktura", + "BookDiscounts": "Boka rabatter", + "Permission:BookDiscount": "Boka rabatt", + "Menu:BookDiscounts": "Boka rabatter", + "BookType": "Typ av bok", + "PurchasePlatform": "Plattform för inköp", + "StartTime": "Starttid", + "EndTime": "Sluttid", + "CreateABookDiscount": "Skapa en bokrabatt", + "BookDiscountDeletionConfirmationMessage": "Är du säker på att du vill ta bort den här bokrabatten?", + "CustomPaymentFlexSwitchDescription": "Med licens", + "AllowFeatureUpgradeOnLicenseExpire": "Tillåt uppgradering av funktioner när licensen löper ut", + "Deleted{0}": "[Raderad {0}]", + "Tags": "Etiketter", + "SetTagsInfo": "Taggar ska vara kommaseparerade. Exempel: CSharp, Entity Framework", + "RejectTrialLicenseWarningMessage": "Är du säker på att du vill avvisa denna begäran om testlicens?", + "ExportToExcel": "Exportera till Excel", + "OverallTotalPrice": "Totalt totalpris", + "OverallDiscountPrice": "Totalt Rabatt Pris", + "OverallDiscountText": "Övergripande rabatt Text", + "SelectReport": "- Välj rapport", + "NoDataAvailable": "Inga uppgifter tillgängliga", + "StatisticsOfCachedContents": "Statistik över cachelagrat NuGet-paketinnehåll för nuget.abp.io", + "Compact": "Kompakt", + "EditSettings": "Redigera inställningar", + "CurrentEstimatedSize": "Nuvarande uppskattad storlek", + "CurrentEntryCount": "Aktuellt antal poster", + "TotalHits": "Totalt antal träffar", + "TotalMisses": "Totalt antal missar", + "NoResponseFrom": "Inget svar från", + "ContentCacheSlidingExpirationByDay": "Innehållscache glidande utgång per dag", + "MaxDaysForCaching": "Max dagar för cachelagring", + "Enabled": "Aktiverad", + "Menu:NugetPackagesContentCache": "NuGet Cache", + "NugetPackagesContentCache": "NuGet Cache för innehåll", + "SlidingExpritionByDayInfo": "Hämtar eller anger hur länge en cache-post kan vara inaktiv (t.ex. inte åtkommen) innan den tas bort. Detta kommer inte att förlänga postens livstid utöver den absoluta expirationen.", + "MaxDaysForCachingInfo": "Hämtar eller anger en absolut utgångstid i förhållande till nu.", + "CurrentEstimatedSizeInfo": "Anger en uppskattad summa av alla NuGet-pakets innehållsstorlek som för närvarande finns i minnescachen", + "CurrentEntryCountInfo": "Anger antalet instanser som för närvarande finns i minnescachen.", + "TotalHitsInfo": "Anger det totala antalet cache-missar. En cacheträff inträffar när en fil begärs från en cache och cachen kan uppfylla denna begäran.", + "TotalMissesInfo": "Anger det totala antalet träffar i cachen. En cachemiss är när cacheminnet inte innehåller det begärda innehållet.", + "Permission:VersionHistory": "Versionshistorik", + "Caches": "Cacher", + "VersionHistories": "Versionshistorik", + "Version": "Version", + "PublishDate": "Publiceringsdatum", + "IsStableVersion": "Stabil version", + "IsActive": "Aktiv", + "NewVersion": "Ny version", + "VersionHistoryDeletionConfirmationMessage": "Är du säker på att du vill radera den här versionen?", + "CreateAbpConsultantLogoInfo": "Maximal filstorlek: 1MB
Filtyper som stöds: jpg, jpeg, png, SVG, WebP", + "UrlCode": "Url-kod", + "Clear": "Klart", + "Permission:AbpConsultant": "ABP Konsult", + "Menu:AbpConsultants": "ABP Konsulter", + "CreateAbpConsultant": "Skapa ABP-konsult", + "UrlCodeIsNotAvailable": "Url-koden används av en annan ABP-konsult.", + "AbpConsultants": "ABP Konsulter", + "AbpConsultant": "ABP Konsult", + "AbpConsultantEdit": "Edit ABP Konsult", + "AbpConsultantCreate": "Skapa ABP-konsult", + "WhoWeAreItem": "Vilka vi är Artikel", + "FieldIsRequired": "{0} krävs.", + "FieldIsNotValid": " {0} är inte giltig.", + "InterestedLicenseType": "Intresserad licenstyp", + "MoveWaitList": "Flytta till väntelista", + "CommunityLinkTitle": "Öppna på community-webbplatsen", + "CommunityLink": "Link", + "IpAddress": "Ip-adress", + "ReloadFromSource": "Ladda om från källan", + "ReloadFromSourceConfirmationMessage": "Detta inlägg kommer att uppdateras från \"{0}\". Vill du fortsätta?", + "UnitPrice": "Enhetspris", + "OverallDiscountAmount": "Totalt rabattbelopp", + "DiscountAmount": "Diskonteringsbelopp", + "FullChangeHistory": "Fullständig ändringshistorik", + "Permission:RefreshReleaseLogs": "Uppdatera release-loggar", + "ReleaseLogs": "Release Loggar", + "AuthorUserName": "Användarnamn för författare", + "Type": "Typ", + "TotalDiscount": "Total rabatt", + "SubTotal": "Subtotal", + "TotalDue": "Totalt förfallna", + "QuotationNo": "Offert nr", + "ValidTill": "Giltig till och med", + "QuotationNote": "Citatanteckning", + "QuotationTemplate.Address:": "Adress:", + "QuotationTemplate.VATNo:": "Momsregistreringsnummer", + "QuotationTemplate.Phone:": "Telefon:", + "QuotationTemplate.E-mail:": "E-post:", + "QuotationTemplate.Quotation": "Offert", + "QuotationTemplate.To": "Till", + "QuotationTemplate.Details": "Detaljer", + "QuotationTemplate.QuotationNo:": "Citat #:", + "QuotationTemplate.IssueDate:": "Utgivningsdatum:", + "QuotationTemplate.ValidTill:": "Giltig till:", + "QuotationTemplate.ValidDays": "{0} dagar", + "QuotationTemplate.Description": "Beskrivning", + "QuotationTemplate.UnitPrice": "Enhetspris", + "QuotationTemplate.Qty": "Antal", + "QuotationTemplate.Discount": "Rabatt", + "QuotationTemplate.Total": "Totalt", + "QuotationTemplate.Notes": "Anteckningar", + "QuotationTemplate.SubTotal:": "Sub Total :", + "QuotationTemplate.Tax/VAT:": "Skatt / moms (%{0}) :", + "QuotationTemplate.TotalDiscount:": "Total rabatt :", + "QuotationTemplate.TOTALDUE:": "TOTAL SKULD :", + "QuotationTemplate.BankAccount": "Information om vårt bankkonto finns på {0}.", + "Permission:Raffles": "Lottdragning", + "Permission:Draw": "Dragning", + "Menu:Raffles": "Raffles", + "RaffleIsNotDrawable": "Lottdragning är inte dragbar", + "WinnerCountMustBeGreaterThanZero": "Antalet vinnare måste vara större än noll", + "FullDescription": "Fullständig beskrivning", + "VisibilityStartDate": "Synlighet Startdatum", + "VisibilityEndDate": "Slutdatum för synlighet", + "RaffleDate": "Lottdragning Datum", + "SubscriptionCode": "Prenumerationskod", + "GroupCode": "Gruppkod", + "MaxWinnerCount": "Max antal vinnare", + "ReDraw": "Rita om", + "EditRaffle": "Redigera utlottning", + "Raffles": "Raffles", + "CreateARaffle": "Skapa en utlottning", + "Draw": "Dragning", + "Enum:RaffleStatus:0": "Aktiv", + "Enum:RaffleStatus:1": "Nästa", + "Enum:RaffleStatus:2": "Tidigare", + "DrawDone": "Ritning klar", + "HomePageShowType": "Startsida Visa typ", + "None": "Ingen", + "Card": "Kort", + "Horizontal": "Horisontell", + "Winners": "Vinnare", + "StartDateMustBeLessThanEndDate": "Startdatum måste vara mindre än slutdatum", + "VisibilityStartDateMustBeLessThanVisibilityEndDate": "Startdatum för synlighet måste vara mindre än slutdatum för synlighet", + "StartDateMustBeGreaterThanVisibilityStartDate": "Startdatum måste vara större än startdatum för synlighet", + "EndDateMustBeLessThanVisibilityEndDate": "Slutdatum måste vara mindre än visibilitetens slutdatum", + "DrawnDone": "Ritad Gjord", + "AddColor": "Lägg till färg", + "Colors": "Färger", + "RemoveColor": "Ta bort färg", + "MaxColorCountWarning": "Du kan lägga till upp till {0} färger", + "MinColorCountWarning": "Du måste lägga till minst {0} färger", + "RaffleDeletionConfirmationMessage": "Är du säker på att du vill ta bort den här utlottningen?", + "CreateRaffle": "Skapa utlottning", + "RemoveImage": "Ta bort bild", + "SavedSuccessfully": "Sparades framgångsrikt", + "Menu:CommunityTalks": "Samtal med gemenskapen", + "Menu:Conferences": "Konferenser", + "Menu:OtherLiveEvents": "Andra live-evenemang", + "Menu:SponsoredConferences": "Sponsrade konferenser", + "Logo": "Logotyp", + "Slug": "Snigel", + "CompanyUrl": "Företagets webbadress", + "TalkTitle": "Titel på samtal", + "AbstractTopic": "Sammanfattning Ämne", + "Bio": "Bio", + "LinkedIn": "LinkedIn", + "Github": "Github", + "Twitch": "Twitch", + "Youtube": "Youtube", + "Twitter": "Twitter", + "PersonalWebsite": "Personlig webbplats", + "VideoId": "Video Id", + "Order": "Beställning", + "Image1x1": "Bild 1x1", + "Image16x9": "Bild 16x9", + "Banner": "Banner", + "Speaker": "Högtalare", + "SessionDate": "Datum för session", + "AddSession": "Lägg till session", + "AddSponsor": "Lägg till sponsor", + "SponsorLogo": "Sponsorlogotyp", + "RegistrationUrl": "Url för registrering", + "AllowAbpStudioBetaAccess": "Tillåt åtkomst till ABP Studio Beta", + "TotalQuestionCanNotBeNullMessage": "Total fråga kan inte vara null", + "Permission:OrganizationAutoRenewalPayments": "Betalningar för automatisk förnyelse av organisation", + "Permission:RetryFailedPayments": "Försök på nytt med misslyckade betalningar", + "AutoRenewalIsNotEnabled": "Automatisk förnyelse är inte aktiverad!", + "LicenseIsNotExpired": "Licensen har inte gått ut!", + "PaymentNotFound": "Betalning hittades inte!", + "PaymentAlreadyTried": "Betalning redan försökt!", + "PaymentIsNotFailed": "Betalning är inte misslyckad!", + "OrganizationIdIsNull": "OrganizationId är null!", + "Menu:AutoRenewals": "Förnyelse av bilar", + "OrganizationAutoRenewalPayments": "Betalningar för automatisk förnyelse av organisation", + "PaymentDate": "Betalningsdag", + "TryCount": "Försök räkna", + "ErrorMessage": "Felmeddelande", + "ErrorCode": "Felkod", + "CreditCard": "Kreditkort", + "BuyerName": "Köparens namn", + "BuyerSurname": "Köparens efternamn", + "BuyerEmail": "Köparens e-post", + "AutoRenewalStartTime": "Starttid för automatisk förnyelse", + "AutoRenewalEndTime": "Sluttid för automatisk förnyelse", + "AutoRenewalEnabled": "Automatisk förnyelse aktiverad", + "LastAutoRenewalPaymentTime": "Sista betalningstid för automatisk förnyelse", + "OrganizationDoesNotHaveACreditCard": "Organisationen har inte ett kreditkort!", + "OrganizationDoesNotHaveACreditCardInGateway": "Organisationen har inte ett kreditkort i porten!", + "Permission:EditWinners": "Redigera vinnare", + "Permission:ChangeDrawingStatus": "Ändra ritningsstatus", + "Menu:Licenses": "Licensiering", + "OrganizationId": "Organisations-ID", + "RemoveAllWinnersConfirmationMessage": "Är du säker på att du vill ta bort alla vinnare?", + "AutoRenewals": "Förnyelse av bilar", + "OrganizationHasCreditCard": "Organisationen har kreditkort. Vänligen ta bort kreditkortet först!", + "DisplayName:DontSendEmailForLicenseExpire": "Skicka inte e-post för att licensen löper ut", + "DontSendEmailForLicenseExpire": "Skicka inte e-post för att licensen löper ut", + "SuccessfullyChanged": "Framgångsrikt ändrat", + "WinnerCountMustBeLessThanMaxWinnerCount": "Antalet vinnare måste vara mindre än det maximala antalet vinnare", + "NoChangesDetected": "Inga förändringar upptäckta", + "ProductCount": "Produkträkning", + "Actions": "Åtgärder", + "CreateInvoice": "Skapa faktura", + "IsVisible": "Synlig", + "Menu:Testimonials": "Vittnesmål", + "TestimonialDeletionConfirmationMessage": "Är du säker på att du vill ta bort detta vittnesmål?", + "FullName": "Fullständigt namn", + "TestimonialText": "Text i vittnesmål", + "ExperienceYear": "Erfarenhetsår", + "Position": "Titel", + "YearsOfExperience": "Erfarenhetsår", + "AllowedLicenses": "Tillåtna licenser", + "AllowedModules": "Tillåtna moduler", + "ModuleName": "Modulens namn", + "NonYet": "Inte ännu", + "Permission:Testimonials": "Vittnesmål", + "SelectCompanySizePlaceholder": "Företagets storlek", + "SelectExperienceYearPlaceholder": "Erfarenhetsår", + "SelectCountryPlaceholder": "Land", + "DeleteImageConfirmationMessage": "Är du säker att du vill ta bort bilden för \"{0}\"?", + "DeleteImageSuccessMessage": "Bilden har raderats framgångsrikt", + "DeleteImage": "Ta bort bild", + "NetTerms": "Villkor (dagar)", + "Menu:DynamicReports": "Dynamiska rapporter", + "Menu:Others": "Övriga", + "Menu:Packs&Modules": "Paket & moduler", + "ReleaseCaches": "Frigör cachen", + "Menu:HeroSections": "Hjälte-sektioner", + "HeroSections": "Hjälte-sektioner", + "DynamicReports": "Dynamiska rapporter", + "Menu:ReportsMenu": "Rapporter", + "Permission:HeroSections": "Hjälte-sektioner", + "RedirectLink": "Omdirigera länk", + "HeroSectionsDeletionConfirmationMessage": "Är du säker på att du vill ta bort hjälteavsnittet?", + "AbpStudioName": "Abp Studio namn" + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/sv.json new file mode 100644 index 0000000000..9bcca4c170 --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Base/Localization/Resources/sv.json @@ -0,0 +1,256 @@ +{ + "culture": "sv", + "texts": { + "Volo.AbpIo.Domain:010004": "Maximalt antal medlemmar uppnått!", + "Volo.AbpIo.Domain:010005": "Maximalt antal ägare uppnått!", + "Volo.AbpIo.Domain:010006": "Den här användaren är redan ägare i den här organisationen!", + "Volo.AbpIo.Domain:010007": "Den här användaren är redan en utvecklare i den här organisationen!", + "Volo.AbpIo.Domain:010008": "Tillåtet antal utvecklare kan inte vara mindre än nuvarande antal utvecklare!", + "Volo.AbpIo.Domain:010009": "Tillåtet antal utvecklare kan inte vara mindre än 0!", + "Volo.AbpIo.Domain:010010": "Maximalt antal mac-adresser har överskridits!", + "Volo.AbpIo.Domain:010011": "Personlig licens kan inte ha mer än 1 utvecklare!", + "Volo.AbpIo.Domain:010012": "Licensen kan inte förlängas en månad efter att licensen har löpt ut!", + "Volo.AbpIo.Domain:020001": "Det gick inte att ta bort detta NPM-paket eftersom \"{NugetPackages}\" Nuget-paket är beroende av detta paket.", + "Volo.AbpIo.Domain:020002": "Det gick inte att ta bort detta NPM-paket eftersom \"{Moduler}\" Moduler använder detta paket.", + "Volo.AbpIo.Domain:020003": "Det gick inte att ta bort detta NPM-paket eftersom \"{Modules}\" Moduler använder det här paketet och \"{NugetPackages}\" Nuget-paket är beroende av detta paket.", + "Volo.AbpIo.Domain:020004": "Det gick inte att ta bort detta Nuget-paket eftersom \"{Moduler}\" Moduler använder detta paket.", + "Volo.AbpIo.Domain:030000": "Du har redan avslutat din provperiod.", + "Volo.AbpIo.Domain:030001": "Det här organisationsnamnet finns redan.", + "Volo.AbpIo.Domain:030002": "Efter aktivering kan du inte ändra testlicensen till -requested- status!", + "Volo.AbpIo.Domain:030003": "Det finns ingen sådan status!", + "Volo.AbpIo.Domain:030004": "Status kunde inte ändras på grund av ett oväntat fel!", + "Volo.AbpIo.Domain:030005": "Start- och slutdatum kan uppdateras när testlicensen är i statusen -aktiverad!", + "Volo.AbpIo.Domain:030006": "Slutdatumet måste vara större än startdatumet!", + "Volo.AbpIo.Domain:030007": "Denna testlicens har redan aktiverats!", + "Volo.AbpIo.Domain:030008": "Köpdatumet kan endast ställas in när statusen är -köpt-!", + "Volo.AbpIo.Domain:030009": "Användaren hittades inte!", + "Volo.AbpIo.Domain:030010": "För att köpa testlicensen måste du först aktivera din testlicens!", + "Volo.AbpIo.Domain:030011": "Du kan inte ta bort en testlicens när den är köpt!", + "Volo.AbpIo.Domain:030012": "En användare har endast rätt till 1 gratis provperiod. Du har redan använt din testlicens.", + "Volo.AbpIo.Domain:030013": "En användare med en aktiv licens kan inte starta en testlicens.", + "Volo.AbpIo.Domain:040000": "Telemetri finns redan!", + "Volo.AbpIo.Domain:050000": "Organisationen har kreditkort. Du kan inte ta bort det!", + "Volo.AbpIo.Domain:070000": "Organisationsnamnet får endast innehålla latinska bokstäver, siffror, punkter och bindestreck!", + "Volo.AbpIo.Domain:070001": "Företagsnamnet får endast innehålla latinska bokstäver, siffror, punkter, mellanslag och bindestreck!", + "WantToLearn?": "Vill du lära dig mer?", + "ReadyToGetStarted?": "Är du redo att komma igång?", + "JoinOurCommunity": "Gå med i vår community", + "GetStartedUpper": "KOM IGÅNG", + "ForkMeOnGitHub": "Fork mig på GitHub", + "Features": "Funktioner", + "GetStarted": "Kom igång", + "Documents": "Dokument", + "Community": "Gemenskap", + "ContributionGuide": "Bidragsguide", + "Blog": "Blogg", + "Commercial": "Kommersiell", + "MyAccount": "Mitt konto", + "Permission:License": "Licens", + "Permission:UserInfo": "Användarinformation", + "SeeDocuments": "Se dokument", + "Samples": "Prover", + "Framework": "Ramverk", + "Support": "Stöd", + "FreeDDDBook": "Gratis e-bok om DDD", + "New": "Nya", + "Volo.AbpIo.Domain:020005": "Licensförlängningsåret får inte vara lägre än {MinExtendLicenseYear} år och inte högre än {MaxExtendLicenseYear} år", + "TrialLicensePeriodHasExpired": "Din testlicensperiod löpte ut för {0} dagar sedan.", + "TrialLicensePeriodWillExpire": "Din testlicensperiod kommer att löpa ut om {0} dagar.", + "TrialLicensePeriodExpireToday": "Din testlicensperiod kommer att löpa ut idag.", + "PurchaseNow": "Köp nu!", + "LatestReleaseLogs": "Senaste versionsloggar", + "RoadMap": "Vägkarta", + "FAQ": "VANLIGA FRÅGOR", + "SourceCode": "Källkod", + "SeeAllPosts": "Se alla inlägg", + "Contribute": "Bidra", + "LiveDemo": "Live Demo", + "GetLicense": "Skaffa licens", + "OpenSource": "Öppen källkod", + "WebApplication": "Webbapplikation", + "MeetTheABP": "Möt ABP", + "CompleteWebDevelopment": "En komplett webbutveckling", + "Platform": "Plattform", + "ABPDescription": "Ett ramverk med öppen källkod för utveckling av webbapplikationer för ASP.NET Core. Det erbjuder en komplett infrastruktur genom att följa bästa praxis för programvaruutveckling.", + "StrongInfrastructure": "Stark infrastruktur", + "CompleteArchitecture": "Komplett arkitektur", + "DeveloperFocused": "Fokus på utvecklare", + "ShareYourExperiences": "Dela dina erfarenheter av ABP-ramverket", + "LatestPosts": "Senaste inlägg", + "LatestVideos": "Senaste videor", + "Views": "Utsikt", + "LearnLatestNewsAboutABPFramework": "Få information om händelser i ABP som nya utgåvor, fria källor, inlägg och mycket mer.", + "DeveloperTools": "Verktyg för utvecklare", + "StartupTemplates": "Mallar för nystartade företag", + "ApplicationModules": "Applikationsmoduler", + "UI": "UI", + "Themes": "Teman", + "Premium": "Premium", + "PrivacyPolicy": "Integritetspolicy", + "TermsAndConditions": "Villkor och anvisningar", + "WouldLikeToReceiveMarketingMaterials": "Jag skulle vilja få marknadsföringsmaterial som produkterbjudanden och specialerbjudanden.", + "JoinOurMarketingNewsletter": "Anmäl dig till vårt marknadsföringsnyhetsbrev", + "CommunityPrivacyPolicyConfirmation": "Jag godkänner de allmänna villkoren och Privatlivspolicyn.", + "WouldLikeToReceiveNotification": "Jag skulle vilja få de senaste nyheterna från abp.io webbplatser.", + "CommercialNewsletterConfirmationMessage": "Jag samtycker till Terms & Conditions och Privacy Policy.", + "FreeDDDEBook": "Gratis e-bok om DDD", + "AdditionalServices": "Ytterligare tjänster", + "Learn": "Lär dig", + "AccountOverview": "Översikt över konton", + "MyOrganizations": "Mina organisationer", + "MySupportQuestions": "Mina frågor om support", + "MyProfile": "Min profil", + "Logout": "Logga ut", + "Home": "Hem", + "Posts": "Inlägg", + "Videos": "Videor", + "JoinTheABPCommunity": "Gå med i ABP:s gemenskap", + "SubmitYourPost": "Skicka in ditt inlägg", + "Modules": "Moduler", + "Tools": "Verktyg", + "Pricing": "Prissättning", + "ChangeLogs": "Ändra loggar", + "SubscribeToNewsletter": "Prenumerera på nyhetsbrevet", + "SubscribeToNewsletterDescription": "Få information om händelser i ABP som nya utgåvor, fria källor, inlägg och mycket mer.", + "EmailAddress": "E-postadress", + "Subscribe": "Prenumerera", + "WelcomeToABP": "Välkommen till ABP", + "EULA": "EULA", + "ABPCommercialIntroductionMessage": "Förbyggda applikationsmoduler, avancerade startmallar, verktyg för snabb applikationsutveckling, professionella UI-teman och premiumsupport.", + "MasteringAbpFrameworkEBook": "Behärskar ABP-ramverket", + "MasteringTheABPFrameworkExplanation": "Mastering ABP Framework e-bok; skriven av skaparen av ABP Framework, hjälper dig att få en fullständig förståelse för ramverket och moderna tekniker för utveckling av webbapplikationer.", + "Speakers": "Högtalare", + "PreviousEvents": "Tidigare händelser", + "WatchTheEvent": "Titta på evenemanget", + "RegisterNow": "Registrera dig nu", + "ThereIsNoEvent": "Det finns ingen händelse.", + "Events": "Händelser", + "Volo.AbpIo.Domain:080000": "Det finns redan ett inköpsobjekt som heter \"{Namn}\"", + "MasteringAbpFrameworkBook": "Bok: Att bemästra ABP:s ramverk", + "ABPIO-CommonPreferenceDefinition": "Få de senaste nyheterna om ABP Platform som nya inlägg, evenemang och mer.", + "BuiltOn": "Inbyggd", + "AbpFramework": "ABP-ramverk", + "Volo.AbpIo.Domain:080001": "Starttiden får inte vara större än sluttiden", + "Enum:BookType:0": "Behärskar ABP-ramverket", + "Enum:PurchasePlatform:0": "Amazonas", + "Enum:PurchasePlatform:1": "Förpackningar", + "Copied": "Kopierat!", + "CouldNotCopy": "Kunde inte kopiera!", + "CopyNotSupportByYourBrowser": "Den här funktionen fungerar inte i den webbläsare du använder.", + "City": "Stad", + "ZipCode": "Postnummer", + "Address": "Adress", + "Homepage": "Hemsida", + "Year": "År", + "Year_Plural": "År", + "Copyright": "Copyright © {1}", + "DomainDrivenDesign": "Domänstyrd design", + "CrossCuttingConcerns": "Tvärgående angelägenheter", + "AbpCommunity": "ABP Gemenskap", + "Footer_GithubStarCount": "{0} Stjärnor på GitHub", + "Footer_NugetDownloadCount": "{Nedladdningar på NuGet", + "AbpDescription": "ABP är ett applikationsramverk med öppen källkod som fokuserar på AspNet Core-baserad utveckling av webbapplikationer. Upprepa inte dig själv, fokusera på din egen affärskod.", + "Layout_AbpFramework_MetaTitle": "ABP Framework | Ramverk för webbapplikationer med öppen källkod för ASP.NET Core", + "CommunityTalks_CountdownDays": "Dagar", + "CommunityTalks_CountdownHours": "Timmar", + "CommunityTalks_CountdownMinutes": "Min", + "CommunityTalks_CountdownSeconds": "Sek", + "SeePreviousEvents": "Se tidigare evenemang", + "CookieConsent_Accept": "Acceptera", + "CookieConsent_Explanation_1": "Vi använder cookies för att ge dig den bästa upplevelsen på vår webbplats.", + "CookieConsent_Explanation_2": "Om du fortsätter att surfa samtycker du till vår Privatpolicy och cookiepolicy..", + "Error_Page_400_Title": "Det uppstod ett problem med att visa den begärda sidan.", + "Error_Page_400_Description_1": "Vanligtvis betyder det att ett oväntat fel inträffade när vi behandlade din begäran.", + "Error_Page_400_Description_2": "Om problemet kvarstår, kontakta oss på info@abp.io så hjälper vi dig att komma vidare.", + "GoToHomepage": "Gå till hemsidan", + "Error_Page_404_Title": "Sidan hittades inte!", + "Error_Page_404_Description_1": "Det här är inte den webbsida du letar efter.", + "Error_Page_500_Title": "Det ser ut som om något gick fel!", + "Error_Page_500_Description_1": "Vi spårar dessa fel automatiskt, men om problemet kvarstår är du välkommen att
kontakta oss. Under tiden kan du prova att uppdatera.", + "Error_Page_500_Description_2": "Kontakta oss på info@abp.io.", + "Books": "Böcker", + "ABPDiscordServer": "ABP Discord Server", + "ABPCommunityTalks": "ABP:s samtal med allmänheten", + "ABPCommunityPosts": "ABP Gemenskap Inlägg", + "BuyAndGetMonths": "KÖP 12 MÅNADER, FÅ 14 MÅNADER!", + "GetYourDeal": "Få ditt erbjudande", + "BuyOrRenewLicense": "Köp eller förnya licensen nu och få 2 extra månader!", + "BuyOrRenewLicenseToGetExtra2Months": "Köp eller förnya licens nu och få 2 extra månader! SKYNDA DIG UPP! ⏰ Sista dag: {0}", + "HurryUp": "SKYNDA PÅ!", + "LastDay": "Sista dagen: {0}", + "BuyNewLicenseBetweenDatesToGetBenefit": "Köp en ny licens mellan {0} och {1} för att få förmånen i extra 2 månader!", + "CheckAllCommunityTalks": "Kontrollera alla inlägg i gemenskapen", + "ReadMore": "Läs mer om", + "ContinueReading": "Fortsätta läsa", + "Post": "Post", + "ExploreTheContentsCreatedByTheCoreABPTeamAndTheABPCommunity": "Utforska innehållet som skapats av ABP:s kärnteam och ABP:s community.", + "WelcomeFallCampaign": "Välkommen till höstkampanjen!", + "GiveAwayForNewPurchases": "Application Development Classroom Training kommer att ges bort för de nya inköpen!", + "BlackFriday": "BLACK FRIDAY", + "ValidForExistingCustomers": "Gäller även för
befintliga kunder!", + "CampaignBetweenDates": "Från {0}
Till {1}", + "SaveUpTo": "Spara Upp till${0}K", + "ImplementingDDD": "Implementering av domändriven design", + "ExploreTheEBook": "Utforska e-boken", + "ExploreTheBook": "Utforska boken", + "ConsultantType": "Typ av konsultverksamhet", + "Expert": "ABP Expert", + "Partner": "ABP Partner", + "Industry": "Industri", + "Location": "Plats", + "Contact": "Kontakt", + "Partner_Year": "Partnerskapsår", + "Info": "Info", + "SpokenLanguages": "Talade språk", + "SocialMedia": "Sociala medier", + "Activity": "Aktivitet", + "Type": "Typ", + "Contribution": "Bidrag", + "WhoWeAre": "Vilka vi är", + "Icons": "Ikoner", + "Url": "Url", + "Icon": "Ikon", + "RecentActivities": "Senaste aktiviteterna", + "SpringCampaign": "Välkommen
Vårens försäljning!", + "SpringCampaign2": "Begränsat
tidserbjudande!
", + "AboutUs": "Om oss", + "HowItWorks": "Hur fungerar det?", + "ReleaseNotes": "Releaseanteckningar", + "DetailedChangeNotes": "Detaljerade ändringsanteckningar", + "SeeTrainings": "Se utbildningar", + "NoContent": "Inget innehåll", + "More": "Mer om", + "WhyABPIOPlatform": "Varför ABP.IO Platform?", + "AbpStudio": "ABP Studio", + "ExtraMonths": "{0}EXTRA MÅNADER", + "RSS": "RSS", + "RSSFeed": "RSS-flöde", + "Articles": "Artiklar", + "Organizations": "Organisationer", + "ManageAccount": "Hantera konto", + "CommunityProfile": "Gemenskapsprofil", + "BlogProfile": "Bloggprofil", + "Tickets": "Tickets", + "Raffles": "Raffles", + "Status": "Status", + "Resources": "Resurser", + "Video Courses": "Videokurser", + "Packages": "Paket", + "Trainings": "Utbildningar", + "MeetTheABPCommunity": "Möt ABP Community", + "DisplayName:CommunityIndexPagePoll": "Community Index Page Poll", + "ReturnOnInvestment": "Avkastning på investeringar", + "PromotionalOffers": "Kampanjerbjudanden", + "PromotionalOffersDefinition": "Rabatter, säsongskampanjer etc.", + "EventsDefinition": "Community Talks, webbseminarier, ABP .NET-konferens, etc.", + "ReleaseNotesDefinition": "ABP.IO Plattformsreleaser, nya produkter etc.", + "Newsletter": "Nyhetsbrev", + "NewsletterDefinition": "Blogginlägg, nyheter om samhället etc.", + "OrganizationOverview": "Översikt över organisationen", + "EmailPreferences": "Inställningar för e-post", + "VideoCourses": "Viktiga videor", + "DoYouAgreePrivacyPolicy": "Genom att klicka på Prenumerera-knappen godkänner du Villkor och bestämmelser och Privatlivspolicy.", + "AbpConferenceDescription": "ABP Conference är ett virtuellt evenemang för .NET-utvecklare där de kan lära sig mer och få kontakt med andra.", + "Mobile": "Mobil" + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Blog/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Blog/Localization/Resources/sv.json new file mode 100644 index 0000000000..2ac06f43f8 --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Blog/Localization/Resources/sv.json @@ -0,0 +1,8 @@ +{ + "culture": "sv", + "texts": { + "AbpTitle": "Läs alla blogginlägg", + "AbpDescription": "ABP är ett applikationsramverk med öppen källkod som fokuserar på AspNet Core-baserad utveckling av webbapplikationer. Upprepa inte dig själv, fokusera på din egen affärskod.", + "AbpDefinition": "ABP-blogg för .NET-utveckling, plattformsoberoende, ASP.NET-applikationsmallar, ABP-relaterade nyheter och mer..." + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/sv.json new file mode 100644 index 0000000000..f6e1184c2d --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Commercial/Localization/Resources/sv.json @@ -0,0 +1,1215 @@ +{ + "culture": "sv", + "texts": { + "OrganizationManagement": "Organisation och ledning", + "OrganizationList": "Organisationslista", + "Volo.AbpIo.Commercial:010003": "Du är inte ägare till den här organisationen!", + "OrganizationNotFoundMessage": "Ingen organisation hittades!", + "DeveloperCount": "Tilldelade / totala utvecklare", + "QuestionCount": "Kvarvarande / totala frågor", + "Unlimited": "Obegränsad", + "Owners": "Ägare", + "Owner": "Ägare", + "AddMember": "Lägg till medlem", + "AddNewOwner": "Lägg till ny ägare", + "AddNewDeveloper": "Lägg till ny utvecklare", + "UserName": "Användarnamn", + "Name": "Namn", + "EmailAddress": "E-postadress", + "Developers": "Utvecklare", + "LicenseType": "Typ av licens", + "Manage": "Hantera", + "SetDefault": "Ställ in som standard", + "DefaultOrganization": "Standard", + "StartDate": "Startdatum", + "EndDate": "Slutdatum", + "Modules": "Moduler", + "LicenseExtendMessage": "Slutdatum för din licens förlängs till {0}.", + "LicenseUpgradeMessage": "Din licens har uppgraderats till {0}.", + "LicenseExtendAdnUpgradeMessage": "Din licens har förlängts till {0} och din licensplan har uppgraderats till {1}.", + "LicenseAddDeveloperMessage": "{0} utvecklare läggs till i din licens", + "Volo.AbpIo.Commercial:010004": "Kan inte hitta den angivna användaren! Användaren måste redan ha registrerats.", + "MyOrganizations": "Mina organisationer", + "ApiKey": "API-nyckel", + "UserNameNotFound": "Det finns ingen användare med användarnamnet {0}", + "SuccessfullyAddedToNewsletter": "Tack för att du prenumererar på vårt nyhetsbrev!", + "MyProfile": "Min profil", + "EmailNotValid": "Vänligen ange en giltig e-postadress.", + "JoinOurMarketingNewsletter": "Anmäl dig till vårt marknadsföringsnyhetsbrev", + "WouldLikeToReceiveMarketingMaterials": "Jag skulle vilja få marknadsföringsnyheter som produkterbjudanden och specialerbjudanden.", + "StartUsingYourLicenseNow": "Börja använda din licens nu!", + "WelcomePage": "Välkomstsida", + "UnsubscriptionExpireEmail": "Avregistrera dig från e-postmeddelanden med påminnelser om licensens utgångsdatum", + "UnsubscribeLicenseExpireEmailReminderMessage": "Denna e-postprenumeration innehåller endast påminnelser om utgångsdatum för din licens.", + "UnsubscribeFromLicenseExpireEmails": "Om du inte vill få e-postmeddelanden om utgångsdatum för din licens kan du avsluta prenumerationen när som helst.", + "Unsubscribe": "Avsluta prenumeration", + "NotOrganizationMember": "Du är inte medlem i någon organisation.", + "UnsubscribeLicenseExpirationEmailSuccessTitle": "Framgångsrikt avregistrerad", + "UnsubscribeLicenseExpirationEmailSuccessMessage": "Du kommer inte längre att få e-postmeddelanden med påminnelser om licensens utgångsdatum.", + "IndexPageHeroSection": "En komplettwebbutvecklingsplattformbyggd på ramverk", + "AbpCommercialShortDescription": "ABP tillhandahåller förbyggda applikationsmoduler, verktyg för snabb applikationsutveckling, professionella UI-teman, premiumsupport och mycket mer.", + "LiveDemo": "Live Demo", + "LiveDemoLead": "{1} med ditt ABP-konto, {3} till abp.io eller fyll i formuläret nedan för att skapa en live demo nu", + "ThereIsAlreadyAnAccountWithTheGivenEmailAddress": "Det finns redan ett konto med den angivna e-postadressen: {0}
Du bör logga in med ditt konto för att fortsätta.", + "GetLicence": "Skaffa licens", + "Application": "Tillämpning", + "StartupTemplates": "Mallar för nystartade företag", + "Startup": "Nystartad verksamhet", + "Templates": "Mallar", + "Developer": "Utvecklare", + "Tools": "Verktyg", + "Premium": "Premium", + "PremiumSupport": "Premium-support", + "PremiumForumSupport": "Premium Forum Support", + "UI": "UI", + "Themes": "Teman", + "JoinOurNewsletter": "Anmäl dig till vårt nyhetsbrev", + "Send": "Skicka", + "WhatIsABPFramework": "VAD ÄR ABP-RAMVERKET?", + "OpenSourceBaseFramework": "Basramverk med öppen källkod", + "ABPFrameworkExplanation": "

ABP kommersiell version är baserad på ABP Framework, en öppen källkod och community-driven webbapplikationsram för ASP.NET Core.

ABP Framework ger en utmärkt infrastruktur för att skriva underhållbar, utdragbar och testbar kod med bästa praxis.

Byggd på och integrerad med populära verktyg som du redan känner till. Låg inlärningskurva, enkel anpassning, bekväm utveckling.

", + "Modular": "Modulär", + "MicroserviceCompatible": "Kompatibel med mikrotjänster", + "DomainDrivenDesignInfrastructure": "Domänstyrd design Infrastruktur", + "MultiTenancy": "Multi-Tenancy", + "DistributedMessaging": "Distribuerad meddelandehantering", + "DynamicProxying": "Dynamisk proxyservering", + "BackgroundJobs": "Bakgrundsjobb", + "AuditLogging": "Loggning av revision", + "BLOBStoring": "BLOB Storing", + "BundlingMinification": "Paketering och minimering", + "AdvancedLocalization": "Avancerad lokalisering", + "ManyMore": "Många fler", + "ExploreTheABPFramework": "Utforska ABP-ramverket", + "WhyUseTheABPCommercial": "Varför använda ABP-plattformen?", + "WhyUseTheABPCommercialExplanation": "

Att bygga webbapplikationer i företagsklass kan vara komplext och tidskrävande.

ABP erbjuder den perfekta basinfrastrukturen som krävs för alla moderna ASP.NET Core-baserade lösningar i företagsklass. Från design till driftsättning, hela utvecklingscykeln förstärks av ABP: s inbyggda funktioner och moduler.

", + "StartupTemplatesShortDescription": "Startup-mallar gör att du kan starta ditt projekt på några sekunder.", + "UIFrameworksOptions": "Alternativ för ramverk för användargränssnitt;", + "DatabaseProviderOptions": "Alternativ för databasleverantör;", + "PreBuiltApplicationModules": "Förbyggda applikationsmoduler", + "PreBuiltApplicationModulesShortDescription": "De vanligaste applikationskraven är redan utvecklade åt dig som återanvändbara moduler.", + "Account": "Konto", + "Blogging": "Bloggande", + "Identity": "Identitet", + "IdentityServer": "Identitetsserver", + "Saas": "Saas", + "LanguageManagement": "Språkhantering", + "TextTemplateManagement": "Hantering av textmallar", + "See All Modules": "SeAllaModuler", + "ABPSuite": "ABP-svit", + "AbpSuiteShortDescription": "ABP Suite är ett kompletterande verktyg till ABP-projekt.", + "AbpSuiteExplanation": "Det gör att du kan bygga webbsidor på bara några minuter. Det är ett .NET Core Global-verktyg som kan installeras från kommandoraden. Det kan skapa en ny ABP-lösning och generera CRUD-sidor från databasen till frontend.", + "Details": "Detaljer", + "LeptonTheme": "Lepton tema", + "ProfessionalModernUIThemes": "Professionella, moderna UI-teman", + "LeptonThemeExplanation": "Lepton tillhandahåller en rad Bootstrap-adminteman som fungerar som en solid grund för alla projekt som kräver en adminpanel.", + "DefaultTheme": "Standardtema", + "MaterialTheme": "Materialtema", + "Default2Theme": "Standard 2 Tema", + "DarkTheme": "Mörkt tema", + "DarkBlueTheme": "Mörkblått tema", + "LightTheme": "Ljus tema", + "ProudToWorkWith": "Stolt över att arbeta med", + "OurConsumers": "Tusentals företag och utvecklare i över 70 länder världen över förlitar sig på ABP.", + "JoinOurConsumers": "Anslut dig till dem och bygg fantastiska produkter snabbt.", + "AdditionalServicesExplanation": "Behöver du ytterligare eller anpassade tjänster? Vi och våra partners kan tillhandahålla;", + "CustomProjectDevelopment": "Anpassad projektutveckling", + "CustomProjectDevelopmentExplanation": "Dedikerade utvecklare för dina anpassade projekt.", + "PortingExistingProjects": "Portning av befintliga projekt", + "PortingExistingProjectsExplanation": "Migrera dina äldre projekt till ABP-plattformen.", + "LiveSupport": "Support i realtid", + "LiveSupportExplanation": "Fjärrsupport i realtid när du behöver det.", + "Training": "Utbildning", + "TrainingExplanation": "Dedikerad utbildning för dina utvecklare.", + "OnBoarding": "Onboarding", + "OnBoardingExplanation": "Hjälp med att konfigurera dina utvecklings-, CI- och CD-miljöer.", + "PrioritizedTechnicalSupport": "Prioriterad teknisk support", + "PremiumSupportExplanation": "Förutom det stora samhällsstödet i ABP-ramverket svarar vårt supportteam på tekniska frågor och problem från de kommersiella användarna med hög prioritet.", + "SeeTheSupportOptions": "Kolla in supportalternativen", + "Contact": "Kontakt", + "TellUsWhatYouNeed": "Berätta för oss vad du behöver.", + "YourMessage": "Ditt meddelande", + "YourFullName": "Ditt fullständiga namn", + "FirstNameField": "Förnamn", + "LastNameField": "Efternamn", + "EmailField": "E-postadress", + "YourEmailAddress": "Din e-postadress", + "ValidEmailAddressIsRequired": "En giltig e-postadress krävs.", + "HowMayWeHelpYou": "Hur kan vi hjälpa dig?", + "SendMessage": "Skicka meddelande", + "Success": "Framgång", + "WeWillReplyYou": "Vi har mottagit ditt meddelande och kommer att kontakta dig inom kort.", + "GoHome": "Gå hem", + "CreateLiveDemo": "Skapa live-demo", + "CreateLiveDemoDescription": "När du har skickat in formuläret kommer du att få ett e-postmeddelande med din demolänk.", + "RegisterToTheNewsletter": "Anmäl dig till nyhetsbrevet för att få information om ABP.IO, inklusive nya releaser etc.", + "EnterYourEmailOrLogin": "Ange din e-postadress för att skapa din demo eller Logga in med ditt befintliga konto.", + "ApplicationTemplate": "Mall för ansökan", + "ApplicationTemplateExplanation": "Application startup template används för att skapa en ny webbapplikation.", + "EfCoreProvider": "Entity Framework (Stödjer SQL Server, MySQL, PostgreSQL, Oracle och andra)", + "AlreadyIncludedInTemplateModules": "Följande moduler är redan inkluderade och konfigurerade i den här mallen:", + "ApplicationTemplateArchitecture": "Den här applikationsmallen stöder också nivåindelad arkitektur där användargränssnittslagret, API-lagret och autentiseringstjänsten är fysiskt åtskilda.", + "SeeTheGuideOrGoToTheLiveDemo": "Kolla in utvecklarguiden för teknisk information om den här mallen eller gå till live-demonstrationen.", + "DeveloperGuide": "Guide för utvecklare", + "ModuleTemplate": "Mall för modul", + "ModuleTemplateExplanation1": "Vill du skapa en modul och återanvända den i olika applikationer? Den här startmallen förbereder allt för att börja skapa en återanvändbar applikationsmodul eller en mikrotjänst.", + "ModuleTemplateExplanation2": "

Du kan stödja enstaka eller flera användargränssnittsramverk, enstaka eller flera databasleverantörer för en enda modul. Startmallen är konfigurerad för att köra och testa din modul i en minimal applikation utöver infrastrukturen för enhets- och integrationstest.

Se utvecklarguiden för teknisk information om den här mallen.

", + "WithAllStyleOptions": "med alla stilalternativ", + "Demo": "Demo", + "SeeAllModules": "Se alla moduler", + "ABPCLIExplanation": "ABP CLI (Command Line Interface) är ett kommandoradsverktyg för att utföra vissa vanliga åtgärder för ABP-baserade lösningar.", + "ABPSuiteEasilyCURD": "ABP Suite är ett verktyg som gör att du enkelt kan skapa CRUD-sidor", + "WeAreHereToHelp": "Vi är här för att hjälpa", + "BrowseOrAskQuestion": "Du kan bläddra i våra hjälpämnen eller söka i vanliga frågor, eller så kan du ställa en fråga till oss genom att använda kontaktformuläret.", + "SearchQuestionPlaceholder": "Sök i vanliga frågor och svar", + "WhatIsTheABPCommercial": "Vad är ABP?", + "WhatAreDifferencesThanAbpFramework": "Vilka är skillnaderna mellan ABP med öppen källkod och den kommersiella versionen av ABP?", + "AbpCommercialMetaTitle": " {0} | ABP", + "AbpCommercialMetaDescription": "En omfattande webbutvecklingsplattform på ABP Framework med förbyggda moduler, startmallar, verktyg för snabb utveckling, proffsiga UI-teman och premiumsupport.", + "ABPCommercialExplanation": "ABP Platform är en uppsättning premiummoduler, verktyg, teman och tjänster som är byggda på toppen av open source ABP-ramverket. ABP utvecklas och stöds av samma team som ligger bakom ABP-ramverket.", + "WhatAreDifferencesThanABPFrameworkExplanation": "

ABP-ramverket är ett modulärt, tematiserbart, mikrotjänstkompatibelt ramverk för applikationsutveckling för ASP.NET Core. Det ger en komplett arkitektur och en stark infrastruktur så att du kan fokusera på din egen affärskod istället för att upprepa dig själv för varje nytt projekt. Det är baserat på bästa praxis för mjukvaruutveckling och populära verktyg som du redan känner till.

ABP-ramverket är helt gratis, öppen källkod och community-driven. Det ger också ett gratis tema och några förbyggda moduler (t.ex. identitetshantering och hyresgästhantering).

<", + "VisitTheFrameworkVSCommercialDocument": "Besök följande länk för mer information {1} ", + "ABPCommercialFollowingBenefits": "ABP kommersiell version lägger till följande fördelar ovanpå ABP-ramverket:", + "Professional": "Professionell", + "UIThemes": "Teman för användargränssnitt", + "EnterpriseModules": "Enterprise ready, funktionsrika, förbyggda applikationsmoduler (t.ex. hantering av identitetsserver, SaaS-hantering, språkhantering)", + "ToolingToSupport": "Verktyg för att stödja din utvecklingsproduktivitet (t.ex. ABP Suite)", + "PremiumSupportLink": "Premium Support", + "WhatDoIDownloadABPCommercial": "Vad laddar jag ner när jag köper den kommersiella versionen av ABP?", + "CreateUnlimitedSolutions": "När du har köpt en ABP Commercial-licens kan du skapa obegränsade lösningar som beskrivs i dokumentet Gå igång.", + "ABPCommercialSolutionExplanation": "När du skapar en ny applikation får du en Visual Studio-lösning (en startmall) som baseras på dina önskemål. Den nedladdade lösningen har kommersiella moduler och teman som redan är installerade och konfigurerade åt dig. Du kan ta bort en förinstallerad modul eller lägga till en annan modul om du vill. Alla moduler och teman använder NuGet/NPM-paket som standard.", + "StartDevelopWithTutorials": "Den nedladdade lösningen är väl arkitekterad och dokumenterad. Du kan börja utveckla din egen företagskod baserad på den genom att följa handledningarna.", + "TryTheCommercialDemo": "Du kan prova Live Demo för att se ett exempel på en applikation som skapats med hjälp av ABP-startmallen.", + "HowManyProducts": "Hur många olika produkter/lösningar kan jag bygga med hjälp av ABP?", + "HowManyProductsExplanation": "Du kan skapa så många projekt du vill under din aktiva licensperiod; det finns ingen gräns! Efter att din licens har löpt ut kan du inte skapa nya projekt, men du kan fortsätta att utveckla de projekt du har laddat ner och distribuera dem till ett obegränsat antal servrar.", + "HowManyDevelopers": "Hur många utvecklare kan arbeta med ABP?", + "HowManyDevelopersExplanation": "ABP-licenser är per utvecklare. Olika licenstyper har olika gränser för utvecklare. Du kan dock lägga till fler utvecklare till vilken licenstyp som helst när du behöver. Kolla in sidan Planer och priser för licenstyper, utvecklargränser och ytterligare utvecklingskostnader.", + "ChangingLicenseType": "Kan jag uppgradera min licenstyp senare?", + "ChangingLicenseTypeExplanation": "Du kan uppgradera till en högre licens genom att betala mellanskillnaden inom din aktiva licensperiod. När du uppgraderar till en högre licensplan får du fördelarna med den nya planen, men licensuppgraderingen ändrar inte licensens utgångsdatum. Dessutom kan du också lägga till nya utvecklarplatser till din befintliga licens, kolla in \"Hur många utvecklare kan arbeta med ABP?\" VANLIGA FRÅGOR.", + "LicenseExtendUpgradeDiff": "Vad är skillnaden mellan licensförlängning och uppgradering?", + "LicenseExtendUpgradeDiffExplanation": "Förlängning: Genom att förlänga/förnya din licens kommer du att fortsätta att få premiumsupport och få större eller mindre uppdateringar för modulerna och teman. Dessutom kommer du att kunna fortsätta skapa nya projekt. Och du kommer fortfarande att kunna använda ABP Suite, vilket påskyndar din utveckling. När du förlänger din licens läggs 1 år till licensens utgångsdatum.
Uppgradering: Genom att uppgradera din licens kommer du att befordras till en högre licensplan, vilket gör att du kan få ytterligare fördelar. Kolla in jämförelsetabellen för licenser för att se skillnaderna mellan licensplanerna. När du uppgraderar ändras däremot inte licensens utgångsdatum! För att förlänga licensens slutdatum måste du förlänga din licens.", + "LicenseRenewalCost": "Vad är kostnaden för licensförnyelse efter 1 år?", + "LicenseRenewalCostExplanation": "Priset för förnyelse (förlängning) av standard Team License är ${0}, standard Business License är ${1} och standard Enterprise License är ${2}. Om du redan är kund, logga in på ditt konto för att granska den aktuella förnyelseprissättningen.", + "HowDoIRenewMyLicense": "Hur förnyar jag min licens?", + "HowDoIRenewMyLicenseExplanation": "Du kan förnya din licens genom att navigera till organisationshanteringssidan. För att dra nytta av våra rabatterade priser för tidig förnyelse, se till att du förnyar innan din licens löper ut. Oroa dig inte för att du inte vet när din möjlighet till tidig förnyelse stängs; du kommer att få 3 påminnelse-e-postmeddelanden innan din prenumeration löper ut. Vi skickar dem 30 dagar, 7 dagar och 1 dag före utgången.", + "IsSourceCodeIncluded": "Omfattar min licens källkoden för pro-modulerna och teman?", + "IsSourceCodeIncludedExplanation1": "Beror på vilken licenstyp du har köpt:", + "IsSourceCodeIncludedExplanation2": "Team: Din lösning använder moduler och teman som NuGet- och NPM-paket. Den inkluderar inte deras källkod. På så sätt kan du enkelt uppgradera dessa moduler och teman när en ny version är tillgänglig. Du kan dock inte få källkoden för dessa moduler och teman.", + "IsSourceCodeIncludedExplanation3": "Business/Enterprise: Utöver Team-licensen kan du ladda ner källkoden för alla moduler eller teman du behöver. Du kan till och med ta bort NuGet/NPM-paketreferenserna för en viss modul och lägga till dess källkod direkt i din lösning för att ändra den helt.", + "IsSourceCodeIncludedExplanation4": "

Att inkludera källkoden för en modul i din lösning ger dig maximal frihet att anpassa den modulen. Det kommer dock inte att vara möjligt att automatiskt uppgradera modulen när en ny version släpps.

Ingen av licenserna inkluderar källkoden för ABP Suite och ABP Studio, vilket är externa verktyg som genererar kod åt dig och hjälper din utveckling.

Kolla in sidan Planer och priser för andra skillnader mellan licenstyperna.

<", + "ChangingDevelopers": "Kan jag ändra de registrerade utvecklarna för min organisation i framtiden?", + "ChangingDevelopersExplanation": "Förutom att lägga till nya utvecklare till din licens kan du också ändra befintliga utvecklare (du kan ta bort en utvecklare och lägga till en ny på samma plats) utan någon extra kostnad.", + "WhatHappensWhenLicenseEnds": "Vad händer när min licensperiod upphör?", + "WhatHappensWhenLicenseEndsExplanation1": "ABP-licensen är en perpetuell licens. När din licens löper ut kan du fortsätta att utveckla ditt projekt. Och du är inte skyldig att förnya din licens. Din licens levereras med en ettårig uppdaterings- och supportplan direkt ur lådan. För att fortsätta få nya funktioner, prestandaförbättringar, buggfixar, support och fortsätta använda ABP Suite måste du förnya din licens. När din licens löper ut;", + "WhatHappensWhenLicenseEndsExplanation2": "Du kan inte skapa nya lösningar med hjälp av den kommersiella versionen av ABP, men du kan fortsätta att utveckla dina befintliga applikationer för alltid.", + "WhatHappensWhenLicenseEndsExplanation3": "Du kommer att kunna få uppdateringar för modulerna och teman inom din MINOR-version (utom RC- eller Preview-versioner). Om du t.ex. använder v3.2.0 av en modul kan du fortfarande få uppdateringar för v3.2.x (v3.2.1, v3.2.5... etc.) av den modulen. Men du kan inte få uppdateringar för nästa större eller mindre version (som v3.3.0, v3.3.3, 4.x.x.. etc.). Till exempel, när din licens löpte ut, den senaste versionen var v4.4.3, och senare publicerade den både 4.4.4-versionen och 4.5.0-versionen, skulle du kunna komma åt v4.4.X men du skulle inte komma åt v4.5.X.", + "WhatHappensWhenLicenseEndsExplanation4": "Du kan inte installera nya moduler och teman som läggs till i ABP:s kommersiella plattform efter att din licens har upphört.", + "WhatHappensWhenLicenseEndsExplanation5": "Du kan inte använda ABP Suite.", + "WhatHappensWhenLicenseEndsExplanation6": "Du kan inte få premium support längre.", + "WhatHappensWhenLicenseEndsExplanation7": "Du kan förlänga (förnya) din licens om du vill fortsätta att få dessa förmåner. Om du förlänger din licens inom {3} dagar efter att din licens har löpt ut, kommer följande rabatter att tillämpas: Teamlicens {0}; Företagslicens {1}; Enterprise-licens {2}.", + "discountForYears": "{0}% rabatt för {1} år", + "WhatHappensWhenLicenseEndsExplanation8": "De ABP-projekt som du genererar lagras inte på våra servrar. Därför är det ditt ansvar att behålla källkoden som du laddar ner. När din licens löper ut finns det inget sätt att få tag på källkoden för dina genererade ABP-projekt.", + "WhenShouldIRenewMyLicense": "När ska jag förnya min licens?", + "WhenShouldIRenewMyLicenseExplanation": "Om du förnyar din licens inom {3} dagar efter att din licens har löpt ut, kommer följande rabatter att tillämpas: Teamlicens {0}; Företagslicens {1}; Enterprise-licens {2}. Men om du förnyar din licens efter {3} dagar efter licensens utgångsdatum, kommer förnyelsepriset att vara detsamma som licensens inköpspris och det kommer inte att finnas någon rabatt på din förnyelse.", + "TrialPlan": "Har du en testplan?", + "TrialPlanExplanation": "Ja, för att starta din kostnadsfria testversion, kontakta marketing@volosoft.com. Vi erbjuder också en 30-dagars pengarna-tillbaka-garanti för Team-licensen, inga frågor ställs! Du kan begära full återbetalning inom de första 30 dagarna efter licensköpet. Vi ger 60% återbetalning inom 30 dagar för Business- och Enterprise-licenser. Detta beror på att Business- och Enterprise-licenserna innehåller den fullständiga källkoden för alla moduler och teman.", + "DoYouAcceptBankWireTransfer": "Accepterar ni banköverföringar?", + "DoYouAcceptBankWireTransferExplanation": "Ja, vi accepterar banköverföringar.
När du har skickat licensavgiften via banköverföring, skicka ditt kvitto och önskad licenstyp till accounting@volosoft.com.
Vår internationella bankkontoinformation:", + "HowToUpgrade": "Hur uppgraderar man befintliga applikationer när en ny version finns tillgänglig?", + "HowToUpgradeExplanation1": "När du skapar en ny applikation med hjälp av ABP används alla moduler och teman som NuGet- och NPM-paket. På så sätt kan du enkelt uppgradera paketen när en ny version finns tillgänglig.", + "HowToUpgradeExplanation2": "Förutom de vanliga NuGet/NPM-uppgraderingarna tillhandahåller ABP CLI ett uppdateringskommando som automatiskt hittar och uppgraderar alla ABP-relaterade paket i din lösning.", + "DatabaseSupport": "Vilka databassystem stöds?", + "DatabaseSupportExplanation": "ABP Framework i sig är databasagnostiskt och kan fungera med alla databasleverantörer genom sin natur. Kolla in Data Access-dokumentet för en lista över för närvarande implementerade leverantörer.", + "UISupport": "Vilka UI-ramverk stöds?", + "Supported": "Stödd", + "UISupportExplanation": "ABP Framework är i sig självt agnostiskt och kan fungera med alla användargränssnitt. Startmallar, modul-användargränssnitt och teman implementerades dock inte för alla användargränssnittsramverk. Kolla in Gå igång-dokumentet för den uppdaterade listan över användargränssnittsalternativ.", + "MicroserviceSupport": "Stödjer den microservice-arkitekturen?", + "MicroserviceSupportExplanation1": "Ett av de viktigaste målen med ABP-ramverket är att tillhandahålla en bekväm infrastruktur för att skapa mikroservicelösningar. Kolla in Microservice Architecture-dokumentet för att förstå hur det hjälper till att skapa mikroservicesystem.", + "MicroserviceSupportExplanation2": "Alla ABP-moduler är utformade för att stödja distributionsscenarier för mikrotjänster (med eget API och egen databas) genom att följa dokumentet Module Development Best Practices.", + "MicroserviceSupportExplanation3": "Vi tillhandahåller ett exempel på Microservice Demo Solution som visar en implementering av en mikrotjänstarkitektur för att hjälpa dig att skapa din egen lösning.", + "MicroserviceSupportExplanation4": "Så det korta svaret är: \"Ja, det stöder mikroservicearkitektur\".", + "MicroserviceSupportExplanation5": "Ett mikrotjänstsystem är dock en lösning och varje lösning kommer att ha olika krav, nätverkstopologi, kommunikationsscenarier, autentiseringsmöjligheter, databasdelning/partitioneringsbeslut, runtime-konfigurationer, integrationer med tredjepartssystem och mycket mer.", + "MicroserviceSupportExplanation6": "ABP tillhandahåller infrastruktur för microservice-scenarier, microservice-kompatibla moduler, exempel och dokumentation som hjälper dig att bygga din egen lösning. Men förvänta dig inte att direkt ladda ner din drömlösning som är förbyggd åt dig. Du måste förstå den och sammanföra specifika delar baserat på dina krav.", + "WhereCanIDownloadSourceCode": "Var kan jag ladda ner källkoden?", + "WhereCanIDownloadSourceCodeExplanation": "Du kan ladda ner källkoden för alla ABP-moduler, Angular-paket och teman via ABP Suite eller ABP CLI. Kolla in Hur man laddar ner källkoden?", + "ComputerLimitation": "Hur många datorer kan en utvecklare logga in på när han utvecklar ABP?", + "ComputerLimitationExplanation": "Vi tillåter specifikt {0} datorer per individ/licensierad utvecklare. När det finns ett behov för en utvecklare att utveckla ABP-baserade produkter på en tredje maskin, ska ett e-postmeddelande skickas till license@abp.io där situationen förklaras, och vi kommer sedan att göra lämplig tilldelning i vårt system.", + "RefundPolicy": "Har ni någon återbetalningspolicy?", + "RefundPolicyExplanation": "Du kan begära återbetalning inom 30 dagar efter ditt licensköp. Licenstyperna Business och Enterprise har alternativ för nedladdning av källkod; därför ger vi en återbetalning på 60 % inom 30 dagar för Business- och Enterprise-licenser. Dessutom görs inga återbetalningar för förnyelser och andra licensköp.", + "HowCanIRefundVat": "Hur kan jag återbetala moms?", + "HowCanIRefundVatExplanation1": "Om du gjorde betalningen med 2Checkout kan du återbetala momsen via ditt 2Checkout-konto:", + "HowCanIRefundVatExplanation2": "Logga in på ditt 2Checkout-konto", + "HowCanIRefundVatExplanation3": "Leta upp rätt order och tryck på \"Återbetala försenad moms\" (ange ditt momsregistreringsnummer)", + "HowCanIGetMyInvoice": "Hur kan jag få min faktura?", + "HowCanIGetMyInvoiceExplanation": "Det finns 2 betalningsgateways för att köpa en licens: Iyzico och 2Checkout. Om du köper din licens via 2Checkout-gatewayen skickar den PDF-fakturan till din e-postadress; kolla in 2Checkout-fakturering. Om du köper via Iyzico-gatewayen, med en anpassad inköpslänk eller via en banköverföring, kommer vi att förbereda och skicka din faktura. Du kan begära eller ladda ner din faktura från sidan för organisationshantering. Innan du kontaktar oss för fakturan, kontrollera din organisationshanteringssida!", + "Forum": "Forum", + "SupportExplanation": "ABP-licensen ger ett premiumforumstöd av ett team som består av ABP Framework-experter.", + "PrivateTicket": "Privat biljett", + "PrivateTicketExplanation": "Enterprise License inkluderar även en privat support med e-post och ärendehanteringssystem.", + "AbpSuiteExplanation1": "Med ABP Suite kan du skapa webbsidor på bara några minuter. Det är ett globalt .NET Core-verktyg som kan installeras från kommandoraden.", + "AbpSuiteExplanation2": "Den kan skapa en ny ABP-lösning och generera CRUD-sidor från databasen till frontend. För teknisk översikt se dokumentet", + "FastEasy": "Snabbt och enkelt", + "AbpSuiteExplanation3": "Med ABP Suite kan du enkelt skapa CRUD-sidor. Du behöver bara definiera din entitet och dess egenskaper och låta resten gå till ABP Suite åt dig! ABP Suite genererar all nödvändig kod för din CRUD-sida på några sekunder. Den stöder Angular, MVC och Blazor användargränssnitt.", + "RichOptions": "Rika alternativ", + "AbpSuiteExplanation4": "ABP Suite stöder flera användargränssnittsalternativ som Razor Pages och Angular. Den stöder också flera databaser som MongoDB och alla databaser som stöds av EntityFramework Core (MS SQL Server, Oracle, MySql, PostgreSQL och andra leverantörer...).", + "AbpSuiteExplanation5": "Det som är bra är att du inte behöver oroa dig för dessa alternativ. ABP Suite förstår din projekttyp och genererar koden för ditt projekt och placerar den genererade koden på rätt plats i ditt projekt.", + "SourceCode": "Källkod", + "AbpSuiteExplanation6": "ABP Suite genererar källkoden åt dig! Den genererar inte magiska filer för att generera webbsidan. ABP Suite genererar källkoden för Entity, Repository, Application Service, Code First Migration, JavaScript/TypeScript och CSHTML/HTML och även nödvändiga gränssnitt. ABP Suite genererar också koden enligt Best Practices för programvaruutveckling, så du behöver inte oroa dig för den genererade kodens kvalitet.", + "AbpSuiteExplanation7": "Eftersom du har källkoden för byggstenarna i den genererade CRUD-sidan i rätt applikationslager kan du enkelt ändra källkoden och lägga till din egen anpassade affärslogik i den genererade koden.", + "CrossPlatform": "Plattformsoberoende", + "AbpSuiteExplanation8": "ABP Suite är byggt med .NET Core och är plattformsoberoende. Den körs som en webbapplikation på din lokala dator. Du kan köra den på Windows, Mac och Linux", + "OtherFeatures": "Andra funktioner", + "OtherFeatures1": "Uppdaterar enkelt NuGet- och NPM-paket på din lösning.", + "OtherFeatures2": "Återskapar redan genererade sidor från början.", + "OtherFeatures3": "Skapar nya lösningar", + "ThanksForCreatingProject": "Ditt projekt har skapats framgångsrikt!", + "HotToRunSolution": "Hur kör du din lösning?", + "HotToRunSolutionExplanation": "I dokumentet Kom igång kan du läsa om hur du konfigurerar och kör din lösning.", + "GettingStarted": "Komma igång", + "WebAppDevTutorial": "Handledning för utveckling av webbapplikationer", + "WebAppDevTutorialExplanation": "I handledningsdokumentet för utveckling av webbapplikationer finns ett exempel på utveckling steg för steg.", + "Document": "Dokument", + "UsingABPSuiteToCURD": "Använda ABP Suite för generering av CRUD-sidor och verktyg", + "SeeABPSuiteDocument": "Kolla in ABP Suite-dokumentet för att lära dig användningen av ABP Suite.", + "AskQuestionsOnSupport": "Du kan ställa frågor på ABP Support.", + "Documentation": "Dokumentation", + "SeeModulesDocument": "Se sidan med moduler för en lista över alla PRO-moduler.", + "Pricing": "Prissättning", + "PricingExplanation": "Välj de egenskaper och funktioner som ditt företag behöver idag. Uppgradera enkelt när ditt företag växer.", + "Team": "Team", + "Business": "Företag", + "Enterprise": "Företag", + "Custom": "Anpassad", + "IncludedDeveloperLicenses": "Inkluderade utvecklarlicenser", + "CustomLicenceOrAdditionalServices": "Behöver du en anpassad licens eller ytterligare tjänster?", + "CustomOrVolumeLicense": "Anpassad licens eller volymlicens", + "LiveTrainingSupport": "Utbildning och support i realtid", + "AndMore": "och mer", + "AdditionalDeveloperLicense": "Ytterligare licens för utvecklare", + "ProjectCount": "Projekträkning", + "AllProModules": "Alla proffsmoduler", + "AllProThemes": "Alla proffsteman", + "AllProStartupTemplates": "Alla proffsmallar för nystartade företag", + "SourceCodeOfAllModules": "Källkod för alla moduler", + "SourceCodeOfAllThemes": "Källkod för alla teman", + "PerpetualLicense": "Evig licens", + "UnlimitedServerDeployment": "Obegränsad serverdistribution", + "YearUpgrade": "1 års uppgradering", + "YearPremiumForumSupport": "1 års premiumsupport för forum", + "ForumSupportIncidentCountYear": "Antal incidenter för forumstöd/år", + "PrivateTicketEmailSupport": "Privat support via biljett och e-post", + "BuyNow": "Köp nu", + "PayViaAmexCard": "Hur kan jag betala med mitt AMEX-kort?", + "PayViaAmexCardDescription": "Standardbetalningsgatewayen \"Iyzico\" kan neka vissa AMEX-kreditkort på grund av säkerhetsåtgärder. I detta fall kan du betala via den alternativa betalningsgatewayen \"2Checkout\".", + "ThankYou": "Tack så mycket", + "InvalidReCaptchaErrorMessage": "Det uppstod ett fel vid verifiering av reCAPTCHA. Vänligen försök igen.", + "CompanyName": "Företagets namn", + "YourCompanyName": "Ditt företagsnamn", + "FirstName": "Förnamn", + "LastName": "Efternamn", + "Optional": "Valfritt", + "YourFirstName": "Ditt förnamn", + "YourLastName": "Ditt efternamn", + "SpecialOffer": "Specialerbjudande", + "SpecialOfferMessage": "Skynda dig! Priserna gäller under en begränsad tid.", + "DiscountRequest": "Begäran om rabatt", + "DiscountRequestDescribeCustomerQuestion": "Vilken av följande beskrivningar stämmer in på dig?", + "DiscountRequestStudentEmailMessage": "E-postadressen måste innehålla \"edu\".", + "DiscountRequestDeveloperCount": "Hur många utvecklare är ni?", + "DiscountRequestDeveloperCountExceedMessage": "Vi erbjuder inte rabatterade licenser för företag som har fler än {0} utvecklare.", + "DiscountRequestOrganizationName": "Företagets/organisationens/skolans namn", + "Website": "Webbplats", + "GithubUsername": "Användarnamn för GitHub", + "PhoneNumber": "Telefonnummer", + "Country": "Land", + "DescribeABPCommercialUsage": "Beskriv det projekt som du planerar att utveckla baserat på APB", + "DiscountRequestCertifyInformationMessage": "Jag intygar att alla uppgifter är sanningsenliga och korrekta.", + "DiscountRequestReceived": "Vi har mottagit din begäran om rabatt.", + "DiscountRequestStatusMessage": "Vi kommer att svara dig efter att ha kontrollerat den information du har lämnat.", + "MVCOrRazorPages": "MVC (Razor Pages)", + "Angular": "Angular", + "Blazor": "Blazor", + "New": "Nya", + "MongoDB": "MongoDB", + "EBookDDD": "E-bok Domänstyrd design", + "PracticalGuideForImplementingDDD": "Den här boken är en praktisk guide för att implementera domändriven design med ABP-ramverket.", + "IntroducingDDD": "Introduktion till domändriven design", + "DDDLayersAndCleanArchitecture": "DDD-skikt och ren arkitektur", + "LayeringOfADotnetSolution": "Skiktning av en .NET-lösning", + "ImplementingDDDBuildingBlocks": "Implementering av DDD-byggstenar", + "DomainVsApplicationLogic": "Domänlogik vs applikationslogik", + "SamplesAndDiscussions": "Provtagningar och diskussioner", + "Free": "Gratis", + "Download": "Nedladdningar", + "DDDEBook": "DDD E-bok", + "ImplementingDDD": "Implementering av domändriven design", + "DDDBookExplanation": "En praktisk guide för implementering av domändriven design med ABP-ramverket.", + "Overview": "Översikt", + "DDDBookPracticalGuide": "Detta är en praktisk guide för implementering av domändriven design (DDD). Implementeringsdetaljerna bygger på ABP Framework-infrastrukturen, men kärnkoncepten, principerna och mönstren är tillämpliga på alla typer av lösningar, även om det inte är en .NET-lösning.", + "TableOfContents": "Innehållsförteckning", + "IntroductionToImplementingDDD": "Introduktion till implementering av domändriven design", + "WhatIsDDD": "Vad är domändriven design?", + "Implementation": "Implementering", + "TheBigPicture": "Den stora bilden", + "TheBuildingBlock": "Byggstenen", + "ExampleUseCase": "Exempel Användningsfall", + "DomainAndApplicationLogic": "Domänlogik och applikationslogik", + "Author": "Författaren", + "PublishedOn": "Publicerad på", + "Page": "Sidan", + "FreeEBook": "Gratis e-bok", + "EBookSignInForDownload": "För att ladda ner e-boken logga in", + "SignIn": "Logga in", + "Or": "Eller", + "TellUsAboutYourself": "Berätta lite om dig själv", + "Surname": "Efternamn", + "DoYouAgreePrivacyPolicy": "Jag samtycker till Terms & Conditions och Privacy Policy.", + "VolosoftMarketingInformationMessage": "Jag vill ha information, tips och erbjudanden om Solutions for Businesses and Organizations och andra produkter och tjänster från Volosoft.", + "VolosoftSharingInformationMessage": "Jag vill att Volosoft ska dela min information med utvalda partners så att jag kan få relevant information om deras produkter och tjänster.", + "WeWillSendYouADownloadLink": "Länken för nedladdning av e-boken har skickats till {0}. Kontrollera din inkorg, skräppost och spamboxar!", + "InvalidFormInputs": "Vänligen skriv in den giltiga information som anges på formuläret.", + "DDDBookEmailBody": "Tack så mycket.
För att ladda ner din bok, klicka här.", + "StartFree": "Starta gratis", + "FreeTrial": "Gratis provperiod", + "AcceptsMarketingCommunications": " Ja, jag vill gärna få ABP-relaterade marknadsföringsnyheter.", + "PurposeOfUsage": "Syfte med användningen", + "Choose": "- Välj -", + "CompanyOrganizationName": "Företagets/organisationens namn", + "CompanySize": "Företagets storlek", + "Next": "Nästa", + "StartTrial": "Starta min kostnadsfria testperiod", + "ContactUsQuestions": "Kontakta oss om du har några frågor", + "TrialActivatedWarning": "En användare har endast rätt till 1 gratis provperiod. Du har redan använt din provperiod.", + "ActivationRequirement": "Du är bara ett steg från att starta din provperiod.
Efter att ha kontrollerat din information aktiverar vi din licens. När din licens är aktiverad skickar vi ett e-postmeddelande till {0}. Oroa dig inte, den här processen kommer inte att ta lång tid!", + "SaveAndDownload": "Spara och ladda ner", + "CompanyNameValidationMessage": "Företagsnamnet är för långt!", + "AddressValidationMessage": "Adressen är för lång!", + "TaxNoValidationMessage": "TAX/VAT Nej är för långt!", + "NotesValidationMessage": "Anteckningsfältet är för långt!", + "CheckYourBillingInfo": "Du kan bara skapa din faktura en gång! Kontrollera din faktureringsinformation innan du skapar din faktura.", + "StartYourFreeTrial": "Starta din kostnadsfria testperiod", + "TrialLicenseModelInvalidErrorMessage": "Ett av följande fält är ogiltigt: Landsnamn, Företagsstorlek, Bransch eller Syfte med användning.", + "Trial": "Rättegång", + "Purchased": "Köpte", + "PurchaseNow": "Köp nu", + "PurchaseTrialLicenseMessage": "Din licens utgångsdatum är {0}.
Om du vill fortsätta använda de projekt som du skapade under din kostnadsfria testperiod måste du ändra licensnycklarna i dina appsettings.secrets.json-filer. Här är din licensnyckel:", + "TrialLicenseExpireMessage": "Du använder en testlicens och din testlicens upphör att gälla den {0}.", + "TryForFree": "Prova gratis", + "TrialLicenseExpiredInfo": "Din testlicensperiod har löpt ut!", + "DowngradeLicensePlan": "Kan jag nedgradera till en lägre licensplan i framtiden?", + "DowngradeLicensePlanExplanation": "Du kan inte nedgradera din befintliga licensplan. Men du kan köpa en ny lägre licensplan och fortsätta din utveckling på den nya licensen. När du har köpt en lägre licens behöver du bara logga in på din nya licensplan via ABP CLI-kommandot: ` abp login -o `.", + "LicenseTransfer": "Kan en licens överföras från en utvecklare till en annan?", + "LicenseTransferExplanation": "Ja, det gör jag! När du köper en licens blir du licensinnehavare och får därmed tillgång till sidan för organisationshantering. En organisation har rollerna ägare och utvecklare. Ägare kan hantera utvecklarplatserna och tilldela utvecklare. Varje tilldelad utvecklare loggar in via ABP CLI-kommandot i systemet och har utvecklings- och supportbehörighet.", + "UserOwnerDescription": "Organisationens \"ägare\" är administratör för detta konto. Han/hon hanterar organisationen genom att köpa licenser och tilldela utvecklare. En \"ägare\" kan inte skriva kod i ABP-projekten, kan inte ladda ner ABP-exempelprojekten och kan inte ställa frågor på supportwebbplatsen. Om du vill göra allt detta måste du också lägga till dig själv som utvecklare.", + "UserDeveloperDescription": "\"Utvecklarna\" kan skriva kod i ABP-projekten, ladda ner ABP:s exempelprojekt och ställa frågor på supportwebbplatsen. Å andra sidan kan \"utvecklarna\" inte hantera den här organisationen.", + "RemoveCurrentUserFromOrganizationWarningMessage": "Du tar bort dig själv från din egen organisation. Du kommer inte längre att kunna hantera den här organisationen, bekräftar du det?", + "RenewExistingOrganizationOrCreateNewOneMessage": "Du kan förnya licensen för din organisation (er) genom att klicka på nedanstående \"Förläng nu\"-knapp (ar) och därmed kan du förlänga licensens utgångsdatum med 1 år. Om du fortsätter till kassan kommer du att ha en ny organisation. Vill du fortsätta med en ny organisation?", + "PurchaseTrialOrganizationOrCreateNewOneMessage": "Du har en testlicens. För att köpa din testlicens klickar du på knappen Köp nu. Om du fortsätter till kassan kommer du att ha en ny organisation. Vill du fortsätta med en ny organisation?", + "ExtendNow": "Förlänga / Förnya", + "CreateNewOrganization": "Skapa en ny organisation", + "RenewLicenseEarly": "Om jag förnyar min licens tidigt, kommer jag att få hela året?", + "RenewLicenseEarylExplanation": "När du förnyar din licens före licensens utgångsdatum kommer 1 år att läggas till licensens utgångsdatum. Om din licens t.ex. löper ut den {0}-06-06 och du förnyar den den {0}-01-01, kommer din nya licens att löpa ut den {1}-06-06.", + "OpenSourceWebApplication": "Webbapplikation med öppen källkod", + "CompleteWebDevelopment": "En komplett webbutveckling", + "ABPFrameworkDescription": "ABP Framework är en komplett infrastruktur för att skapa moderna webbapplikationer genom att följa de bästa metoderna för mjukvaruutveckling och konventioner.", + "CommunityDescription": "Dela dina erfarenheter av ABP-ramverket!", + "GetStarted": "Kom igång", + "Views": "utsikt", + "LatestPosts": "Senaste inlägg", + "PreBuiltApplication": "Förbyggd applikation", + "DatabaseProviders": "Databasleverantörer", + "UIFrameworks": "Ramverk för användargränssnitt", + "UsefulLinks": "Användbara länkar", + "Platform": "Plattform", + "CoolestCompaniesUseABPCommercial": "De coolaste företagen använder redan ABP.", + "UserInterface": "Användargränssnitt", + "APIGateway": "API-gateway", + "Microservice": "Mikroservice", + "Database": "Databas", + "Architecture": "Arkitektur", + "MicroserviceArchitectureExplanation": "Det här är en komplett lösningsarkitektur som består av flera applikationer, API-gateways, mikrotjänster och databaser för att bygga en skalbar mikrotjänstlösning med den senaste tekniken.", + "BusinessLogic": "Affärslogik", + "DataAccessLayer": "Dataåtkomstskikt", + "Monolith": "Monolit", + "ModularArchitectureExplanation": "Denna startup-mall ger en skiktad, modulär och DDD-baserad lösningsarkitektur för att bygga en ren och underhållbar kodbas.", + "SeeDetails": "Se detaljer", + "SeeDocumentation": "Kolla in dokumentationen", + "Bs5Compatible": "Professionellt tema som är kompatibelt med Bootstrap 5, perfekt för din administratörswebbplats.", + "LeptonXTheme": "LeptonX tema", + "LeptonXDark": "LeptonX Mörk", + "LeptonXLight": "LeptonX Ljus", + "LeptonXSemiDark": "LeptonX Halvmörk", + "BuiltOnBs5Library": "Byggd på Bootstrap 5-biblioteket", + "FullyCompatibleWithBs5": "100% kompatibel med Bootstrap 5 HTML-struktur och CSS-klasser", + "ResponsiveAndMobileCompatible": "Responsiv, mobilkompatibel, RTL-stöd", + "ProvidesStylesForDatatables": "Tillhandahåller stilar för datatabeller", + "MultipleLayoutOptions": "Flera layoutalternativ", + "EasilyInstallAndUpgrade": "Enkel installation och uppgradering", + "SupportForum": "Forum för support", + "TrustedBy": "Betrodda av", + "OurPricing": "Vår prissättning", + "Plans": "Planer", + "NameSurname": "Namn Efternamn", + "Unspecified": "Ospecificerad", + "LicenceType": "Typ av licens", + "LicenseDiscountWarning": "DENNA RABATTSIDA ANVÄNDER STANDARD RABATTKOD OCH FÖR VOLOSOFT UTVECKLARE. INKÖPSLÄNKAR NEDAN FUNGERAR INTE.", + "DiscountedLicenseExplanation": "Dessa licenspriser är avsedda för små nystartade företag, enskilda utvecklare, studenter, ideella organisationer och projekt!", + "General": "Allmänt", + "License": "Licens", + "Development": "Utveckling", + "Payment": "Betalning", + "WatchExplainerVideo": "Låt oss träffas! Titta på förklarande video", + "LightDarkAndSemiDarkThemes": "Ljus, mörk och halvmörk", + "LeptonXThemeExplanation": "Lepton Theme kan ändra ditt tema enligt dina systeminställningar.", + "PRO": "PRO", + "WelcomeToABPCommercial": "Välkommen till ABP Platform!", + "YourAccountDetails": "Dina kontouppgifter", + "OrganizationName": "Organisationens namn", + "AddDevelopers": "Lägg till utvecklare", + "StartDevelopment": "Starta utveckling", + "CreateAndRunApplicationUsingStartupTemplate": "Lär dig hur du skapar och kör en ny webbapplikation med hjälp av ABP:s startmallar.", + "CommunityDescription2": "community.abp.io är en plats där människor kan dela ABP-relaterade artiklar. Sök efter artiklar, handledningar, kodprover, fallstudier och träffa människor som är i samma spår som du.", + "UseABPSuiteExplanation": "Använd ABP Suite för att ladda ner källkoden för modulerna och temana.", + "ManageModulesWithSuite": "Du kan också hantera dina ABP-moduler med Suite.", + "LearnHowToInstallSuite": "Lär dig hur du installerar och använder ABP Suite.", + "SeeMore": "Se mer", + "SeeLess": "Se mindre", + "LayeredSolutionStructure": "Struktur med flera lager av lösningar", + "LayeredSolutionStructureExplanation": "Lösningen är uppbyggd i lager baserat på principer och mönster för domändriven design för att isolera affärslogiken från infrastruktur och integrationer och för att maximera underhåll och återanvändning av koden. ABP Framework tillhandahåller redan abstraktioner, basklasser och guider för att verkligen implementera DDD för din applikation.", + "MultipleUIOptions": "Flera alternativ för användargränssnitt", + "MultipleUIOptionsExplanation": "Vi älskar olika sätt att skapa användargränssnitt. Den här startup-lösningen ger tre olika alternativ för användargränssnitt för din affärsapplikation.", + "MultipleDatabaseOptions": "Flera databasalternativ", + "MultipleDatabaseOptionsExplanation": "Du har två alternativ för databasleverantörer (förutom att du kan använda båda i en och samma applikation). Använd Entity Framework Core för att arbeta med alla relationsdatabaser och använd eventuellt Dapper när du behöver skriva lågnivåfrågor för bättre prestanda. MongoDB är ett annat alternativ om du behöver använda en dokumentbaserad NoSQL-databas. Även om dessa leverantörer är välintegrerade, abstraherade och förkonfigurerade kan du faktiskt interagera med alla databassystem som du kan använda med .NET.", + "ModularArchitectureExplanation2": "Modularitet är en första klassens medborgare i ABP.IO-plattformen. Alla applikationsfunktionaliteter är uppdelade i välisolerade valfria moduler. Startlösningen levereras redan med de grundläggande ABP-modulerna förinstallerade. Du kan också skapa dina egna moduler för att bygga ett modulärt system för din egen applikation.", + "MultiTenancyForSaasBusiness": "Multi-Tenancy för ditt SaaS-företag", + "MultiTenancyForSaasBusinessExplanation": "ABP tillhandahåller ett komplett, end-to-end multi-tenancy-system för att skapa dina SaaS-system (Software-as-a-Service). Det gör det möjligt för hyresgästerna att dela eller ha sina egna databaser med on-the-fly databasskapande och migrationssystem.", + "MicroserviceStartupSolution": "Microservice Startup-lösning", + "MicroserviceArchitectureExplanation2": "Du kan skaffa det till ditt nästa microservice-system för att dra nytta av den förbyggda baslösningen och destillerade erfarenheten.", + "PreIntegratedTools": "Förintegrerad i populära verktyg", + "PreIntegratedToolsExplanation": "Lösningen är redan integrerad i branschens standardverktyg och -tekniker, men du kan alltid ändra dem och integrera dem med dina favoritverktyg.", + "SingleSignOnAuthenticationServer": "Server för autentisering med enkel inloggning", + "SingleSignOnAuthenticationServerExplanation": "Lösningen har en autentiseringsserverapplikation som används av de andra applikationerna som en server för enkel inloggning med API-åtkomsthanteringsfunktioner. Den är baserad på IdentityServer.", + "WebAppsWithGateways": "2 Webbapp med 2 API-gateways", + "WebAppsWithGatewaysExplanation": "Lösningen innehåller två webbapplikationer som var och en har en dedikerad API-gateway (BFF - Backend For Frontend-mönster).", + "BackOfficeApplication": "Back Office-applikation", + "BackOfficeApplicationExplanation": "Den faktiska webbapplikationen för ditt system, med flera alternativ för användargränssnitt. Du kan skapa alla typer av affärsapplikationer.", + "LandingWebsite": "Landningswebbplats", + "LandingWebsiteExplanation": "En generisk landningsplats/publik webbplats som kan användas för flera ändamål, t.ex. för att presentera ditt företag, sälja dina produkter osv.", + "ABPFrameworkEBook": "Mastering ABP Framework e-bok", + "MasteringAbpFrameworkEBookDescription": "Ingår i din ABP-licens", + "FullName": "Full Name", + "LicenseTypeNotCorrect": "Licenstypen är inte korrekt!", + "Trainings": "Utbildningar", + "ChooseTrainingPlaceholder": "Välj utbildning...", + "DoYouNeedTrainings": "Behöver du någon av dessa utbildningar?", + "DoYouNeedTraining": "Behöver du {0} utbildning?", + "GetInTouchUs": "Ta kontakt med oss", + "ForMoreInformationClickHere": "För mer information, klicka här.", + "ForMoreInformationClickHereByClass": "För mer information, klicka här.", + "IsGetOnboardingTraining": "Vill du få utbildning i onboarding och utveckling av webbapplikationer?", + "OnboardingWebApplicationDevelopmentTrainingMessage": "För att schemalägga din utbildningskalender, vänligen kontakta {0} efter att du har skapat organisationen", + "CustomPurchaseMessage": "För nästa steg, klicka på {0} för att kontakta oss.", + "Note": "Notera", + "AdditionalNote": "Ytterligare anmärkning", + "OnboardingTrainingFaqTitle": "Har du en ABP onboarding-utbildning?", + "OnboardingTrainingFaqExplanation": "Ja, vi har ABP Training Services som hjälper dig att snabbt komma igång med ditt ABP-projekt. Du kommer att lära dig om ABP från en medlem i ABP:s kärnteam och du kommer att få de färdigheter som krävs för att starta ditt ABP-projekt. I onboarding-utbildningen förklarar vi hur du ställer in din utvecklingsmiljö, installerar de nödvändiga verktygen och skapar en fullt fungerande CRUD-sida. Utbildningen kommer att vara live och Zoom-applikationen kommer att användas, men vi är öppna för att använda andra online-mötesplattformar. Språket för utbildningen kommer att vara engelska. Du kan också ställa dina frågor om ABP under sessionerna. En lämplig tid och ett lämpligt datum kommer att planeras för båda parter. För att få mer information, kontakta oss på info@abp.io.", + "AddBasket": "Lägg till i korgen", + "SendTrainingRequest": "Skicka förfrågan om utbildning", + "OnlyEnglishVersionOfThisDocumentIsTheRecentAndValid": "* Den engelska versionen av detta dokument är den mest aktuella och den engelska versionen ska ha företräde i alla tvister.", + "Pricing_Page_Title": "Priser och planer", + "Pricing_Page_Description": "Välj de funktioner och den funktionalitet som ditt företag behöver idag. Köp en ABP-licens och skapa obegränsat med projekt.", + "Pricing_Page_HurryUp": "Skynda dig!", + "Pricing_Page_BuyLicense": "Köp en licens till 2021 års priser fram till den 16 januari!", + "Pricing_Page_ValidForExistingCustomers": "Gäller även för befintliga kunder och licensförnyelser.", + "Pricing_Page_Hint1": "I licenspriset ingår ett visst antal platser för utvecklare. Om du har fler utvecklare kan du alltid köpa ytterligare platser.", + "Pricing_Page_Hint2": "Du kan köpa fler utvecklarlicenser nu eller i framtiden. Licenserna är platsbaserade, vilket innebär att du kan överföra en plats från en utvecklare till en annan.", + "Pricing_Page_Hint3": "Du kan utveckla ett obegränsat antal olika produkter med din licens.", + "Pricing_Page_Hint4": "ABP Suite är ett verktyg som hjälper dig att utveckla och förbättra din produktivitet. Det stöder generering av CRUD-sidor och skapande av nya projekt.", + "Pricing_Page_Hint5": "Du kan använda alla de förbyggda modulerna i dina applikationer.", + "Pricing_Page_Hint6": "Du kan använda alla de förbyggda temana i dina applikationer.", + "Pricing_Page_Hint7": "En startmall är en Visual Studio-lösning som hjälper dig att komma igång med ditt projekt. Alla grundläggande moduler läggs till och förkonfigureras åt dig.", + "Pricing_Page_Hint8": "Mastering ABP Framework e-bok förklarar hur man implementerar .NET-lösningar med bästa praxis. Den säljs på Amazon.com, och du kan ladda ner boken gratis med din licens.", + "Pricing_Page_Hint9": "Du kan ladda ner källkoden för alla moduler. Du kanske vill lägga till källkoden i din lösning för att göra radikala ändringar eller bara behålla den för dig själv av säkerhetsskäl.", + "Pricing_Page_Hint10": "Licenserna är livstidsbaserade. Det innebär att du kan fortsätta att utveckla din applikation för alltid. Tillgång till den senaste versionen och support beviljas inom licensperioden (1 år om du inte förnyar den).", + "Pricing_Page_Hint11": "Inga begränsningar för driftsättning! Du kan distribuera till så många servrar som du vill, inklusive molntjänster eller lokalt.", + "Pricing_Page_Hint12": "Du kan uppdatera moduler, teman och verktyg till den senaste versionen inom din aktiva licensperiod. När din licens löper ut måste du förnya den för att fortsätta att få uppdateringar för buggfixar, nya funktioner och förbättringar.", + "Pricing_Page_Hint13": "Du kan få premiumsupport i ett år (du kan förnya din licens för att förlänga den).", + "Pricing_Page_Hint14": "Team- och Business-licenser har en gräns för antal incidenter/frågor. Om du köper ytterligare utvecklarlicenser ökar incidentgränsen med {0} (för Team-licensen) eller {1} (för Business-licensen) per utvecklare.", + "Pricing_Page_Hint15": "Endast Enterprise License inkluderar privat support. Du kan skicka ett e-postmeddelande direkt till ABP-teamet eller ställa frågor på support.abp.io med ett privat biljettalternativ. De privata ärendena är inte synliga för allmänheten.", + "Pricing_Page_Hint16": "Du kan ladda ner källkoden för alla ABP-teman. Du kanske vill lägga till källkoden i din lösning för att göra radikala ändringar eller bara behålla den för dig själv av säkerhetsskäl.", + "Pricing_Page_Testimonial_1": "ABP gjorde det möjligt för SC Ventures att leverera en bankklassad SaaS-plattform med silodatabas med flera hyresgäster på 9 månader för att stödja leverantörskedjans kundfordringar / leverantörsskulder för finansiering av fakturor med betydande värde från flera integrerade ankare. ABP:s modularitet gjorde det möjligt för teamet att leverera på rekordtid, klara alla VAPT och distribuera den containeriserade mikrotjänststacken via fullständig CI/CD och pipelines till produktion.", + "Pricing_Page_Testimonial_2": "Vi ser värdet av att använda ABP för att minska omkostnaderna för kundanpassade utvecklingsprojekt. Teamet kan förena kodmönstret i olika projektströmmar. Vi ser mer potential i ramverket för att vi ska kunna bygga nya funktioner snabbare än tidigare. Vi litar på att vi ständigt kommer att se värdet av att utnyttja ABP.", + "Pricing_Page_Testimonial_3": "Vi älskar ABP. Vi behöver inte skriva allt från grunden. Vi utgår från out-of-the-box-funktioner och fokuserar bara på det vi verkligen behöver skriva. Dessutom är ABP välarkitekterat och koden är av hög kvalitet med färre buggar. Om vi hade varit tvungna att skriva allt vi behövde på egen hand hade vi kanske fått lägga ner flera år. Ytterligare en sak vi gillar är att den nya versionen, problemfixningen eller förbättringen kommer ut väldigt snart, varannan vecka. Vi väntar inte för länge.", + "Pricing_Page_Testimonial_4": "ABP är en fantastisk produkt som jag skulle rekommendera. Kommersiella produkter till marknaden för våra kunder i en enda konfigurerbar plattform. Den starthjälp som ramverket och verktygen ger alla team är värd varenda cent. ABP var det som passade bäst för våra behov.", + "Pricing_Page_Testimonial_5": "ABP Framework är inte bara ett ramverk, utan det är också en guide för projektutveckling/hantering, eftersom det ger utbildning i DDD, GenericRepository, DI, Microservice och Modularity. Även om du inte kommer att använda själva ramverket kan du utveckla dig själv med docs.abp.io som är väl och professionellt förberedd (OpenIddict, Redis, Quartz etc.). Eftersom många saker är förbyggda förkortar det projektutvecklingstiden avsevärt (t.ex. inloggningssida, undantagshantering, datafiltrering, sådd, revisionsloggning, lokalisering, automatisk API-kontroller etc.) Som ett exempel från vår applikation har jag använt Local Event Bus för lagerstyrning. Så jag kan hantera orderrörelser genom att skriva lagerhanterare. Det är underbart att inte förlora tid för CreationTime, CreatorId. De fylls i automatiskt.", + "Pricing_Page_Testimonial_6": "ABP Framework är ett bra ramverk men det tar tid att förstå de olika lager, klasser och bibliotek som det använder (särskilt ABP). Jag spenderade mycket tid på att läsa kodbasen, men ABP sparade oss tid när vi skapade projektspecialitetsenheterna (AR) och förvaret kopplat till var och en av dem. Jag gillade också att den metod som används i ABP är mycket mogen; vi vet att den är baserad på DDD och monolit.", + "Pricing_Page_Testimonial_7": "Som ett nystartat företag måste vi iterera snabbt och spendera minimal tid på standardfunktioner och icke-kärnfunktioner.\nVåra ingenjörer sträcker sig från mycket erfarna till juniora ingenjörer, och vi behövde en gemensam förståelse och ett sätt att dela teknisk och domänkunskap, ABP gjorde det möjligt för oss att göra detta tack vare deras fantastiska guider och dokumentation.\nDet finns saker som vi inte har behövt oroa oss för eftersom de fungerar direkt med ABP.\nABP hjälpte oss att effektivisera snabb prototyping och utveckling, mindre än 4 veckor från funktionsstart till produktion. Med alla premiumfunktioner som ingår i licensen har ABP gett oss \"Startup in a Box\" på Software Engineering-sidan.", + "Pricing_Page_Testimonial_8": "Jag skulle rekommendera ABP till alla som vill utöka utbudet av produkter som är tillgängliga för sina kunder. Det är fantastiskt när man behöver använda en distribuerad företagsmiljö (Angular, WPF, Win&Linux). Förutom deras produkter älskar vi deras support, som gör vårt jobb snabbare och enklare. Vi vet redan att vi har hittat en bra partner för framtiden som kommer att stödja oss i att expandera vår verksamhet.", + "Pricing_Page_Testimonial_9": "Vi är ett företag med 2 anställda som har varit i branschen i över 20 år.\nNär det gäller vår erfarenhet av ABP kontaktades vi av en kund som ville att vi skulle utveckla en ny personalapplikation i en modern miljö för att ersätta deras 25 år gamla Access-applikation. Vi bestämde oss för att gå över från en desktoplösning till en webbaserad lösning.\n\nVid den tidpunkten hade vi mycket liten kunskap om webbapplikationer och .NET, men vi snubblade över ABP, och med hjälp av ABP Framework, teknisk dokumentation och ABP Suite kunde vi inte bara utveckla applikationen enligt kundens specifikationer utan också framgångsrikt arbeta i en .NET-miljö inom ett år.", + "AbpBookDownloadArea_ClaimYourEBook": "Gör anspråk på din e-bok om ABP Framework", + "AddMemberModal_Warning_1": "Om det användarnamn som du försöker lägga till inte finns i systemet, be din teammedlem att registrera sig på {0} och dela användarnamnet på hans/hennes konto med dig.", + "MyOrganizations_Detail_WelcomeMessage": "Välkommen till din organisation, {0}", + "MyOrganizations_Detail_OrganizationManagement": "Organisation Förvaltning", + "OrganizationDisplayName": "Organisationens visningsnamn", + "MyOrganizations_Detail_EditDisplayName": "Redigera visningsnamn", + "MyOrganizations_Detail_UpgradeYourLicense": "Uppgradera din licens", + "MyOrganizations_Detail_LicenseStartAndExpiryDate": "Licensens startdatum - utgångsdatum", + "MyOrganizations_Detail_OwnerRightInfo": "Du använder {0} av din {1} ägares rättigheter.", + "MyOrganizations_Detail_CopyApiKey": "Kopiera nyckeln", + "MyOrganizations_Detail_ApiKeyDescription": "API-nyckeln är token för PRO-paket som finns på {1}.", + "MyOrganizations_Detail_YourPrivateNugetSource": "Din privata NuGet-källa är {0}", + "MyOrganizations_Detail_PrivateNugetSourceWarning": "Detta läggs automatiskt till som en feed till din NuGet.Config i din ABP-lösning. Dela inte din privata nyckel med obehöriga användare!", + "MyOrganizations_Detail_DeveloperSeatInfo": "Du använder {0} av dina {1} platser för utvecklare.", + "NeedMoreSeatsForYourTeam": "Behöver du fler platser för ditt team?", + "MyOrganizations_Detail_PricePerYear": "{0} / per år", + "MyOrganizations_Detail_PurchaseDeveloperSeats": "Köpa platser för utvecklare", + "Invoices": "Fakturor", + "RequestInvoice": "Begär faktura", + "OrderNumber": "Beställningsnummer", + "Date": "Datum", + "Products": "Produkter", + "TotalPrice": "Totalt pris", + "ThereIsNoInvoice": "Det finns ingen faktura", + "MyOrganizations_Detail_PaymentProviderInfo": "Om du har köpt din licens via {0} gateway skickas PDF-fakturan till din e-postadress, se {0} fakturering.", + "MyOrganizations_Detail_PayUInfo": "Om du har köpt via Iyzico-gatewayen klickar du på knappen \"Begär faktura\" och fyller i faktureringsinformationen.", + "MyOrganizations_Detail_ConclusionInfo": "Din fakturabegäran kommer att behandlas inom {0} arbetsdagar.", + "ExtendYourLicense": "Förläng din {0} licens", + "Continue": "Fortsätt", + "PurchaseLicense": "Köp {0} licens", + "DownloadInvoiceModal_DownloadInvoice": "Ladda ner faktura", + "DownloadInvoiceModal_SaveInformationOnlyOnce": "Du kan bara spara din faktureringsinformation en gång.", + "InvoiceModal_EnterCompanyName": "Ange ditt juridiska företagsnamn...", + "InvoiceModal_EnterCompanyAddress": "Ange din juridiska företagsadress...", + "InvoiceModal_EnterTaxNumber": "Ange ditt TAX/VAT-nummer om det finns tillgängligt...", + "RequestInvoiceModal_EnterNotes": "Ytterligare information för din faktura... Denna anteckning kommer att skrivas i anteckningsavsnittet på fakturan.", + "PrePayment_PayWithIyzico": "Du kommer att betala med Iyzico", + "ContinueToCheckout": "Fortsätt till kassan", + "PrePayment_IyzicoRedirectionInfo": "Du kommer att omdirigeras till Iyzico Payment Gateway för att slutföra ditt köp på ett säkert sätt.", + "PrePayment_IyzicoAcceptVisaAndMasterCard": "Iyzico tar emot Visa och MasterCard.", + "Purchase": "Köp", + "AcceptTermsAndConditions": "Jag har läst, förstått och accepterar integritetspolicy, villkor och EULA.", + "AcceptTermsAndConditionsWarningMessage": "Vänligen acceptera integritetspolicyn och villkoren", + "SelectGatewayToContinue": "Vänligen välj en Gateway för att fortsätta!", + "GatewaySelection_SelectGateway": "Välj en betalningsportal", + "GatewaySelection_RedirectionMessage": "Därefter kommer du att omdirigeras till den valda betalningsgatewayens webbplats för transaktionen.", + "PaymentSucceed_PaymentSuccessMessage": "Betalning framgångsrik", + "PaymentSucceed_ThanksForPurchase": "Tack för ditt köp!", + "PaymentSucceed_CreateYourOrganization": "Skapa din organisation", + "PaymentSucceed_AddMeAsDeveloper": "Jag är också utvecklare, lägg till mig som utvecklare i min organisation.", + "PaymentSucceed_CreateOrganization": "Skapa organisation", + "PaymentSucceed_OrganizationDescription": "En organisation består av utvecklare och ägare. Utvecklarna är användare som skriver kod på ABP-projektet och som kommer att dra nytta av webbplatsen {1}. Ägarna är användare som tilldelar utvecklarplatser och hanterar licensiering.", + "PaymentSucceed_ViewOrganization": "Klicka här för att se organisationen", + "Purchase_TotalAnnualPrice": "TOTALT (årsavgift)", + "Purchase_TrainingPrice": "Pris för utbildning", + "Purchase_OnboardingTraining": "Live-utbildning i onboarding och utveckling av webbapplikationer", + "TotalDeveloperPrice": "Totalt pris för utvecklare", + "Purchase_PricePerDeveloper": "{0} per utvecklare", + "Purchase_IncludedDeveloperInfo": "{0} {1} ingår.", + "Purchase_LicenseExtraDeveloperPurchaseMessage": "I {0} licens ingår {1} utvecklare. Du kan lägga till ytterligare utvecklare.", + "StartupTemplates_Page_Title": "ABP Startup Mallar", + "StartupTemplates_Page_Description": "Med ABP kan du bygga lösningar med valfri komplexitetsnivå. Det ger två huvudsakliga förbyggda startlösningar. Du kan välja den som ligger närmast dina krav och bygga din egen anpassade lösning ovanpå den.", + "MicroserviceStartupSolutionForDotnet": "Microservice Startup-lösning för .NET", + "MonolithSolutionForDotnet": "Monolitisk (modulär) lösning för .NET", + "TrainingDetailsHeaderInfo_TrainingHour": "{0} timmar", + "Trainings_Content": "Utbildningens innehåll", + "Trial_Page_StartYourFreeTrial": "Starta din gratis provperiod.", + "TrialLicenseFeatures": "Du kommer att kunna dra nytta av alla ABP:s kommersiella funktioner", + "TrialPeriodDays": "Du kommer att ha en {0} dagars teamlicens", + "TrialForumSupportIncident": "Du kommer att ha {0} forum support incidenter", + "Contact_Page_Title": "Kontakt med ABP:s utvecklingsteam", + "Contact_Page_Description": "Kontakta ABP:s utvecklingsteam om du behöver hjälp eller dela med dig av dina tankar och åsikter! ABP Support Team är redo att hjälpa till.", + "Demo_Page_Title": "Skapa en demo", + "Demo_Page_Description": "Skapa en gratis demo för att se ett exempel på en ansökan som skapats med hjälp av ABP:s startmallar. Upprepa inte dig själv för vanliga applikationskrav.", + "Discounted_Page_Title": "Rabatterad prissättning", + "Discounted_Page_Description": "Välj de funktioner och den funktionalitet som ditt företag behöver redan idag. Köp en ABP-licens och skapa obegränsat med projekt", + "Faq_Page_Title": "Vanliga frågor och svar (FAQ)", + "Faq_Page_Description": "Har du några frågor eller funderingar? Sök bland vanliga frågor eller ställ en fråga till oss via kontaktformuläret.", + "Faq_Page_SwiftCode": "SWIFT-kod", + "Faq_Page_BankName": "Bankens namn", + "Faq_Page_AccountName": "Kontots namn", + "Faq_Page_AccountNumber": "Kontonummer", + "Faq_Page_Currency": "Valuta", + "Faq_Page_VatNumber": "Momsregistreringsnummer", + "Faq_Page_OtherCurrenciesInfo": "För andra valutor, se alla konton", + "ProjectCreatedSuccess_Page_Title": "Ditt projekt skapat", + "ProjectCreatedSuccess_Page_Description": "Ditt ABP-projekt har skapats framgångsrikt!", + "Suite_Page_Title": "ABP-svit", + "Suite_Page_Description": "ABP tillhandahåller verktyg för snabb applikationsutveckling för att öka utvecklarens produktivitet. Med ABP Suite kan du enkelt skapa CRUD-sidor.", + "Themes_Page_Title": "ABP Teman", + "Themes_Page_Description": "ABP tillhandahåller flera professionella, moderna UI-teman. Skapa en gratis demo för att få en snabb bild av hur användargränssnittet ser ut.", + "Tools_Page_Title": "Verktyg för snabb applikationsutveckling", + "Tools_Page_Description": "ABP tillhandahåller verktyg för snabb applikationsutveckling för att öka utvecklarens produktivitet. Med ABP Suite kan du enkelt skapa CRUD-sidor.", + "DeveloperPrice": "Pris för utvecklare", + "AdditionalDeveloperPaymentInfoSection_AdditionalDevelopers": "{0} utvecklare", + "LicenseRemainingDays": "för {0} dagar", + "ExtendPaymentInfoSection_Description": "Genom att förlänga/förnya din licens kommer du att fortsätta att få premium support. Du kommer också att kunna få större eller mindre uppdateringar för moduler och teman. Du kommer att kunna fortsätta skapa nya projekt. Och du kommer fortfarande att kunna använda ABP Suite som påskyndar din utveckling.", + "LicenseRenewalPrice": "Pris för förnyelse av licens", + "LicensePrice": "Licenspris", + "TrialLicensePaymentInfoSection_Description": "Köp licens: Genom att köpa en licens kommer du att fortsätta att få premium support. Du kommer också att kunna få större eller mindre uppdateringar för moduler och teman. Du kommer att kunna fortsätta skapa nya projekt. Och du kommer fortfarande att kunna använda ABP Suite som påskyndar din utveckling.
Se jämförelsetabellen för licenser för att kontrollera skillnaderna mellan licenstyperna.", + "SelectTargetLicense": "Välj mållicens", + "UpgradePaymentInfoSection_ExtendMyLicenseForOneYear": "Ja, förlänga min licens utgångsdatum med 1 år.", + "UpgradePaymentInfoSection_WantToExtendLicense": "Vill du förlänga din licens med ytterligare 1 år?", + "UpgradePaymentInfoSection_UpgradingWillNotExtendLicense": "Uppgradering kommer inte att förlänga licensens utgångsdatum!", + "UpgradePaymentInfoSection_LicenseUpgradeDescription": "Genom att uppgradera din licens kommer du att bli befordrad till en högre licenstyp, vilket gör att du kan få ytterligare fördelar. Se jämförelsetabellen för licenser för att kontrollera skillnaderna mellan licenstyperna.", + "Landing_Page_CustomerStories": "Customer Stories", + "Landing_Page_OurGreatCustomers": "Våra fantastiska kunder", + "Landing_Page_WebApplicationFramework": "Ramverk för webbapplikationer", + "Landing_Page_WebDevelopmentPlatform": "Plattform för webbutveckling", + "Landing_Page_CompleteWebDevelopmentPlatform": "Komplett plattform för webbutveckling", + "Landing_Page_TryFreeDemo": "Prova gratis demo", + "Landing_Page_StartingPointForWebApplications": "Utgångspunkten för ASP.NET Core-baserade webbapplikationer! Den är baserad på ABP-ramverket för bästa webbutveckling.", + "Landing_Page_AbpProvidesSoftwareInfrastructure": "ABP Framework tillhandahåller en mjukvaruinfrastruktur för att utveckla utmärkta webbapplikationer med bästa praxis.", + "Landing_Page_MicroserviceCompatibleArchitecture": "Kompatibel arkitektur för mikrotjänster", + "Landing_Page_PreBuiltApplicationModulesAndThemes": "Förbyggda applikationsmoduler och teman", + "Landing_Page_MultiTenantArchitecture": "Arkitektur för flera hyresgäster", + "Landing_Page_MultiTenancyDescription": "SaaS-applikationer på ett enkelt sätt! Integrerad multi-tenancy från databas till användargränssnitt.", + "Landing_Page_DDDIntroduction": "Designad och utvecklad utifrån DDD-mönster och principer. Ger en skiktad modell för din applikation.", + "Landing_Page_CrossCuttingConcernsInfo": "Komplett infrastruktur för auktorisering, validering, undantagshantering, cachelagring, revisionsloggning, transaktionshantering med mera.", + "Landing_Page_PreBuiltApplicationModules": "Förbyggda applikationsmoduler som omfattar de vanligaste kraven på webbapplikationer.", + "Landing_Page_ChatModule": "Chatt", + "Landing_Page_DocsModule": "Dokument", + "Landing_Page_FileManagementModule": "Filhantering", + "Landing_Page_CustomerStory_1": "ABP gjorde det möjligt för SC Ventures att leverera en bankklassad SaaS-plattform med silodatabas med flera hyresgäster på 9 månader för att stödja leverantörskedjans kundfordringar / leverantörsskulder för finansiering av fakturor med betydande värde från flera integrerade ankare. ABP:s modularitet gjorde det möjligt för teamet att leverera på rekordtid, klara alla VAPT och distribuera den containeriserade mikrotjänststacken via fullständig CI/CD och pipelines till produktion.", + "Landing_Page_CustomerStory_2": "Vi ser värdet av att använda ABP för att minska omkostnaderna för anpassade utvecklingsprojekt. Teamet kan förenhetliga kodmönstret i olika projektflöden. Vi ser mer potential i ramverket för att vi ska kunna bygga nya funktioner snabbare än tidigare. Vi litar på att vi ständigt kommer att se värdet av att utnyttja ABP.", + "Landing_Page_CustomerStory_3": "Vi älskar ABP. Vi behöver inte skriva allt från grunden. Vi utgår från out-of-the-box-funktioner och fokuserar bara på det vi verkligen behöver skriva. Dessutom är ABP välarkitekterat och koden är av hög kvalitet med färre buggar. Om vi hade varit tvungna att skriva allt vi behövde på egen hand hade vi kanske fått lägga ner flera år. Ytterligare en sak som vi gillar är att den nya versionen, problemfixningen eller förbättringen kommer ut mycket snart\n varannan vecka. Vi väntar inte för länge.", + "Landing_Page_CustomerStory_4": "ABP är en fantastisk produkt som jag skulle rekommendera. Kommersiella produkter till marknaden för våra kunder i en enda konfigurerbar plattform. Den starthjälp som ramverket och verktygen ger alla team är värd varenda cent. ABP var det som passade bäst för våra behov.", + "Landing_Page_AdditionalServices": "Anpassad eller volymlicens, onboarding, liveutbildning och support, anpassad projektutveckling, portning av befintliga projekt och mycket mer...", + "Landing_Page_IncludedDeveloperLicenses": "Inkluderar {0} utvecklarlicenser", + "Landing_Page_SeeOnDemo": "Se på Demo", + "Landing_Page_LeptonThemes": "LeptonTema", + "Landing_Page_AccountModuleDescription_1": "Denna modul implementerar autentiseringssystemet för en applikation;", + "Landing_Page_AccountModuleDescription_2": "Tillhandahåller en inloggningssida med användarnamn och lösenord", + "Landing_Page_AccountModuleDescription_3": "Tillhandahåller en register-sida för att skapa ett nytt konto.", + "Landing_Page_AccountModuleDescription_4": "Tillhandahåller en glömt lösenord-sida för att skicka en återställningslänk för lösenord som ett e-postmeddelande.", + "Landing_Page_AccountModuleDescription_5": "Ger email confirmation-funktionalitet med UI.", + "Landing_Page_AccountModuleDescription_6": "Implementerar tvåfaktor-autentisering (SMS och e-post).", + "Landing_Page_AccountModuleDescription_7": "Implementerar användarspärr (låser kontot under en viss tid när ett visst antal misslyckade inloggningar inträffar på grund av ogiltiga inloggningsuppgifter inom en viss tidsperiod).", + "Landing_Page_AccountModuleDescription_8": "Implementerar användargränssnitt och funktionalitet för autentiseringsservern Identity Server.", + "Landing_Page_AccountModuleDescription_9": "Gör det möjligt att växla mellan hyresgäster i en miljö med flera hyresgäster.", + "Landing_Page_AccountModuleDescription_10": "Gör det möjligt att ändra UI-språk i programmet.", + "Landing_Page_AuditLoggingModuleDescription_1": "Den här modulen tillhandahåller gränssnittet för rapportering av granskningsloggar för granskningsinfrastrukturen. Gör det möjligt att söka, filtrera och visa poster i granskningsloggen och loggar över enhetsändringar.", + "Landing_Page_AuditLoggingModuleDescription_2": "En post i granskningsloggen består av kritisk information om varje klientförfrågan:", + "Landing_Page_AuditLoggingModuleDescription_3": "URL, webbläsare, IP-adress, klientnamn", + "Landing_Page_AuditLoggingModuleDescription_4": "Användaren", + "Landing_Page_AuditLoggingModuleDescription_5": "HTTP-metod, HTTP-returstatuskod", + "Landing_Page_AuditLoggingModuleDescription_6": "Framgång/misslyckande, detaljer om undantag om sådana finns", + "Landing_Page_AuditLoggingModuleDescription_7": "Tid för genomförande av begäran", + "Landing_Page_AuditLoggingModuleDescription_8": "Enheterna har skapats, tagits bort eller uppdaterats i denna begäran (med ändrade egenskaper).", + "Landing_Page_BloggingModuleDescription_1": "Denna modul lägger till en enkel blogg i din ABP-applikation;", + "Landing_Page_BloggingModuleDescription_2": "Gör det möjligt att skapa flera bloggar i en och samma applikation.", + "Landing_Page_BloggingModuleDescription_3": "Stöder Markdown-formatet.", + "Landing_Page_BloggingModuleDescription_4": "Gör det möjligt att skriva en kommentar till ett inlägg.", + "Landing_Page_BloggingModuleDescription_5": "Gör det möjligt att tilldela taggar till blogginläggen.", + "Landing_Page_BloggingModuleDescription_6": "Se webbplatsen blog.abp.io som ett levande exempel på bloggmodulen.", + "Landing_Page_ChatModuleDescription_1": "Denna modul används för realtidsmeddelanden mellan användare i applikationen.", + "Landing_Page_ChatModuleDescription_2": "Meddelanden i realtid på chatt-sidan.", + "Landing_Page_ChatModuleDescription_3": "Sök efter användare i applikationen för nya konversationer.", + "Landing_Page_ChatModuleDescription_4": "Kontaktlista för senaste konversationer.", + "Landing_Page_ChatModuleDescription_5": "Meddelanden om nya meddelanden när användaren tittar på en annan sida.", + "Landing_Page_ChatModuleDescription_6": "Symbol för totalt antal olästa meddelanden på menyikonen.", + "Landing_Page_ChatModuleDescription_7": "Antal olästa meddelanden för varje konversation.", + "Landing_Page_ChatModuleDescription_8": "Lata laddade konversationer.", + "Landing_Page_DocsModuleDescription_1": "Denna modul används för att skapa webbplatser för teknisk dokumentation;", + "Landing_Page_DocsModuleDescription_2": "Inbyggd GitHub-integration: Skriv och hantera dokument direkt på GitHub.", + "Landing_Page_DocsModuleDescription_3": "Stöd för Versioning direkt integrerat i GitHub-utgåvor.", + "Landing_Page_DocsModuleDescription_4": "Stöd för flerspråkighet (med fallback-stöd till standardspråket).", + "Landing_Page_DocsModuleDescription_5": "Stöder formaten Markdown och HTML.", + "Landing_Page_DocsModuleDescription_6": "Innehåller en navigation och en outline.", + "Landing_Page_DocsModuleDescription_7": "Gör det möjligt att hosta flera projekt dokumentation i en enda applikation.", + "Landing_Page_DocsModuleDescription_8": "Länkar till filen på GitHub, så att vem som helst enkelt kan bidra genom att klicka på Edit-länken.", + "Landing_Page_DocsModuleDescription_9": "Förutom GitHub-källan kan du helt enkelt använda en mapp som dokumentationskälla.", + "Landing_Page_FileManagementModuleDescription_1": "Ladda upp, ladda ner och organisera filer i en hierarkisk mappstruktur.", + "Landing_Page_FileManagementModuleDescription_2": "Den här modulen används för att ladda upp, ladda ner och organisera filer i en hierarkisk mappstruktur. Den är också kompatibel med multi-tenancy och du kan bestämma den totala storleksgränsen för dina hyresgäster.", + "Landing_Page_FileManagementModuleDescription_3": "Den här modulen är baserad på BLOB-lagring-systemet, så den kan använda olika lagringsleverantörer för att lagra filinnehållet.", + "Landing_Page_IdentityModuleDescription_1": "Denna modul implementerar användar- och rollsystemet i en applikation;", + "Landing_Page_IdentityModuleDescription_2": "Bygger på Microsofts ASP.NET Core Identity-bibliotek.", + "Landing_Page_IdentityModuleDescription_3": "Hantera roller och användare i systemet. En användare kan ha flera roller.", + "Landing_Page_IdentityModuleDescription_4": "Ange behörigheter i roll- och användarnivåer.", + "Landing_Page_IdentityModuleDescription_5": "Aktivera/avaktivera tvåfaktorautentisering och låsning av användare per användare.", + "Landing_Page_IdentityModuleDescription_6": "Hantera grundläggande användarprofil och lösenord.", + "Landing_Page_IdentityModuleDescription_7": "Hantera anspråkstyper i systemet, koppla anspråk till roller och användare.", + "Landing_Page_IdentityModuleDescription_8": "Inställningssida för att hantera lösenordskomplexitet, användarinloggning, konto och spärr.", + "Landing_Page_IdentityModuleDescription_9": "Stöd för LDAP-autentisering.", + "Landing_Page_IdentityModuleDescription_10": "Ger verifiering av e-postadress och telefonnummer.", + "Landing_Page_IdentityModuleDescription_11": "Stödjer integrering av sociala inloggningar (Twitter, Facebook, GitHub etc.).", + "Landing_Page_IdentityModuleDescription_12": "Hantera organisationsenheter i systemet.", + "Landing_Page_PaymentModuleDescription_1": "Ger integration för olika betalningsgateways.", + "Landing_Page_PaymentModuleDescription_2": "Denna modul ger integration för betalningsgateways, så att du enkelt kan få betalning från dina kunder.", + "Landing_Page_PaymentModuleDescription_3": "Denna modul stöder följande betalningsportaler", + "Welcome_Page_UseSameCredentialForCommercialWebsites": "Använd samma autentiseringsuppgifter för både abp.io och abp.io/support.", + "WatchCrudPagesVideo": "Titta på videon \"Skapa CRUD-sidor med ABP Suite\"!", + "WatchGeneratingFromDatabaseVideo": "Titta på videon \"ABP Suite: Generera CRUD-sidor från befintliga databastabeller\" Video!", + "WatchTakeCloserLookVideo": "Titta på videon \"Ta en närmare titt på kodgenerering: ABP Suite\" Video!", + "ConfirmedEmailAddressRequiredToStartTrial": "Du måste ha en bekräftad e-postadress för att kunna starta en testlicens.", + "EmailVerificationMailNotSent": "E-postverifiering mail kunde inte skickas.", + "GetConfirmationEmail": "Klicka här för att få ett verifieringsmejl om du inte har fått det tidigare.", + "WhichLicenseTypeYouAreInterestedIn": "Vilken licenstyp är du intresserad av?", + "DontTakeOurWordForIt": "Ta inte vårt ord för det...", + "ReadAbpCommercialUsersWantYouToKnow": "Läs vad ABP:s användare vill att du ska veta", + "Testimonial_ShortDescription_1": "ABP:s modularitet gjorde det möjligt för teamet att leverera i tid.", + "Testimonial_ShortDescription_2": "Bygg nya funktioner snabbare än tidigare.", + "Testimonial_ShortDescription_3": "Vi utgår från out-of-the-box-funktioner och fokuserar bara på det som vi verkligen behöver skriva.", + "Testimonial_ShortDescription_4": "ABP passade bäst för våra behov.", + "OnlineReviewersOnAbpCommercial": "Online recensioner om ABP", + "SeeWhatToldAboutAbpCommercial": "Se vad som har sagts om ABP och skriv dina tankar om du vill.", + "BlazoriseLicense": "Måste vi köpa en Blazorise-licens?", + "BlazoriseLicenseExplanation": "Vi har ett avtal mellan Volosoft och Megabit, med detta avtal är Blazorise-licensen buntad med ABP-produkter, därför behöver våra kunder inte köpa en extra Blazorise-licens.", + "ExtendPaymentInfoSection_DeveloperPrice": "{0}x Ytterligare utvecklare", + "ExtendPaymentInfoSection_DiscountRate": "Rabatt {0}%.", + "TotalNetPrice": "Totalt nettopris", + "EFCore": "Entity Framework Core", + "All": "Alla", + "Mvc": "MVC", + "DataBaseProvider": "Dataleverantör", + "UIFramework": "Ramverk för användargränssnitt", + "LeptonXThemeForDashboard": "LeptonX Theme för din Admin Dashboard av", + "AbpPlatform": "ABP-plattform", + "YouDeserveGoodUXUI": "Du förtjänar ett bra UI och ett bättre UX. LeptonX Theme by ABP är här för att tjäna det.", + "ViewLiveDemo": "Visa demo för live-tema", + "GetLeptonX": "Skaffa LeptonX nu", + "SeeLeptonXDocumentation": "Se LeptonX dokumentation", + "SeeLeptonDocumentation": "Se Lepton Dokumentation", + "SimplifiedMenu": "Förenklad meny", + "SimplifiedMenuDescription": "Du kan enkelt hitta den sida du letar efter genom att filtrera i menyn", + "YourFavoritePages": "Dina favoritsidor inom räckhåll", + "YourFavoritePagesDescription": "Lägg enkelt till eller ta bort sidan från favoriter genom att klicka på stjärnikonen i det övre högra hörnet av sidan.", + "BreadCrumbs": "Breadcrumb för sömlös växling", + "BreadCrumbsDescription": "Med Breadcrumb kan du växla till sidorna på samma nivå med ett klick, även när vänstermenyn är stängd, och det fungerar på surfplattor och mobiler!", + "YourMenu": "Din meny som du vill ha den", + "YourMenuDescription": "Anpassa de direktklickbara ikonerna och rullgardinsmenyerna i användarmenyn som du vill. Användarmenyn är helt anpassningsbar efter dina behov", + "RtlSupport": "RTL-stöd för ditt språk", + "RtlSupportDescription": "LeptonX Theme stöder RTL för ditt språk. Språkalternativen finns i inställningsmenyn så att du kan ändra språk.", + "YourColors": "Dina färger i gränssnittet för din adminpanel", + "YourColorsDescription": "LeptonX Theme fungerar enligt dina systeminställningar och har alternativ för dashboard light theme, dashboard dark theme och dashboard semi-dark theme.", + "ArrangeContentWidth": "Ordna enkelt bredden på ditt innehåll", + "ArrangeContentWidthDescription": "Ändra enkelt bredden på din innehållsyta.", + "LeptonXCompatibleWith": "LeptonX Theme är kompatibelt med", + "MobileResponsiveTemplate": "Mobil responsiv mall", + "MobileResponsiveTemplateDescription1": "Få tillgång till LeptonX adminpanel från vilken enhet du vill.", + "MobileResponsiveTemplateDescription2": "Den är utformad för att du enkelt ska kunna använda den i alla dina enheter. Den är responsiv på mobila enheter och surfplattor.", + "TopMenuLayoutOption": "Alternativ för layout av toppmeny", + "TopMenuLayoutOptionDescription1": "Om du vill konfigurera din webbplats med samma adminpanel är det möjligt att göra det med LeptonX Theme!", + "TopMenuLayoutOptionDescription2": "Prova bara LeptonX toppmenylayout för att få det att hända!", + "EasilyCustomizable": "Lätt att anpassa till ditt varumärkes färger", + "EasilyCustomizableDescription1": "Du kan anpassa LeptonX-temat med bara några få SCSS-variabler. Ingen åsidosättning, ingen extra CSS-belastning!", + "EasilyCustomizableDescription2": "Med LeptonX kan du ordna din adminpanel precis som du vill.", + "IndependentLayout": "Oberoende layout och innehållsyta", + "IndependentLayoutDescription1": "LeptonX:s layoutinfrastruktur utformades helt separat från innehållet.", + "IndependentLayoutDescription2": "Detta innebär att du fritt kan utforma ditt projekt med en annan innehållsstruktur än Bootstrap om du vill.", + "MostUsedLibraries": "De mest använda biblioteken integrerade med LeptonX", + "MostUsedLibrariesDescription1": "LeptonX innehåller dina mest använda bibliotek. Det gör att du enkelt kan använda bibliotek som ApexCharts, DataTables, DropZone, FullCalender, JSTree, Select2 och Toastr.", + "MostUsedLibrariesDescription2": "LeptonX stöder också MVC Angular och Blazor-specifika bibliotek.", + "CreateAndCustomize": "Skapa och anpassa de sidor du behöver på några sekunder med LeptonX anpassade sidor", + "CreateAndCustomizeDescription": "Genom att använda LeptonX Theme får du också tillgång till många färdiga HTML-sidor. Dessa inkluderar många sidor som inloggningssida, blogg, FAQ, prenumerationslista, faktura, prissättning och filhantering.", + "LeptonThemeForAdmin": "Lepton Theme för din adminpanel genom att", + "LeptonThemeForAdminDescription": "Lepton Theme är fortfarande tillgängligt och kommer att underhållas. Om du vill byta till LeptonX Theme som Lepton Theme-användare kan du se dokumentationen för att lära dig hur du gör.", + "LeptonCompatibleWith": "Lepton Theme är kompatibelt med", + "BlackFridayDiscount": "Black Friday-rabatt", + "UpgradePaymentInfoSection_DeveloperPrice": "{0} för {1} ytterligare utvecklare", + "Upgrade": "Uppgradering", + "Renewal": "Förnyelse", + "UpgradePaymentInfoSection_LicensePrice": "{0} licens", + "UpgradePaymentInfoSection_LicenseRenewalPrice": "Förnyelse av licens", + "Total": "Totalt", + "SupportPolicyFaqTitle": "Vilken är er supportpolicy?", + "SupportPolicyFaqExplanation": "Vi stöder endast den aktiva och den tidigare huvudversionen. Vi garanterar inte en patchrelease för den tredje och äldre huvudversionen. Till exempel, om den aktiva versionen är 7.0.0, kommer vi att släppa patchversioner för både 6.x.x och 7.x.x. Dessutom ger vi support endast för ABP Framework och ABP-relaterade problem. Det betyder att inget stöd ges för tredjepartsapplikationer, molntjänster och andra perifera bibliotek som används av ABP-produkter. Vi kommer att använda kommersiellt rimliga ansträngningar för att ge våra kunder teknisk support under \"Volosoft Bilisim A.S\" officiella öppettider. Å andra sidan förbinder vi oss inte till en svarstid enligt servicenivåavtal (SLA), men vi kommer att försöka svara på de tekniska frågorna så snabbt som möjligt inom våra officiella arbetstider. Om inte en särskild överenskommelse görs med kunden tillhandahåller vi endast support på https://support.abp.io. Vi har också en privat e-postsupport som endast är tillgänglig för innehavare av Enterprise-licenser.", + "TotalDevelopers": "Totalt {0} utvecklare", + "CustomPurchaseExplanation": "Skräddarsydd för dina specifika behov", + "WhereDidYouHearAboutUs": "Var har du hört talas om oss?", + "Twitter": "Twitter", + "Facebook": "Facebook", + "Youtube": "YouTube", + "Google": "Google", + "Github": "GitHub", + "Friend": " Från en vän", + "Other": "Övriga", + "WhereDidYouHearAboutUs_explain": "Ange ...", + "DeletingMemberWarningMessage": "\"{0}\" kommer att tas bort från listan över utvecklare. Om du vill kan du tilldela denna tomma plats till en annan utvecklare senare.", + "AdditionalInfo": "Om antalet platser för utvecklare överstiger dina krav kan du minska dem. Du kan skicka e-post till info@abp.io för att ta bort några av dina utvecklarplatser. Om du rensar bort oanvända utvecklarplatser minskar kostnaden för licensförnyelse. Om du vill kan du återköpa ytterligare utvecklarplatser inom din aktiva licensperiod. Observera att eftersom det finns {0} utvecklare i det här licenspaketet kan du inte minska detta antal.", + "LinkExpiredErrorMessage": "Länken du försöker komma åt har gått ut.", + "ExpirationDate": "Utgångsdatum", + "SpringCampaignDiscount": "Rabatt på vårkampanjen", + "WhyUseAbpIoPlatform": "Varför ska jag använda ABP.IO-plattformen i stället för att skapa en ny lösning från grunden?", + "WhyUseAbpIoPlatformFaqExplanation": "Se den sidan för en detaljerad förklaring av varför användning av ABP.IO Platform har en betydande fördel jämfört med att göra allt själv.", + "EulaPageTitle": "Licensavtal för slutanvändare (EULA)", + "PrivacyPolicyPageTitle": "Integritetspolicy - Cookiepolicy", + "TermsConditionsPageTitle": "Villkor och anvisningar", + "TrainingsPageTitle": "ABP:s utbildningspaket", + "ModulesPageTitle": "ABP Förbyggda applikationsmoduler", + "Volo.AbpIo.Commercial:040001": "API-åtkomstnyckeln är felaktig.", + "GetLepton": "Skaffa Lepton nu", + "MyOrganizations_Detail_LicenseStartDate": "Startdatum", + "MyOrganizations_Detail_LicenseExpiryDate": "Utgångsdatum", + "BlazoriseSupport": "Hur får jag Blazorise-licensnyckeln och support från Blazorise-teamet?", + "BlazoriseSupportExplanation": "Följ stegen nedan för att få support från Blazorise-teamet och få din Blazorise-licensnyckel:", + "BlazoriseSupportExplanation1": "Registrera dig för ett nytt konto på blazorise.com/support/register med samma e-postadress som ditt abp.io-konto. Lämna posten \"Licensnyckel\" tom. Det måste vara samma e-postadress som ditt e-postkonto på abp.io.", + "BlazoriseSupportExplanation2": "Verifiera din e-postadress genom att kolla din e-postlåda. Kontrollera din skräppostlåda om du inte ser ett e-postmeddelande i din inkorg!", + "BlazoriseSupportExplanation3": "Logga in på Blazorise supportwebbplats på blazorise.com/support/login.", + "BlazoriseSupportExplanation4": "Om du har en aktiv ABP betald licens kommer du också att ha en Blazorise PRO-licens. Du kan få din Blazorise-licensnyckel på blazorise.com/support/user/manage/license.", + "BlazoriseSupportExplanation5": "Du kan ställa dina frågor på supportwebbplatsen och generera en produkttoken för din applikation.", + "AbpLiveTrainingPackages": "ABP Live utbildningspaket", + "Releases": "Utgåvor", + "ReleasesDescription": "Den här sidan innehåller detaljerad information om varje release. Du kan se alla stängda pull requests för en specifik release. För övergripande milstolpsutvecklingar kan du kolla in sidan med kortfattade releaseanteckningar.", + "ReleaseDate": "Utgivningsdatum", + "Labels": "Etiketter", + "PreRelease": "Förhandsrelease", + "AllTypes": "Alla typer", + "Enhancement": "Förbättring", + "Bug": "Insekt", + "Feature": "Funktion", + "AllUIs": "Alla användargränssnitt", + "MVC": "MVC", + "BlazorServer": "Blazor Server", + "MAUI": "MAUI", + "HowItWorks_Page_Title": "Hur fungerar det?", + "HowItWorks_Page_Description": "ABP Framework utökar .NET-plattformen. Så allt du kan göra med en vanlig .NET-lösning är redan möjligt med ABP Framework. Det gör det enkelt att komma igång med en låg inlärningskurva.", + "HowItWorks_Description1": "ABP Framework utökar .NET-plattformen. Så allt du kan göra med en vanlig .NET-lösning är redan möjligt med ABP Framework. Det gör det enkelt att komma igång med en låg inlärningskurva.", + "HowItWorks_Description2": "När du väl har börjat lära dig och använda ABP Framework-funktionerna kommer det att bli mycket roligare än någonsin att utveckla din programvara.", + "HowItWorks_Description3": "Den här sidan förklarar i princip hur du använder ABP.IO Platform som .NET-utvecklare.", + "CreateANewSolution": "Skapa en ny .NET-lösning", + "CreateANewSolution_Description1": "Allt börjar med att skapa en ny ABP-integrerad .NET-lösning.", + "StartWithStartupTemplates": "Starta en av de förbyggda mallarna för startup-lösningar", + "SimpleMonolithApplicationTemplate": "Enkel mall för monolitisk applikation", + "LayeredApplicationTemplate": "Skiktad applikationsmall", + "MicroserviceSolutionTemplate": "Mall för mikroservicelösning", + "CreateEmptySolutionAndUseAbp": "Eller skapa en ny tom .NET-lösning och installera ABP NuGet & NPM paket själv.", + "CreatingSolutionWithMultipleOptions": "Det finns flera alternativ för användargränssnitt och databas när du skapar en ny lösning.", + "UIFrameworkOptions": "Alternativ för användargränssnitt", + "DotnetSolutionWithoutDependency": "Nu har du en vanlig .NET-lösning i din lokala dator som inte är beroende av någon molnplattform eller extern tjänst.", + "CheckTheDocumentForDetails": "Du kan kontrollera {1} dokumentet för detaljer.", + "UIAndDatabaseIndependent": "ABP kan fungera med alla användargränssnitt och alla databasleverantörer som stöds av .NET.\n Dessa användargränssnitt och databasleverantörer är dock förintegrerade och väldokumenterade.", + "InstallAbpModules": "Installera ABP-moduler", + "DevelopYourSolution": "Utveckla din lösning", + "DeployAnywhere": "Distribuera var som helst", + "InstallAbpModule_Description1": "ABP är ett modulärt ramverk för applikationsutveckling. Mallarna för startup-lösningar levereras redan med de viktigaste modulerna installerade.\n Men det finns fler applikationsmoduler som du kanske vill använda i din lösning.", + "InstallAbpModule_Description2": "Varje modul består av ett fåtal NuGet- och NPM-paket och har ett installationsdokument. ABP Suite gör det mesta av arbetet automatiskt, sedan konfigurerar eller finjusterar du modulen manuellt baserat på dess dokumentation.", + "DevelopYourSolution_Description1": "ABP:s infrastruktur gör att du kan fokusera på din egen affärskod genom att automatisera det repetitiva arbetet och tillhandahålla förbyggd infrastruktur och applikationsfunktioner.", + "DevelopYourSolution_Description2": "I följande kodblock kan du se hur ABP Framework sömlöst integreras i din kod och automatiserar de repetitiva uppgifterna åt dig.", + "DevelopYourSolution_Description3": "Även i detta kortkodsblock gör ABP en hel del saker åt dig.", + "DevelopYourSolution_Description4": "Den tillhandahåller basklasser för att tillämpa konventioner, som\n dependency injection. Generiska\n repository tjänster ger ett bekvämt sätt att\n sätt att interagera med databasen. Deklarativ\n auktorisering arbetar med ett finjusterat behörighetssystem.", + "DevelopYourSolution_Description5": "ABP automatiserar helt och hållet\n arbetsenhet (för databasanslutning och transaktionshantering),\n undantagshantering,\n validering\n och auditloggning. Det ger många fler byggstenar för att förenkla dina dagliga utvecklingsuppgifter och fokusera på din egen kod medan du skapar produktionsklara\n applikationer.", + "DevelopYourSolution_Description6": "Du kan föreställa dig hur långt och komplicerat det kodblocket kan bli om du skulle göra allt manuellt.", + "SuiteCrudGenerationInFewSeconds": "Förutom att handkoda din lösning kan du skapa fullt fungerande avancerade CRUD-sidor på några minuter med hjälp av ABP Suite-verktyget. Det genererar koden till din lösning, så att du kan finjustera den utifrån dina anpassade krav.", + "DeployAnywhere_Description1": "I slutändan har du en ren .NET-lösning. Du kan distribuera din lösning till din egen server, till en molnplattform, till Kubernetes eller var du vill. Du kan distribuera till så många servrar som du vill. ABP är ett agnostiskt verktyg för driftsättningsmiljöer.", + "ExpertiseAbpFramework": "Expertis ABP-ramverket", + "ExpertiseAbpFramework_Description1": "Vill du gå längre än till grunderna och få expertis inom ABP.IO-plattformen?", + "FreeDownload": "Fri nedladdning", + "Read": "Läs", + "HavingTrouble": "Har du problem?", + "HavingTrouble_Description1": "Har du problem med att utveckla din lösning? Vi finns här för dig! Använd ABP:s supportplattform\n eller skicka ett e-postmeddelande för att få hjälp direkt från Core ABP Framework-teamets medlemmar.", + "WeAreHereToHelp_Description1": "Du kan bläddra bland våra hjälpämnen eller söka i vanliga frågor,\n eller så kan du ställa en fråga till oss genom att använda kontaktformuläret.", + "OtherModules": "Övriga moduler", + "OtherModules_Description1": "Konto, Audit Logging, Chatt, CMS Kit, Filhantering, Formulär, GDPR, Identitet, Språkhantering, Betalning, Saas och mer ...", + "HowItWorks_DatabaseProviderOptions": "Alternativ för databasleverantör", + "SeeFAQ": "Se vanliga frågor", + "ReleaseLogs": "Release Loggar", + "ReleaseLogs_Tag": "{0} Loggar för frisläppande", + "ReleaseLogs_Pr": "Pull Request #{0} - {1}", + "NoLabels": "Inga etiketter", + "DoesTheSubscriptionRenewAutomatically": "Förnyas abonnemanget automatiskt?", + "DoesTheSubscriptionRenewAutomaticallyExplanation": "ABP.IO-plattformen har inte en faktureringsmodell för automatisk förnyelse. Därför kommer din prenumeration inte att förnyas automatiskt i slutet av din licensperiod. Om du vill fortsätta att ha fördelarna med ABP.IO-plattformen måste du förnya den manuellt på sidan för organisationshantering. Om du har flera organisationer klickar du på knappen \"Hantera\" på din organisation som löper ut och klickar sedan på knappen \"Förläng nu\" för att förnya din licens. Du kanske också vill ta en titt på avsnittet Vad händer när min licens går ut?.", + "DoesTheSubscriptionRenewAutomaticallyExplanationAutoRenewal": "ABP tillåter dig att automatiskt förnya din licens. Detta är en valfri tjänst. Du kan växla den här funktionen när du köper en ny licens eller senare aktivera den från din organisationshanteringssida. Växling för automatisk förnyelse finns i avsnittet \"Betalningsmetod\" på organisationshanteringssidan. Om du vill stänga av automatisk förnyelse, besök organisationshanteringssidan, gå till avsnittet \"Betalningsmetod\" och avmarkera kryssrutan \"Automatisk förnyelse\". När du stänger av funktionen för automatisk förnyelse måste du förnya din licens själv.", + "ExtraQuestionCreditsFaqTitle": "Kan jag köpa extra poäng för supportfrågor?", + "ExtraQuestionCreditsFaqExplanation": "Ja, det kan du göra. För att köpa extra frågepoäng, skicka ett e-postmeddelande till info@abp.io med din organisations namn. Här är prislistan för de extra frågekrediterna: ", + "AlreadyBetaTester": "Du har redan gått med i betatestarprogrammet.", + "AbpStudio": "ABP Studio", + "AbpStudio_Description": "ABP Studio är fortfarande under utveckling. Du kan fylla i formuläret nedan för att bli en av de första användarna.", + "AbpStudio_Description1": "ABP Studio är en plattformsoberoende skrivbordsapplikation för ABP-utvecklare.", + "AbpStudio_Description2": "Det är väl integrerat i ABP-ramverket och syftar till att tillhandahålla en bekväm utvecklingsmiljö för dig genom att automatisera saker, ge insikter om din lösning, vilket gör det mycket enklare att utveckla, köra och distribuera dina lösningar.", + "AbpStudio_ComingSoon": "Om du vill testa ABP Studio före alla andra kan du bli BETA-testare", + "AbpStudio_PlannedPreviewDate": "Planerat utgivningsdatum för förhandsvisning: Q4 år 2023.", + "BetaRequest": "Beta förfrågan", + "CreateNewSolutions": "Skapa nya lösningar", + "CreateNewSolutions_Description1": "Du kan enkelt skapa allt från enkla applikationer till modulära monolit- eller mikroservicelösningar med många alternativ. Du får en fullständig produktionsfärdig basprogramvarulösning för ditt företag.", + "ArchitectYourSolutions": "Arkitekt för dina lösningar", + "ArchitectYourSolutions_Description1": "Bygg enklare monolitiskt modulära och mikrotjänstbaserade lösningsstrukturer genom att skapa moduler eller tjänster och upprätta relationer mellan dem. Du kan också installera eller avinstallera förbyggda applikationsmoduler.", + "ExploreYourSolution": "Utforska din lösning", + "ExploreYourSolution_Description1": "ABP Studio visar en vy på hög nivå av komponenterna i din lösning och de moduler som din lösning är beroende av. Du kan utforska entiteter, tjänster, HTTP API:er och mycket mer utan att behöva öppna din kodbas.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze": "Kör multiapplikations- eller microservice-lösningar på ett kick", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description1": "Kör en, flera eller alla tjänster med ett enda klick. På så sätt är det mycket enkelt att stoppa en tjänst, köra den i Visual Studio för att testa eller debugga.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description2": "Se en lista över tjänster, visa HTTP Request i realtid och antal undantag för varje tjänst.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description3": "Se alla detaljer om alla HTTP-begäranden som kommer till en tjänst.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description4": "Utforska undantagsdetaljer i realtid i alla tjänster, filtrera och sök enkelt.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description5": "Visa applikationsloggarna, filtrera efter loggnivå eller sök efter text...", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description6": "Bläddra genom användargränssnittet i din applikation utan att lämna solution runner.", + "IntegrateToYourKubernetesCluster": "Integrera till ditt Kubernetes-kluster", + "IntegrateToYourKubernetesCluster_Description1": "Koppla din lokala utvecklingsmiljö till ett lokalt eller avlägset Kubernetes-kluster, där klustret redan kör din mikrotjänstlösning.", + "IntegrateToYourKubernetesCluster_Description2": "Få åtkomst till alla tjänster i Kubernetes med deras tjänstenamn som DNS, precis som om de körs på din lokala dator.", + "IntegrateToYourKubernetesCluster_Description3": "Interceptera vilken tjänst som helst i det klustret, så att all trafik till den intercepterade tjänsten automatiskt omdirigeras till din tjänst som körs i din lokala maskin. När din tjänst behöver använda någon tjänst i Kubernetes omdirigeras trafiken tillbaka till klustret, precis som om din lokala tjänst körs inuti Kubernetes.", + "GetInformed": "Bli informerad", + "Studio_GetInformed_Description1": "Lämna din kontaktinformation för att få information och pröva först när ABP Studio har lanserats.", + "Studio_GetInformed_Description2": "Planerat utgivningsdatum för förhandsvisning: Q3 år 2023.", + "ThankYou!": "Tack så mycket!", + "SendBetaRequest": "Skicka Beta förfrågan", + "YouJoinedTheBetaTesterProgram": "Du har gått med i betatestarprogrammet för ABP Studio.", + "PricingExplanation2": "30 dagars pengarna tillbaka-garanti - Läs mer", + "MoneyBackGuaranteeText": "* 30-dagars pengarna-tillbaka-garanti på alla licenser! 100% återbetalning på Team-, 60% återbetalning på Business- och Enterprise-licenser inom 30 dagar.", + "MobileApplicationStartupTemplates": "Mallar för uppstart av mobilapplikationer", + "MobileApplicationStartupTemplates_Description1": "Integrerade startmallar för mobilapplikationer för dina ABP-lösningar.", + "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates": "Skapa kraftfulla affärsapplikationer med hjälp av ABP Mobile Startup Templates", + "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description1": "ABP tillhandahåller två startmallar för mobilapplikationer som implementerats med React Native och .NET MAUI. När du skapar din nya ABP-baserade lösning kommer du också att ha grundläggande startapplikationer som är anslutna till dina backend-API:er.", + "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description2": "Applikationen har en förbyggd autentiseringstokencykel, stöd för flera språk, stöd för flera behörigheter, inloggning, glömt lösenord, profilhantering och en användarhanteringssida. Du kan lägga till din egen affärslogik och anpassa den utifrån dina krav.", + "TwoFrameworkOptions": "Två alternativ för ramverk", + "TwoFrameworkOptions_Description": "ABP tillhandahåller både React Native och .NET MAUI mobila startup-mallar. På så sätt kan du välja den som bäst passar dina behov. Båda apparna återanvänder kod i den högsta graden mellan iOS- och Android-plattformarna.", + "PreIntegratedToYourBackend": "Förintegrerad till din backend", + "PreIntegratedToYourBackend_Description": "ABP Mobile-applikationer är förintegrerade med dina backend-API:er. Den får en giltig autentiseringstoken från servern och gör autentiserade förfrågningar.", + "MultiLanguage": "Flerspråkig", + "MultiLanguage_Description": "Det stöder redan mer än 10 språk ur lådan. Du kan också lägga till ytterligare språk.", + "Arabic": "Arabiska", + "Czech": "Tjeckien", + "English": "Engelska", + "Hungarian": "Ungerska", + "Finnish": "Finska", + "French": "Franska", + "Hindi": "Hindi", + "Portuguese": "Portugisiska", + "Italian": "Italienska", + "Russian": "Ryska", + "Slovak": "Slovakien", + "Turkish": "Turkiska", + "EngageAndRetainYourCustomersWithABPMobileApps": "Engagera och behåll dina kunder med ABP:s mobilappar", + "EngageAndRetainYourCustomersWithABPMobileApps_Description1": "Dina kunder vill kunna hantera sina produkter och prenumerationer var som helst och när som helst. Det kräver att organisationer skapar mobilappar som gör det möjligt för kunderna att uppfylla sina önskemål snabbt och smidigt.", + "EngageAndRetainYourCustomersWithABPMobileApps_Description2": "Med ABP Mobile apps kan du skapa högkvalitativa native mobilappar för Android och iOS... med en enda kodbas och utan att kompromissa med säkerhet, kvalitet eller skalbarhet.", + "OneCodeBaseMultipleDevices": "En kodbas Flera enheter", + "OneCodeBaseMultipleDevices_Description": "ABP:s mobilapplikationer är plattformsoberoende. De är redo att installeras och köras på iOS- och Android-enheter, och de anpassar sig till olika formfaktorer med hjälp av en enda kodbas. Utvecklare behöver bara skapa användargränssnittet och front-end-koden en gång, det finns inget behov av att anpassa koden för varje enhet du vill stödja.", + "ComesWithTheSourceCode": "Levereras med källkoden", + "ComesWithTheSourceCode_Description": "Mobilapparna är försedda med källkod. Anpassa enkelt UX/UI för dina appar för att uppfylla riktlinjerna för varumärkesprofilering.", + "Purchase_OneYearPrice": "1 år Pris", + "Purchase_DeveloperSeatCount": "Antal platser för utvecklare", + "Purchase_DevelopersAlreadyIncluded": "{0} utvecklare redan inkluderade", + "1Year": "1 år", + "{0}Years": "{0} år", + "1YearLicense": "1 års licens", + "{0}YearsLicense": "{0} År Licens", + "1AdditionalDeveloper": "1 ytterligare utvecklare", + "{0}AdditionalDevelopers": "{0} Ytterligare utvecklare", + "Discount": "Rabatt ({0}%)", + "Summary": "Sammanfattning", + "TrainingPack": "Utbildningspaket", + "TrainingPackDiscount": "Rabatt på utbildningspaket", + "Purchase_OnboardingTraining_Description": "Denna liveutbildning är giltig för en klass med 8 elever och denna rabatt är endast giltig när den köps med den nya licensen. Läs mer ", + "Purchase_Save": "{0}% Spara {1}", + "RemoveBasket": "Ta bort från korgen", + "WhyABPIOPlatform?": "Varför ABP.IO Platform?", + "DocumentAim": "Detta dokument syftar till att besvara den stora frågan:", + "DocumentAim_Description": "\"Varför ska man använda ABP.IO-plattformen i stället för att skapa en ny lösning från grunden?\"", + "DocumentAim_Description2": "Dokumentet presenterar utmaningarna med att bygga en modern mjukvarulösning och förklarar hur ABP hanterar dessa utmaningar.", + "CreatingANewSolution": "Skapa en ny lösning", + "CreatingANewSolution_Description": "När du ska starta en ny lösning finns det många frågor du måste ställa dig själv, och du bör lägga ner mycket tid innan du börjar skriva din allra första affärskod.", + "CreatingAnEmptySolution": "Skapa en tom lösning", + "THEPROBLEM": "PROBLEMET", + "CreatingAnEmptySolution_THEPROBLEM_Description": "Även att skapa en nästan tom lösning är en utmaning;", + "CreatingAnEmptySolution_THEPROBLEM_Description2": "Hur organiserar du din kodbas mellan olika projekt?", + "CreatingAnEmptySolution_THEPROBLEM_Description3": "Vilka är lagren och hur samverkar de?", + "CreatingAnEmptySolution_THEPROBLEM_Description4": "Hur integrerar du med tredjepartsbibliotek?", + "CreatingAnEmptySolution_THEPROBLEM_Description5": "Hur ställer man in automatiserade tester?", + "ABPSOLUTION": "ABP-LÖSNING", + "CreatingAnEmptySolution_ABPSOLUTION_Description": "ABP tillhandahåller en välarkitekterad, skiktad och produktionsklar startup-lösning baserad på Domain Driven Design-principerna. Lösningen innehåller också en förkonfigurerad enhet och integration test -projekt för varje lager.", + "CommonLibraries": "Gemensamma bibliotek", + "CommonLibraries_THEPROBLEM_Description": "Vilka bibliotek bör du använda för att implementera gemensamma krav? Ekosystemet för programvaruutveckling är mycket dynamiskt, vilket gör det svårt att hålla jämna steg med de senaste verktygen, biblioteken, trenderna och metoderna.", + "CommonLibraries_ABPSOLUTION_Description": "ABP förintegrerar populära, mogna och uppdaterade bibliotek i lösningen. Du behöver inte lägga tid på att integrera dem eller få dem att kommunicera med varandra. De fungerar som de ska direkt från start.", + "UITheme&Layout": "UI Tema & Layout", + "UITheme&Layout_THEPROBLEM_Description": "När man tar itu med användargränssnittet uppstår en rad olika utmaningar. Det handlar bland annat om att lägga grunden för ett responsivt, modernt och anpassningsbart UI-kit med ett konsekvent utseende och en mängd funktioner som navigeringsmenyer, rubriker, verktygsfält, sidfötter, widgetar med mera.", + "UITheme&Layout_THEPROBLEM_Description2": "Även om du väljer ett fördesignat tema kan det ta flera dagars utveckling att integrera det sömlöst i ditt projekt. Ett ytterligare hinder ligger i att uppgradera sådana teman. Ofta blir temats HTML/CSS-struktur sammanflätad med din UI-kod, vilket gör framtida temaförändringar eller uppgraderingar till komplicerade uppgifter. Denna sammanvävning av kod och design komplicerar flexibiliteten att göra justeringar längs linjen.", + "UITheme&Layout_ABPSOLUTION_Description": "ABP Framework erbjuder ett distinkt temasystem som frigör din UI-kod från temabegränsningar. Teman finns isolerade, paketerade som NuGet- eller NPM-paket, vilket gör installation eller uppgradering av teman till en fråga om minuter. Även om du behåller möjligheten att utveckla ditt eget tema eller integrera ett befintligt, presenterar ABP en samling polerade och moderna teman.", + "UITheme&Layout_ABPSOLUTION_Description2": "Dessutom finns det leverantörer av UI-komponenter som Telerik och DevExpress. Dessa leverantörer tillhandahåller dock främst enskilda komponenter, vilket innebär att det är upp till dig att skapa ditt layoutsystem. När du arbetar inom ABP-baserade projekt kan du sömlöst införliva dessa bibliotek, på samma sätt som du skulle göra i alla andra projekt.", + "TestInfrastructure": "Testinfrastruktur", + "TestInfrastructure_THEPROBLEM_Description": "Att etablera en robust testmiljö är en tidskrävande uppgift. Det handlar om att skapa dedikerade testprojekt inom din lösning, noggrant välja ut de verktyg som behövs, skapa mocks för tjänster och databaser, skapa viktiga basklasser och verktygstjänster för att minimera redundant kod i testerna och ta itu med olika relaterade uppgifter.", + "TestInfrastructure_ABPSOLUTION_Description": "ABP Startup Templates levereras färdigutrustade med konfigurerade testprojekt, vilket effektiviserar processen för dig. Det innebär att du redan från dag ett kan börja skriva din första enhets- eller integrationstestkod utan dröjsmål.", + "CodingStandards&Training": "Kodningsstandarder och utbildning", + "CodingStandards&Training_THEPROBLEM_Description": "När du har konfigurerat lösningen för utveckling måste du vanligtvis lära utvecklarna hur systemet fungerar och hur man bygger det med hjälp av samma överenskomna metoder. Även om du ger dem utbildning kan det vara svårt att hålla dokumentationen uppdaterad. Med tiden kanske varje utvecklare skriver kod på sitt eget sätt, vilket leder till att reglerna för att skriva kod skiljer sig från varandra.", + "CodingStandards&Training_ABPSOLUTION_Description": "ABP-lösningen är redan snyggt organiserad och har tydliga förklaringar. Steg-för-steg-handledningar och guider visar exakt hur du ska arbeta med ett ABP-projekt.", + "KeepingYourSolutionUpToDate": "Håll din lösning uppdaterad", + "KeepingYourSolutionUpToDate_THEPROBLEM_Description": "När du har påbörjat din utveckling måste du hålla reda på de nya versionerna av de bibliotek du använder för uppgraderingar och korrigeringar.", + "KeepingYourSolutionUpToDate_ABPSOLUTION_Description": "Vi uppdaterar regelbundet alla paket till de senaste versionerna och testar dem före den stabila utgåvan. När du uppdaterar ABP Framework uppgraderas alla dess beroenden till den senaste tekniken.", + "KeepingYourSolutionUpToDate_ABPSOLUTION_Description2": "Abp update CLI-kommando hittar och uppgraderar automatiskt alla ABP-beroende NuGet- och NPM-paket i en lösning. Med ABP är det enklare att hålla sig till de senaste versionerna.", + "DRY": "Upprepa inte dig själv!", + "DRY_Description": "Att skapa en baslösning tar lång tid och kräver god erfarenhet av arkitektur. Men detta är bara början! När du börjar utveckla kommer du sannolikt att behöva skriva massor av repetitiv kod; det skulle vara fantastiskt om allt detta kunde hanteras automatiskt.", + "DRY_Description2": "ABP automatiserar och förenklar upprepningskoden så mycket som möjligt genom att följa principen om konvention framför konfiguration. Det begränsar dig dock inte när du behöver växla till manuell växel. Kontrollen ligger alltid i dina händer.", + "Authentication": "Autentisering", + "Authentication_THEPROBLEM_Description": "Single Sign On, Active Directory / LDAP-integration, OpenIddict-integration, sociala inloggningar, tvåfaktorsautentisering, glömt / återställt lösenord, e-postaktivering, ny användarregistrering, kontroll av lösenordskomplexitet, låsning av konto vid misslyckade försök, visning av misslyckade inloggningsförsök ... etc. Vi vet att alla dessa generiska krav är bekanta för dig. Du är inte ensam!", + "Authentication_ABPSOLUTION_Description": "ABP Framework och den kommersiella versionen tillhandahåller alla dessa standardgrejer förimplementerade åt dig som en återanvändbar kontomodul. Du aktiverar och konfigurerar bara det du behöver.", + "CrossCuttingConcerns": "Övergripande frågor", + "CrossCuttingConcerns_THEPROBLEM_Description": "Cross-Cutting Concerns är den grundläggande upprepningslogik som bör implementeras för varje användningsfall. Några exempel;", + "CrossCuttingConcerns_THEPROBLEM_Description2": "Starta transaktioner, genomföra vid framgång och rulla tillbaka vid fel.", + "CrossCuttingConcerns_THEPROBLEM_Description3": "Hantera och rapportera undantag, returnera ett korrekt felsvar till klienterna och hantera felfall på klientsidan.", + "CrossCuttingConcerns_THEPROBLEM_Description4": "Implementera auktorisering och validering, returnera korrekta svar och hantera dessa på klientsidan.", + "CrossCuttingConcerns_ABPSOLUTION_Description": "ABP Framework automatiserar eller förenklar alla vanliga övergripande problem. Du skriver bara kod som är viktig för ditt företag, och ABP hanterar resten genom konventioner.", + "ArchitecturalInfrastructure": "Arkitektonisk infrastruktur", + "ArchitecturalInfrastructure_THEPROBLEM_Description": "Du behöver vanligtvis bygga infrastruktur för att implementera din arkitektur på rätt sätt. Till exempel implementerar du i allmänhet Repository-mönstret. Du definierar några basklasser för att förenkla och standardisera skapandet av entiteter, tjänster, controllers och andra objekt.", + "ArchitecturalInfrastructure_ABPSOLUTION_Description": "ABP Framework tillhandahåller allt detta och mer därtill direkt från start. Det är moget och väldokumenterat.", + "EnterpriseApplicationRequirements": "Krav på företagsapplikationer", + "EnterpriseApplicationRequirements_THEPROBLEM_Description": "Det finns många krav som du upprepade gånger måste implementera i varje affärsapplikation;", + "EnterpriseApplicationRequirements_THEPROBLEM_Description2": "Detaljerat behörighetssystem och hantering av behörigheter i användargränssnittet baserat på roller och användare.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description3": "Skriva granskningsloggar och entitetshistorik för att spåra när en användare ändrar en databaspost.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description4": "Gör dina enheter mjukt raderade, så att de markeras som raderade istället för att fysiskt raderas från databasen och automatiskt filtrera bort raderade enheter i dina frågor.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description5": "Skapa abstraktioner och omslag för att konsumera dina backend-API:er från frontend-koden.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description6": "Uppställning i kö och utförande av bakgrundsjobb.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description7": "Hantering av flera tidszoner i ett globalt system.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description8": "Delning av validering, lokalisering och auktoriseringslogik mellan server och klient.", + "EnterpriseApplicationRequirements_ABPSOLUTION_Description": "ABP tillhandahåller en infrastruktur för att enkelt implementera sådana krav. Återigen behöver du inte spendera din värdefulla tid på att implementera alla dessa om och om igen.", + "GeneratingInitialCode&Tooling": "Generering av initialkod och verktyg", + "GeneratingInitialCode&Tooling_THEPROBLEM_Description": "Du kommer att bygga många liknande sidor i en typisk webbapplikation. De flesta av dem kommer att utföra liknande CRUD-operationer. Det är mycket tråkigt och även felbenäget att upprepade gånger skapa sådana sidor.", + "GeneratingInitialCode&Tooling_ABPSOLUTION_Description": "ABP Suite kan generera en full-stack CRUD-sida för dina enheter på några sekunder. Den genererade koden är skiktad och ren. Alla standardkrav för validering och auktorisering är implementerade. Dessutom genereras enhetstestklasser. När du väl har fått en helt fungerande sida kan du ändra den enligt dina affärsbehov.", + "IntegratingTo3rdPartyLibrariesAndSystems": "Integrering med bibliotek och system från tredje part", + "IntegratingTo3rdPartyLibrariesAndSystems_THEPROBLEM_Description": "De flesta bibliotek är utformade på låg nivå och du måste vanligtvis göra en del arbete för att integrera dem på rätt sätt utan att upprepa samma integrations- och konfigurationskod överallt i din lösning. Anta till exempel att du måste använda RabbitMQ för att implementera din distribuerade händelsebuss. Allt du vill göra är att skicka ett meddelande till en kö och hantera de inkommande meddelandena. Men du måste förstå meddelandemönster, köer och utbytesdetaljer. För att skriva effektiv kod måste du skapa en pool för att hantera anslutningar, klienter och kanaler. Du måste också hantera undantag, ACK-meddelanden, återanslutning till RabbitMQ vid misslyckanden och mer.", + "IntegratingTo3rdPartyLibrariesAndSystems_ABPSOLUTION_Description": "Till exempel abstraherar ABP:s RabbitMQ Distributed Event Bus-integration alla dessa detaljer. Du skickar och tar emot meddelanden utan krångel. Behöver du skriva kod på låg nivå? Inga problem, det kan du alltid göra. ABP begränsar dig inte när du behöver använda lågnivåfunktioner i det bibliotek du använder.", + "WhyNotBuildYourOwnFramework?": "Varför inte bygga ditt eget ramverk?", + "WhyNotBuildYourOwnFramework_THEPROBLEM_Description": "All infrastruktur, även på det enklaste sättet, tar mycket tid att bygga, underhålla och dokumentera. Den blir större med tiden och det blir svårt att underhålla den i din lösning. Att separera dessa i ett återanvändbart projekt är utgångspunkten för att bygga ditt eget interna ramverk.", + "WhyNotBuildYourOwnFramework_THEPROBLEM_Description2": "Att bygga, dokumentera, utbilda och underhålla ett internt ramverk är verkligen svårt. Om du inte har ett erfaret, dedikerat ramverksteam blir ditt interna ramverk snabbt en odokumenterad äldre kod som ingen längre kan förstå och underhålla. Å andra sidan utvecklas dessa ramverk i allmänhet av en eller två utvecklare i teamet. Och dessa medarbetare håller på att bli en kunskapssilo. Det är bra för dem men dåligt för företaget eftersom de är projektets enda punkt för misslyckande -SPOF-. När de lämnar företaget går projektet dramatiskt ner.", + "WhyNotBuildYourOwnFramework_ABPSOLUTION_Description": "ABP Framework är ett community-drivet, väldokumenterat, moget och generiskt applikationsramverk. Ett team av mycket erfarna utvecklare arbetar hårt för att hålla det uppdaterat, lätt att förstå och bekvämt att använda. Att använda ett så stabilt ramverk gör att du kan fokusera på din egen affärskod och få hjälp med ramverket från experter när du behöver det.", + "ArchitecturalInfrastructure_Description": "SaaS-applikationer, modulära system eller mikroservicesystem är de mest använda modellerna för företagsprogramvara. Att bygga sådana system kräver inte bara en god förståelse och erfarenhet utan också en stark mjukvaruinfrastruktur. Annars kommer du att få lägga ner mycket arbete på att stödja dessa arkitektoniska detaljer i din kodbas.", + "Modularity": "Modularitet", + "Modularity_THEPROBLEM_Description": "Att bygga ett verkligt modulärt system är inte lätt! Alla aspekter av systemet (databas, entiteter, API:er, UI-sidor/komponenter) kan delas upp i moduler, och varje modul kan återanvändas utan andra. Den vanliga ASP.NET Core ger inte en sådan modulär arkitektur. Om du behöver det bör du tänka på det från grunden.", + "Modularity_ABPSOLUTION_Description": "ABP Framework är skapat för att vara en modulär struktur för applikationsutveckling. Varje funktion i ramverket är utvecklad för att vara kompatibel med modularitet. Dokumentation och guider förklarar hur man utvecklar återanvändbara moduler på ett standardiserat sätt.", + "SaaSMultiTenancy": "SaaS / Multi-Tenancy", + "SaaSMultiTenancy_THEPROBLEM_Description": "Multi-Tenancy är ett vanligt sätt att implementera SaaS-system. Att implementera en konsekvent multi-tenant infrastruktur kan dock bli komplicerat.", + "SaaSMultiTenancy_ABPSOLUTION_Description": "ABP Framework tillhandahåller en komplett infrastruktur för flera hyresgäster och abstraherar komplexiteten från din företagskod. Din applikationskod kommer att vara mestadels multi-tenancy medveten, medan ABP Framework automatiskt isolerar databasen, cache och andra detaljer om hyresgästerna från varandra. Det stöder en enda databas, per hyresgästdatabas och hybridmetoder. Det konfigurerar biblioteken som Microsoft Identity och OpenIddict, som normalt inte är multi-tenancy-kompatibla, på rätt sätt.", + "Microservices": "Mikrotjänster", + "Microservices_THEPROBLEM_Description": "Att bygga ett mikrotjänstsystem kräver många infrastrukturdetaljer: Autentisering och auktorisering av applikationer och mikrotjänster samt implementering av asynkrona meddelanden och synkrona (Rest/GRPC) kommunikationsmönster mellan mikrotjänster är de mest grundläggande frågorna.", + "Microservices_ABPSOLUTION_Description": "ABP-ramverket tillhandahåller tjänster, guider och exempel som hjälper dig att implementera din mikrotjänstlösning med hjälp av branschens standardverktyg.", + "Microservices_ABPSOLUTION_Description2": "ABP:s kommersiella version går till och med ett steg längre och tillhandahåller en komplett startup-mall för att kickstarta din microservice-lösning.", + "PreBuiltModules": "Förbyggda moduler", + "PreBuiltModules_THEPROBLEM_Description": "Alla har vi liknande men lite olika affärskrav. Men vi måste alla uppfinna hjulet på nytt eftersom ingen annans kod kan fungera direkt i vår lösning. De är alla inbäddade delar av en större lösning.", + "PreBuiltModules_ABPSOLUTION_Description": "ABP modules tillhandahåller många återanvändbara applikationsmoduler som betalning, chatt, filhantering, revisionsloggrapportering ... etc. Alla dessa moduler installeras enkelt i din lösning och fungerar direkt. Vi lägger ständigt till fler moduler.", + "PreBuiltModules_ABPSOLUTION_Description2": "Alla moduler är utformade så att de kan anpassas efter dina affärsbehov. Om du behöver fullständig kontroll kan du ladda ner den fullständiga källkoden för alla moduler och anpassa dem helt utifrån dina specifika affärskrav.", + "ABPCommunity": "ABP Gemenskap", + "ABPCommunity_Description": "Slutligen, att vara en del av en stor gemenskap där alla följer liknande kodningsstilar och principer och delar en gemensam infrastruktur ger kraft när du har problem eller behöver hjälp med designbeslut. Eftersom vi skriver kod på liknande sätt kan vi hjälpa varandra mycket bättre. ABP är ett community-stöttat projekt med mer än 10K stjärnor på GitHub.", + "ABPCommunity_Description2": "Det är lätt att dela kod eller till och med återanvändbara bibliotek mellan ABP-utvecklare. En kodsnutt som fungerar för dig kommer också att fungera för andra. Det finns många exempel och handledningar som du direkt kan implementera i din applikation.", + "ABPCommunity_Description3": "När du anlitar en utvecklare som tidigare arbetat med ABP-arkitekturen kommer denne omedelbart att förstå din lösning och påbörja utvecklingen på mycket kort tid.", + "WhyAbpIo_Page_Title": "Varför ABP.IO Platform?", + "AbpStudio_Page_Title": "ABP Studio", + "CampaignInfo": "Köp en ny licens eller förnya din befintliga licens och få ytterligare 2 månader utan extra kostnad! Detta erbjudande gäller för alla licensplaner. Se till att du utnyttjar denna tidsbegränsade kampanj för att utöka din tillgång till premiumfunktioner och uppgraderingar.", + "HurryUpLastDay": "Skynda på! Sista dagen: {0}", + "CreatingCRUDPagesWithABPSuite": "Skapa CRUD-sidor med ABP Suite", + "Testimonials": "Vittnesmål", + "MultipleYearDiscount": "Rabatt för flera år", + "CampaignDiscountText": "Black Friday-rabatt", + "CampaignDiscountName": "Svart fredag", + "CampaignName:BlackFriday": "Svart fredag", + "MultipleOrganizationInfo": "Se alla dina organisationer", + "AbpStudioBetaAccessInfoTitle": "ABP Studio Beta Access", + "AbpStudioBetaAccessInfoText": "Vi är glada över att kunna dela med oss av beta-versionen av ABP Studio! Den här versionen markerar en viktig milstolpe i vår utvecklingsresa, och vi är angelägna om att samla in din feedback för att göra applikationen ännu bättre.", + "YouAreNotAuthorizedToDownloadStudio": "Du är inte behörig att ladda ner ABP Studio.", + "OrganizationHasNoDefaultCreditCard": "Din organisation har inget standardkreditkort. Lägg till ett kreditkort för din organisation.", + "YouAreNotAuthorizedToPayThisPaymentRequest": "Du är inte behörig att betala denna betalningsbegäran.", + "YouAreNotAuthorizedToCreateBillingInfoForThisPaymentRequest": "Du är inte behörig att skapa faktureringsinformation för denna betalningsbegäran.", + "OrganizationNotFound": "Organisationen hittades inte.", + "CannotDeleteDefaultCardBecauseAutoRenewalEnabled": "Du kan inte ta bort kortet just nu eftersom funktionen Auto-Renewal är aktiverad. För att ta bort kortet måste du först avaktivera Auto-Renewal.", + "AreYouSureWantToDeleteThisCard": "Är du säker på att du vill ta bort det här kortet?", + "AreYouSureWantToSetThisCardAsDefault": "Är du säker på att du vill använda det här kortet som standard?", + "OrganizationBillingInfoIsNotSuitableForIyzicoPayment": "Din organisations faktureringsinformation är inte lämplig för iyzico-betalning.", + "AutomaticRenewal": "Automatisk förnyelse", + "AutomaticRenewal_Description": "Om du förnyar en licens innan den går ut får du en rabatt på upp till 40 %. Med den automatiska förnyelseprocessen kan du förnya din licens utan att förlora denna rabatt, och din utveckling kommer aldrig att avbrytas. Automatisk förnyelse är endast tillgänglig för kreditkortsbetalning. Du kan inaktivera automatisk förnyelse när som helst genom att gå till din organisationshanteringssida. ABP sparar inte din kreditkortsinformation, men våra globala betalningsgateways säkrar besparingar.", + "CardNotFoundMessage": "Vill du lägga till ett nytt kort?", + "CardNotFoundTitle": "Kortet hittades inte", + "AutoRenewalEnabled": "Automatisk förnyelse aktiverad", + "AutoRenewalDisabled": "Automatisk förnyelse Avaktiverad", + "PaymentRequestIdIsNotProvided": "Betalningsförfrågans ID anges inte.", + "PaymentFailedInfo": "Tyvärr, betalningen misslyckades! Detta kan bero på otillräckliga medel, ogiltigt kreditkortsnummer eller ogiltig pinkod", + "UsedPayment": "Denna betalning har redan använts", + "ManageLicense": "Hantera licens", + "AbpPlatformLeptonXTheme": "LeptonX Theme för din administrativa instrumentpanel av ABP Platform", + "NoActiveLicence": "Du är inte berättigad till denna åtgärd! Du har ingen aktiv licens.", + "ABPStudioBetaTester": "För att kunna skicka in din begäran måste du logga in", + "ABPStudioBetaAccess": "ABP Studio Beta Access", + "VisitABPStudio": "Besök ABP Studio", + "EditBillingInformation": "Redigera faktureringsinformation", + "Organization": "Organisation", + "E-Book": "E-bok", + "CreditCards": "Kreditkort", + "BillingInformation": "Faktureringsinformation", + "AddNewCreditCard": "Lägg till nytt kreditkort", + "MyOrganizations_LearnMorePlan": "Läs mer om planer på prissättningssidan", + "AutoLicenseRenewalIsNotEnabled": "Automatisk licensförnyelse är inte aktiverad.", + "SetAsDefaultPaymentMethod": "Ange som standardbetalningsmetod", + "{0}PerAdditionalDeveloper": "{0} per ytterligare utvecklare", + "CardAlias": "Alias för kort (valfritt)", + "AbpDoesNotSaveYourPaymentDetails_Description": "Betalningsuppgifterna kommer att sparas i {2} säkerhetsvalv och du kan ta bort lagrade uppgifter när som helst. Aktivering av automatisk förnyelse säkerställer att din ABP-prenumeration automatiskt förnyas innan den löper ut, förutsatt att du har ett giltigt kreditkort. Om du avaktiverar automatisk förnyelse måste du förnya din prenumeration manuellt. Om du vill fortsätta din projektutveckling utan avbrott föreslår vi att du aktiverar alternativet Automatisk förnyelse.", + "AddBillingInformation": "Lägg till faktureringsinformation", + "YouHaveNoCardsSaved": "Kortet är inte sparat ännu.", + "CreateCreditCardModal_BillingDetails_Description": "Du måste spara dina faktureringsuppgifter för att kunna lägga till ditt kreditkort.", + "TaxNo": "Skatt Nej", + "CardNumber": "Kortnummer", + "NameOnCard": "Namn på kortet", + "BillingDetails": "Faktureringsinformation", + "ThereIsNoDeveloper": "Ingen utvecklare tillagd.", + "CardDetails": "Debit-/Kreditkortsuppgifter", + "YearCantBeNull": "Årsfältet får inte vara tomt.", + "CardHolderName": "Namn på kortet", + "ExpireDate": "Utgångsdatum", + "DisplayName:ExpireDate": "Utgångsdatum", + "DisplayName:CardHolderName": "Namn på kortet", + "CreditCardNumberLengthWarning": "Ogiltigt kortnummer", + "ExpirationWarning": "Ogiltigt utgångsdatum", + "CreateCreditCardModal_Description": "När du sparar ditt betalkort/kreditkort kommer en tillfällig avgift på 1 USD att godkännas för verifiering och återbetalas omedelbart.", + "ReturnOfInvestmentTitle": "Avkastning på investering", + "ReduceYourDevelopmentCostsDescription": "Minska dina utvecklingskostnader med mer än 50 % med ABP-ramverket. Men hur? Fortsätt läsa...", + "SettingUpTheArchitectureTitle": "Uppsättning av arkitekturen", + "DoingEverythingFromScratch": "Att göra allt från början", + "SettingUpTheArchitecture_Description1": "Organisera kodbas och lösningsstruktur", + "SettingUpTheArchitecture_Description2": "Identifiera, installera och konfigurera viktiga tredjepartsbibliotek", + "SettingUpTheArchitecture_Description3": "Upprätta infrastruktur för automatiserad integration och enhetstest", + "SettingUpTheArchitecture_Description4": "Fastställa och dokumentera kodstandarder, utbilda utvecklingsteamet", + "UsingTheABPFramework": "Använda ABP-ramverket", + "UseABPSettingUpTheArchitecture_Description": "Använd ABP:s mallar för startup-lösningar", + "ReduceCostsWithABP": "Minska kostnaderna med ABP genom att", + "ReduceCostsBy": "80 % till 100 %.", + "DesigningTheUserInterfaceTitle": "Utformning av användargränssnittet", + "DesigningTheUserInterface_Description1": "Skapa eller köp ett UI-tema", + "DesigningTheUserInterface_Description2": "Anpassa användargränssnittets tema till lösningen", + "DesigningTheUserInterface_Description3": "Bygga de viktigaste delarna av användargränssnittet (layout, meny, sidhuvud, sidfot med responsiv design)", + "DesigningTheUserInterface_Description4": "Se till att designen är konsekvent på alla applikationssidor", + "UseABPDesigningTheUserInterface_Description": "Använd ABP:s LeptonX UI Theme", + "DevelopingApplicationFeaturesTitle": "Utveckling av applikationsfunktioner", + "DevelopingApplicationFeatures_Description1": "Utveckla din egen affärslogik", + "DevelopingApplicationFeatures_Description2": "Utveckla varje sida en efter en", + "DevelopingApplicationFeatures_Description3": "Utveckla gemensamma affärsmoduler själv", + "DevelopingApplicationFeatures_Description4": "Utveckla autentiseringssystemet (enkel inloggning, 2-faktor autentisering, sociala inloggningar, återställning av lösenord, e-postaktivering etc...)", + "DevelopingApplicationFeatures_Description5": "Tillämpa övergripande frågor i varje användningsfall (DB-transaktioner, auktorisering, validering, undantagshantering etc.)", + "DevelopingApplicationFeatures_Description6": "Utveckla gemensamma basklasser och nyttotjänster", + "DevelopingApplicationFeatures_Description7": "Utveckla gemensamma icke-affärsmässiga krav (revisionsloggning, soft-delete, bakgrundsjobb, behörighetssystem etc.)", + "UseABPDevelopingApplicationFeatures_Description1": "Utveckla din egen affärslogik", + "UseABPDevelopingApplicationFeatures_Description2": "Använd ABP Suite för att automatiskt generera CRUD-liknande sidor", + "UseABPDevelopingApplicationFeatures_Description3": "Använd direkt ABP:s förbyggda gemensamma applikationsmoduler och anpassa dem utifrån dina unika krav", + "ReduceCostsBy_2": "40-60 procent", + "WhyABPIoPlatform": "Varför ABP.IO Platform?", + "WhyShouldYouUsetheABPIOPlatform": "Varför ska du använda ABP.IO-plattformen istället för att skapa en ny lösning från grunden?", + "ExploreMore": "Utforska mer", + "DocumentIntroducesDescription": "Om du vill veta mer om varför du ska använda ABP.IO Platform istället för att skapa en ny lösning från grunden, läs följande dokument:", + "ReturnOfInvestmentPageAbout": "På den här sidan beskrivs de grundläggande stegen i utvecklingen av en programvarulösning och hur ABP.IO Platform minskar dina utvecklingskostnader i varje steg.", + "LearnMore": "Lär dig mer", + "ReturnOfInvestment": "Avkastning på investeringar", + "ReturnOfInvestment_Description": "Lär dig hur du kan minska dina utvecklingskostnader med mer än 50 %.", + "Previous": "Föregående", + "PricingDiscount": "Spara", + "PricingTeamTitle": "Team", + "PricingBusinessTitle": "Företag", + "PricingEnterpriseTitle": "Företag", + "SpecialDiscount": "Särskild rabatt", + "YourOrganizationOverview": "Översikt över din organisation", + "TrainingDetailsHeaderInfo_TrainingHourSingular": "{0} timme", + "ContactPageError": "Vänligen skicka ditt meddelande via e-post till info@abp.io
Här är vad du skrev :", + "GoBack": "Gå tillbaka", + "HereWhatYouWrote": "Här är vad du skrev:", + "Sales": "Försäljning", + "LicensingPricing": "Licensiering/prissättning", + "TrialDemo": "Testversion / Demo", + "TrainingOnboarding": "Utbildning / Onboarding", + "Resellers": "Återförsäljare", + "Others": "Övriga", + "Characters": "Karaktärer", + "Topic": "Ämne", + "SendUsEmail": "Skicka e-post till oss", + "ErrorExceptionMessage": "Ett fel inträffade under behandlingen av din begäran", + "WatchTakeCodeGeneration": "Titta på videon \"Utforska potentialen med kodgenerering: ABP Suite\" Video!", + "StartupTemplatesUser": "Användare", + "StartupSingleSignOn": "Enkel inloggning", + "Application{0}": "Tillämpning {0}", + "PreBuiltApplicationModulesTitle": "Färdigbyggda applikationer Moduler.", + "RegisterDemo": "Registrera", + "TrainingDescription": "Vi erbjuder följande utbildningspaket för dig som vill skaffa dig kunskap om ABP.", + "PurchaseDevelopers": "Utvecklare", + "LinkExpiredMessage": "Betalningslänken har löpt ut! Kontakta oss på sales@volosoft.com för att uppdatera länken eller klicka här för att navigera till kontaktsidan." + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/sv.json new file mode 100644 index 0000000000..de8175fe77 --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Community/Localization/Resources/sv.json @@ -0,0 +1,269 @@ +{ + "culture": "sv", + "texts": { + "Permission:CommunityPost": "Gemenskapens inlägg", + "Permission:Edit": "Redigera", + "Waiting": "Väntar på", + "Approved": "Godkänd", + "Rejected": "Avvisad", + "Wait": "Vänta", + "Approve": "Godkänna", + "Reject": "Avvisa", + "ReadPost": "Läs inlägget", + "Status": "Status", + "ContentSource": "Källa för innehåll", + "Details": "Detaljer", + "Title": "Titel", + "CreationTime": "Skapelsetid", + "Save": "Spara", + "SameUrlAlreadyExist": "Samma URL finns redan! Du måste ändra webbadressen!", + "UrlIsNotValid": "Url är inte giltig.", + "UrlNotFound": "Url hittades inte.", + "UrlContentNotFound": "Url-innehållet hittades inte.", + "Summary": "Sammanfattning", + "MostRead": "Mest läst", + "Latest": "Senaste", + "ContributeAbpCommunity": "Bidra till ABP:s gemenskap", + "SubmitYourPost": "Skicka in ditt inlägg", + "ContributionGuide": "Bidragsguide", + "BugReport": "Bugg-rapport", + "SeeAllPosts": "Se alla inlägg", + "WelcomeToABP": "Välkommen till ABP", + "EmailNotValid": "Vänligen ange en giltig e-postadress.", + "FeatureRequest": "Begäran om funktion", + "CreatePostTitleInfo": "Titel på det inlägg som ska visas i inläggslistan.", + "CreatePostSummaryInfo": "En kort sammanfattning av inlägget som ska visas i inläggslistan. Maximal längd: {0}", + "CreatePostCoverInfo": "För att skapa ett effektivt inlägg, lägg till ett omslagsfoto. Ladda upp bilder i bildförhållandet 16:9 för bästa visning.
Maximal filstorlek är 1MB.", + "ThisExtensionIsNotAllowed": "Denna förlängning är inte tillåten.", + "TheFileIsTooLarge": "Filen är för stor.", + "GoToThePost": "Gå till inlägget", + "GoToTheVideo": "Gå till videon", + "Contribute": "Bidra", + "OverallProgress": "Övergripande framsteg", + "Done": "Klar", + "Open": "Öppna", + "Closed": "Stängt", + "RecentQuestionFrom": "Senaste frågan från {0}", + "Stackoverflow": "Stackoverflow", + "Votes": "röster", + "Answer": "Svar", + "Views": "utsikt", + "Answered": "Besvarad", + "WaitingForYourAnswer": "Väntar på ditt svar", + "Asked": "aska", + "AllQuestions": "Alla frågor", + "NextVersion": "Nästa version", + "MilestoneErrorMessage": "Det gick inte att få aktuell milstolpsinformation från Github.", + "QuestionItemErrorMessage": "Kunde inte få de senaste frågeuppgifterna från Stackoverflow.", + "Oops": "Oops!", + "CreatePostSuccessMessage": "Ditt inlägg har skickats in med framgång. Det kommer att publiceras efter granskning av webbplatsadministratören.", + "Browse": "Bläddra", + "CoverImage": "Omslagsbild", + "ShareYourExperiencesWithTheABPFramework": "Dela dina erfarenheter av ABP-ramverket!", + "Optional": "Valfritt", + "UpdateUserWebSiteInfo": "Exempel: https://johndoe.com", + "UpdateUserTwitterInfo": "Exempel: johndoe", + "UpdateUserGithubInfo": "Exempel: johndoe", + "UpdateUserLinkedinInfo": "Exempel: https://www.linkedin.com/...", + "UpdateUserCompanyInfo": "Exempel: Volosoft", + "UpdateUserJobTitleInfo": "Exempel: Programvaruutvecklare", + "UserName": "Användarnamn", + "Company": "Företag", + "PersonalWebsite": "Personlig webbplats", + "RegistrationDate": "Registreringsdatum", + "Social": "Sociala", + "Biography": "Biografi", + "HasNoPublishedPostsYet": "har inga publicerade inlägg ännu", + "Author": "Författaren", + "LatestGithubAnnouncements": "Senaste Github-tillkännagivanden", + "SeeAllAnnouncements": "Se alla tillkännagivanden", + "LatestBlogPost": "Senaste blogginlägget", + "Edit": "Redigera", + "ProfileImageChange": "Ändra profilbilden", + "BlogItemErrorMessage": "Kunde inte få den senaste informationen om blogginlägg från ABP.", + "PlannedReleaseDate": "Planerat utgivningsdatum", + "CommunityPostRequestErrorMessage": "Det gick inte att få den senaste postförfrågan från Github.", + "PostRequestFromGithubIssue": "Det finns inga postförfrågningar nu.", + "LatestPosts": "Senaste inlägg", + "ArticleRequests": "Begär ett innehåll", + "ArticleRequestsDescription": "Vill du se ett specifikt innehåll här? Du kan be communityn att skapa det!", + "LatestContentRequests": "Senaste förfrågningar om innehåll", + "AllPostRequests": "Se alla postförfrågningar", + "SubscribeToTheNewsletter": "Prenumerera på nyhetsbrevet", + "NewsletterEmailDefinition": "Få information om vad som händer i ABP, t.ex. nya utgåvor, fria källor, inlägg och mycket mer.", + "NoThanks": "Nej, tack.", + "MaybeLater": "Kanske senare", + "JoinOurPostNewsletter": "Anmäl dig till vårt nyhetsbrev", + "Community": "Gemenskap", + "Marketing": "Marknadsföring", + "CommunityPrivacyPolicyConfirmation": "Jag godkänner de allmänna villkoren och Integritetspolicy.", + "PostRequestMessageTitle": "Öppna en fråga på GitHub för att begära ett inlägg / en handledning som du vill se på den här webbplatsen.", + "PostRequestMessageBody": "Här är en lista över de inlägg som efterfrågats av communityn. Vill du skriva ett efterfrågat inlägg? Klicka på önskemålet och delta i diskussionen.", + "Language": "Språk", + "CreatePostLanguageInfo": "Språket för inläggets innehåll.", + "VideoPost": "Videoinlägg", + "Post": "Post", + "Read": "Läs", + "CreateGithubPostUrlInfo": "Fullständig URL till Markdown-filen på GitHub (exempel).", + "CreateVideoContentUrlInfo": "Inläggets ursprungliga URL på Youtube.", + "CreateExternalPostUrlInfo": "Inläggets ursprungliga externa webbadress.", + "VideoContentForm": "Skicka in video på YouTube", + "GithubPostForm": "Skicka inlägg på GitHub", + "ExternalPostForm": "Skicka in ett externt innehåll", + "HowToPost": "Hur postar jag?", + "Posts": "Inlägg", + "VideoUrl": "Video webbadress", + "GithubPostUrl": "Url för GitHub-post", + "ExternalPostUrl": "Url för externt inlägg", + "ThankYouForContribution": "Tack för att du bidrar till ABP Community. Vi tar gärna emot artiklar och videohandledning om ABP Framework, .NET, ASP.NET Core och allmänna ämnen inom programvaruutveckling.", + "GithubPost": "GitHub-inlägg", + "GithubPostSubmitStepOne": "1. Skriv ett inlägg på ett offentligt GitHub-arkiv med Markdown-formatet. exempel", + "GithubPostSubmitStepTwo": "2. Skicka in din URL till inlägget med hjälp av formuläret.", + "GithubPostSubmitStepThree": "3. Ditt inlägg kommer att återges på denna webbplats.", + "YoutubeVideo": "Youtube-video", + "YoutubeVideoSubmitStepOne": "1. Publicera din video på YouTube.", + "YoutubeVideoSubmitStepTwo": "2. Skicka in video-URL:en med hjälp av formuläret.", + "YoutubeVideoSubmitStepThree": "3. Besökare kommer att kunna titta på ditt videoinnehåll direkt på denna webbplats.", + "ExternalContent": "Externt innehåll", + "ExternalContentSubmitStepOne": "1. Skapa innehåll på en publik plattform (Medium, din egen blogg eller var du vill).", + "ExternalContentSubmitStepTwo": "2. Skicka in URL:en för ditt innehåll med hjälp av formuläret.", + "ExternalContentSubmitStepThree": "3. Besökare omdirigeras till innehållet på den ursprungliga webbplatsen.", + "ChooseYourContentType": "Välj det sätt som du vill lägga till ditt innehåll på.", + "PostContentViaGithub": "Jag vill lägga till mitt inlägg med GitHub i enlighet med markdown-reglerna.", + "PostContentViaYoutube": "Jag vill dela mina videor som finns på Youtube här.", + "PostContentViaExternalSource": "Jag vill lägga till det innehåll jag publicerade på en annan plattform här.", + "GitHubUserNameValidationMessage": "Ditt Github-användarnamn kan inte innehålla blanksteg, kontrollera att ditt Github-användarnamn är korrekt.", + "PersonalSiteUrlValidationMessage": "URL:en till din personliga webbplats får inte innehålla blanksteg, kontrollera att URL:en till din personliga webbplats är korrekt.", + "TwitterUserNameValidationMessage": "Ditt Twitter-användarnamn får inte innehålla blanksteg, kontrollera att ditt Twitter-användarnamn är korrekt.", + "LinkedinUrlValidationMessage": "Din LinkedIn-URL får inte innehålla blanksteg, kontrollera att din LinkedIn-URL är korrekt.", + "NoPostsFound": "Inga inlägg hittades!", + "SearchInPosts": "Sök i inlägg...", + "MinimumSearchContent": "Du måste ange minst 3 tecken!", + "Volo.AbpIo.Domain:060001": "Källans URL(\"{PostUrl}\") är inte Github URL", + "Volo.AbpIo.Domain:060002": "Inläggets innehåll är inte tillgängligt från GitHub(\"{PostUrl}\")-resursen.", + "Volo.AbpIo.Domain:060003": "Inget innehåll i inlägget hittades!", + "SeeMore": "Se mer", + "JoinTheABPCommunity": "Gå med i ABP:s gemenskap", + "ABPCommunityTalks": "ABP:s samtal med allmänheten", + "LiveDemo": "Live Demo", + "GetLicense": "Skaffa licens", + "GetStarted": "Kom igång", + "SourceCode": "Källkod", + "LeaveComment": "Lämna kommentar", + "ShowMore": "Visa mer", + "NoPublishedPostsYet": "Inga publicerade inlägg ännu.", + "Name": "Namn", + "Surname": "Efternamn", + "WebSite": "Webbplats", + "FullURL": "Full URL", + "JobTitle": "Befattning", + "Prev": "Före", + "Previous": "Föregående", + "Next": "Nästa", + "Share": "Aktie", + "SortBy": "Sortera efter", + "NoPublishedEventsYet": "Inga publicerade händelser ännu.", + "SubscribeYoutubeChannel": "Prenumerera på Youtube-kanalen", + "Enum:EventType:0": "Samtal", + "MemberNotPublishedPostYet": "Denna medlem har inte publicerat några inlägg ännu.", + "TimeAgo": "för {0} sedan", + "Discord_Page_JoinCommunityMessage": "Gå med i ABP Discord Community", + "Discord_Page_Announce": "Vi är glada att kunna presentera ABP Community Discord Server!", + "Discord_Page_Description_1": "ABP Community har vuxit sedan dag ett. Vi ville ta det till nästa steg genom att skapa en officiell ABP Discord-server så att ABP-communityn kan interagera med varandra med hjälp av underverk som snabbmeddelanden.", + "Discord_Page_Description_2": "ABP Community Discord Server är platsen där du kan visa upp dina skapelser med ABP Framework, dela de tips som fungerade för dig, få de senaste nyheterna och tillkännagivandena om ABP Framework, bara chatta med medlemmar i samhället för att utbyta idéer och ha kul!", + "Discord_Page_Description_3": "Denna ABP Community Discord Server är den officiella med ABP Core Team närvarande på servern för att övervaka.", + "Discord_Page_JoinToServer": "Gå med i ABP Discord Server", + "Events_Page_MetaTitle": "ABP:s evenemang för allmänheten", + "Events_Page_MetaDescription": "Live-showerna, som leds av ABP-teamet, är avslappnade sessioner fulla av community-innehåll, demonstrationer, frågor och svar och diskussioner om vad som händer i ABP.", + "Events_Page_Title": "ABP Community Samtal", + "Members_Page_WritingFromUser": "Läs skrivning från {0} på ABP Community.", + "Post_Create_Page_MetaTitle": "Ny post", + "Post_Create_Page_MetaDescription": "Skapa ditt inlägg för att dela med dig av dina erfarenheter om ABP-ramverket och bidra till ABP-communityn.", + "Post_Create_Page_CreateNewPost": "Skapa nytt inlägg", + "Post_Index_Page_MetaDescription": "ABP Communitys syfte är att skapa en bidragsmiljö för utvecklare som använder ABP-ramverket.", + "Layout_Title": "{0} | ABP Gemenskap", + "Layout_MetaDescription": "Ett nav för ABP Framework, .NET och programvaruutveckling. Få tillgång till artiklar, handledning, nyheter och bidra till ABP-communityn.", + "Index_Page_CommunityIntroduction": "Detta är ett nav för ABP Framework, .NET och programvaruutveckling. Du kan läsa artiklarna, titta på videohandledningarna, få information om ABP:s utvecklingsframsteg och ABP-relaterade evenemang, hjälpa andra utvecklare och dela med dig av din expertis till ABP-communityn.", + "TagsInArticle": "Taggar i artikel", + "IConsentToMedium": "Jag samtycker till publicering av detta inlägg på https://medium.com/volosoft.", + "SearchResultsFor": "Sökresultat för \"{0}\"", + "SeeMoreVideos": "Se fler videor", + "DiscordPageTitle": "ABP Discord Gemenskap", + "ViewVideo": "Visa video", + "AbpCommunityTitleContent": "ABP Community - ABP-ramverk med öppen källkod", + "CommunitySlogan": "En unik community-plattform för ABP-älskare.", + "RaffleIsNotActive": "Lottdragningen är inte aktiv", + "YouAreAlreadyJoinedToThisRaffle": "Du är redan med i utlottningen!", + "InvalidSubscriptionCode": "Ogiltig prenumerationskod", + "Raffle:{0}": "Lottdragning: {0}", + "Join": "Gå med", + "Leave": "Lämna", + "LoginToJoin": "Logga in för att gå med", + "ToEnd:": "För att avsluta:", + "ToStart:": "Det är en början:", + "days": "dagar", + "hrs": "timmar", + "min": "min", + "sec": "sek", + "Winners": "Vinnare", + "To{0}LuckyWinners": "till {0} lyckliga vinnare", + "ActiveRaffles": "Aktiva Rafflar.", + "UpcomingRaffles": "Kommande Rafflar", + "CompletedRaffles": "Färdigställda Rafflar", + "NoActiveRaffleTitle": "Ingen aktiv utlottning är tillgänglig för tillfället.", + "NoActiveRaffleDescription": "Ingen aktiv utlottning är tillgänglig för tillfället.", + "RaffleSubscriptionCodeInputMessage": "Denna utlottning kräver en registreringskod. Vänligen ange registreringskoden nedan:", + "RaffleSubscriptionCodeInputErrorMessage": "Registreringskoden är felaktig. Vänligen försök igen.", + "GoodJob!": "Bra jobbat!", + "RaffleJoinSuccessMessage": "Du är nu registrerad för utlottningen. Du kommer att informeras via e-post om du vinner priset!", + "RaffleLoginAndRegisterMessage": "Du måste logga in för att delta i utlottningen! Om du inte har registrerat dig ännu kan du skapa ett konto gratis nu.", + "Ok": "Ok", + "SeeDetails": "Se detaljer", + "WaitingForTheDraw": "Vänta på dragningen!", + "AllAttendees": "Alla deltagare", + "SeeRaffleDetail": "Se Raffle detalj", + "SeeRaffle": "Se Raffle", + "ParticipationIsComplete": "Deltagandet är fullständigt.", + "ABPCoreDevelopmentTeam": "ABP Core utvecklingsteam", + "RegisterTheEvent": "Registrera evenemanget", + "GoToConferencePage": "Gå till konferenssidan", + "BuyTicket": "Buy Ticket", + "SeeEvent": "Se evenemang", + "PreviousEvents": "Tidigare evenemang", + "OtherLiveEvents": "Andra live-evenemang", + "SponsoredConferences": "Sponsrade konferenser", + "SponsoredConferencesDescription": "Vi är stolta över att stödja .NET-communities och evenemang för programvaruutvecklare.", + "UpcomingEvents": "Kommande evenemang", + "UpcomingCommunityTalkEventDescription": "Live-showerna, som leds av ABP-teamet, är avslappnade sessioner fulla av community-innehåll, demonstrationer, frågor och svar och diskussioner om vad som händer i ABP.", + "UpcomingConferenceEventDescription": "ABP .NET Conference är ett virtuellt evenemang för .NET-utvecklare där de kan träffas och lyssna på föredrag om .NET-världen, vanliga metoder för programvaruutveckling och ABP Framework med öppen källkod.", + "LastOneYear": "Senaste 1 året", + "AllTimes": "Alla tider", + "TopContributors": "De största bidragsgivarna", + "{0}Posts": "{0} Inlägg", + "LATESTPOSTS": "SENASTE INLÄGGNINGAR", + "NoContributorsFound": "Inga bidragsgivare hittades!", + "LatestPost": "Senaste inlägget", + "MEMBERSINCE{0}": "MEDLEM EFTERSOM {0}", + "CopyLink": "Kopiera länk", + "ShareOnTwitter": "Dela på Twitter", + "ShareOnLinkedIn": "Dela på LinkedIn", + "MoreFrom{0}": "Mer från {0}", + "SeeAllFrom{0}": "Se alla från {0}", + "MostWatched": "Mest bevakade", + "Articles({0})": "Artiklar ({0})", + "Videos({0})": "Videor ({0})", + "LatestArticles": "Senaste artiklar", + "RaffleHeader": "Hej ABP Community Member!", + "RafflesInfo": "
Det här är utlottningssidan som är avsedd att visa vår uppskattning för att du är en aktiv gemenskapsmedlem. Vi gör ABP Community Talks ,ABP .NET Conference, deltar eller sponsrar .NET-relaterade evenemang där vi ger bort några gåvor.

Du kan följa den här sidan för att se kommande lotterier, delta i dem eller se tidigare lotterier som vi dragit inklusive vinnarna.

Tack för att du är en aktiv medlem! Vi ses i de kommande lotterierna.", + "RafflesInfoTitle": "ABP Community Rafflar.", + "ToLuckyWinner": "till 1 lycklig vinnare", + "MarkdownSupported": "Stöd för Markdown.", + "Preview": "Förhandsgranskning", + "VisitPage": "Besök sidan", + "VisitVideoCourseDescription": "Om du vill lära dig grunderna i ABP-ramverket kan du kolla in videokurserna ABP Essentials.", + "EditProfile": "Redigera profil", + "ConfirmEmailForPost": "För att kunna göra inlägg måste du bekräfta din e-post. Gå till account.abp.io/Account/Manage och verifiera din e-postadress under fliken Personal Info.", + "DailyPostCreateLimitation": "Du har nått den dagliga gränsen för skapande av inlägg. Du kan skapa ett nytt inlägg i {0}.", + "YourAccountDisabled": "Ditt användarkonto är inaktiverat!" + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Docs/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Docs/Localization/Resources/sv.json new file mode 100644 index 0000000000..d24ece38ce --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Docs/Localization/Resources/sv.json @@ -0,0 +1,9 @@ +{ + "culture": "sv", + "texts": { + "Buy": "Köp", + "SeeBookDetails": "Se bokdetaljer", + "MasteringAbpFrameworkEBookDescription": "Den här boken hjälper dig att få en fullständig förståelse för ramverket och moderna tekniker för utveckling av webbapplikationer.", + "Feedback": "Återkoppling" + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Support/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Support/Localization/Resources/sv.json new file mode 100644 index 0000000000..e39cf79f0e --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Support/Localization/Resources/sv.json @@ -0,0 +1,6 @@ +{ + "culture": "sv", + "texts": { + "FAQ": "VANLIGA FRÅGOR" + } +} \ No newline at end of file diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/sv.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/sv.json new file mode 100644 index 0000000000..a26f21b66b --- /dev/null +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/sv.json @@ -0,0 +1,1828 @@ +{ + "culture": "sv", + "texts": { + "GetStarted": "Kom igång", + "Create": "Skapa", + "NewProject": "Nytt projekt", + "DirectDownload": "Direkt nedladdning", + "ProjectName": "Projektets namn", + "ProjectType": "Typ av projekt", + "DatabaseProvider": "Databasleverantör", + "DatabaseManagementSystem": "System för databashantering", + "NTier": "N-djur", + "IncludeUserInterface": "Inkludera användargränssnitt", + "CreateNow": "Skapa nu", + "TheStartupProject": "Uppstartsprojektet", + "Tutorial": "Handledning", + "UsingCLI": "Använda CLI", + "SeeDetails": "Se detaljer", + "AbpShortDescription": "ABP Framework är en komplett infrastruktur för att skapa mjukvarulösningar med moderna arkitekturer baserade på ASP.NET Core-plattformen.", + "SourceCodeUpper": "KÄLLKOD", + "LatestReleaseLogs": "Senaste versionens loggar", + "Infrastructure": "Infrastruktur", + "Architecture": "Arkitektur", + "Modular": "Modulär", + "DontRepeatYourself": "Upprepa inte dig själv", + "DeveloperFocused": "Fokus på utvecklare", + "FullStackApplicationInfrastructure": "Full stack applikationsinfrastruktur.", + "DomainDrivenDesign": "Domänstyrd design", + "DomainDrivenDesignExplanation": "Designad och utvecklad utifrån DDD-mönster och principer. Ger en skiktad modell för din applikation.", + "Authorization": "Auktorisering", + "AuthorizationExplanation": "Avancerad auktorisering med användare, roll och finkornigt behörighetssystem. Byggt på Microsoft Identity-biblioteket.", + "MultiTenancy": "Multi-tenancy", + "MultiTenancyExplanationShort": "SaaS-applikationer på ett enkelt sätt! Integrerad multi-tenancy från databas till användargränssnitt.", + "CrossCuttingConcerns": "Tvärgående angelägenheter", + "CrossCuttingConcernsExplanationShort": "Komplett infrastruktur för auktorisering, validering, undantagshantering, cachelagring, revisionsloggning, transaktionshantering med mera.", + "BuiltInBundlingMinification": "Inbyggd paketering och minimering", + "BuiltInBundlingMinificationExplanation": "Du behöver inte använda externa verktyg för paketering och minifiering. ABP erbjuder ett enklare, mer dynamiskt, kraftfullt, modulärt och inbyggt sätt!", + "VirtualFileSystem": "Virtuellt filsystem", + "VirtualFileSystemExplanation": "Bädda in vyer, skript, stilar, bilder ... i paket/libraries och återanvänd dem i olika applikationer.", + "Theming": "Tematisering", + "ThemingExplanationShort": "Använd och anpassa det bootstrap-baserade standardgränssnittstemat eller skapa ditt eget.", + "BootstrapTagHelpersDynamicForms": "Bootstrap-tagghjälpmedel och dynamiska formulär", + "BootstrapTagHelpersDynamicFormsExplanation": "Istället för att manuellt skriva de upprepade detaljerna i bootstrap-komponenter, använd ABP:s tagghjälpmedel för att förenkla dem och dra nytta av IntelliSense. Bygg snabbt användargränssnittsformulär baserat på en C#-modell med hjälp av tagghjälpen för dynamiska formulär.", + "HTTPAPIsDynamicProxies": "HTTP API:er och dynamiska proxyservrar", + "HTTPAPIsDynamicProxiesExplanation": "Exponera automatiskt applikationstjänster som HTTP API:er i REST-stil och använd dem med dynamiska JavaScript- och C#-proxyer.", + "CompleteArchitectureInfo": "Modern arkitektur för att skapa underhållsfria programvarulösningar.", + "DomainDrivenDesignBasedLayeringModelExplanation": "Hjälper till att implementera en DDD-baserad skiktad arkitektur och bygga en underhållbar kodbas.", + "DomainDrivenDesignBasedLayeringModelExplanationCont": "Tillhandahåller startmallar, abstraktioner, basklasser, tjänster, dokumentation och guider som hjälper dig att utveckla din applikation baserat på DDD-mönster och -principer.", + "MicroserviceCompatibleModelExplanation": "Kärnramverket och de förbyggda modulerna är utformade med mikrotjänstarkitektur i åtanke.", + "MicroserviceCompatibleModelExplanationCont": "Tillhandahåller infrastruktur, integrationer, exempel och dokumentation för att göra det enklare att implementera mikrotjänstlösningar, samtidigt som det inte medför ytterligare komplexitet om du vill ha en monolitisk applikation.", + "ModularInfo": "ABP tillhandahåller ett modulsystem som gör att du kan utveckla återanvändbara applikationsmoduler, knyta an till händelser i applikationens livscykel och uttrycka beroenden mellan centrala delar av ditt system.", + "PreBuiltModulesThemes": "Förbyggda moduler och teman", + "PreBuiltModulesThemesExplanation": "Moduler och teman med öppen källkod och kommersiella moduler är redo att användas i din affärsapplikation.", + "NuGetNPMPackages": "NuGet- och NPM-paket", + "NuGetNPMPackagesExplanation": "Distribueras som NuGet- och NPM-paket. Lätt att installera och uppgradera.", + "ExtensibleReplaceable": "Utdragbar/utbytbar", + "ExtensibleReplaceableExplanation": "Alla tjänster och moduler är utformade med tanke på utbyggbarhet. Du kan byta ut tjänster, sidor, stilar och komponenter.", + "CrossCuttingConcernsExplanation2": "Håll din kodbas mindre så att du kan behålla fokus på den kod som är specifik för ditt företag.", + "CrossCuttingConcernsExplanation3": "Lägg inte tid på att implementera gemensamma applikationskrav i flera projekt.", + "AuthenticationAuthorization": "Autentisering och auktorisering", + "ExceptionHandling": "Hantering av undantag", + "Validation": "Validering", + "DatabaseConnection": "Databasanslutning", + "TransactionManagement": "Transaktionshantering", + "AuditLogging": "Loggning av revision", + "Caching": "Caching", + "Multitenancy": "Multitenancy", + "DataFiltering": "Filtrering av data", + "ConventionOverConfiguration": "Konvention över konfiguration", + "ConventionOverConfigurationExplanation": "ABP implementerar vanliga applikationskonventioner som standard med minimal eller ingen konfiguration.", + "ConventionOverConfigurationExplanationList1": "Auto-registrering av kända tjänster för beroendeinjektion.", + "ConventionOverConfigurationExplanationList2": "Exponerar applikationstjänster som HTTP API:er med hjälp av namnkonventioner.", + "ConventionOverConfigurationExplanationList3": "Skapar dynamiska HTTP-klientproxyer för C# och JavaScript.", + "ConventionOverConfigurationExplanationList4": "Tillhandahåller standardförvar för dina enheter.", + "ConventionOverConfigurationExplanationList5": "Hanterar arbetsenhet per webbförfrågan eller applikationstjänstmetod.", + "ConventionOverConfigurationExplanationList6": "Publicerar skapa, uppdatera och ta bort händelser för dina enheter.", + "BaseClasses": "Basklasser", + "BaseClassesExplanation": "Förbyggda basklasser för vanliga applikationsmönster.", + "DeveloperFocusedExplanation": "ABP är till för utvecklare.", + "DeveloperFocusedExplanationCont": "Det syftar till att förenkla den dagliga programutvecklingen utan att hindra dig från att skriva lågnivåkod.", + "SeeAllFeatures": "Se alla funktioner", + "CLI_CommandLineInterface": "CLI (kommandoradsgränssnitt)", + "CLI_CommandLineInterfaceExplanation": "Innehåller ett CLI som hjälper dig att automatisera skapandet av nya projekt och tillägg av nya moduler.", + "StartupTemplates": "Mallar för nystartade företag", + "StartupTemplatesExplanation": "ABP:s mall för applikationsstart ger en fullt konfigurerad lösning för att starta din utveckling.", + "BasedOnFamiliarTools": "Baserat på välkända verktyg", + "BasedOnFamiliarToolsExplanation": "Byggd på och integrerad med populära verktyg som du redan känner till. Låg inlärningskurva, enkel anpassning, bekväm utveckling.", + "ORMIndependent": "ORM Oberoende", + "ORMIndependentExplanation": "Kärnramverket är ORM/databasoberoende och kan fungera med alla datakällor. Entity Framework Core- och MongoDB-leverantörer finns redan tillgängliga.", + "Features": "Utforska ABP-ramverkets funktioner", + "ABPCLI": "ABP CLI", + "Modularity": "Modularitet", + "BootstrapTagHelpers": "Bootstrap-taggarnas hjälpmedel", + "DynamicForms": "Dynamiska formulär", + "BundlingMinification": "Paketering och minimering", + "BackgroundJobs": "Bakgrundsjobb", + "BackgroundJobsExplanation": "Definiera enkla klasser för att utföra jobb i bakgrunden när de står i kö. Använd den inbyggda jobbhanteraren eller integrera din egen. Integrationer med Hangfire, RabbitMQ och Quartz är redan tillgängliga.", + "DDDInfrastructure": "DDD Infrastruktur", + "DomainDrivenDesignInfrastructure": "Domänstyrd design Infrastruktur", + "AutoRESTAPIs": "Auto REST API:er", + "DynamicClientProxies": "Dynamiska klientproxyservrar", + "DistributedEventBus": "Distribuerad händelsebuss", + "DistributedEventBusWithRabbitMQIntegration": "Distribuerad händelsebuss med RabbitMQ-integration", + "TestInfrastructure": "Testinfrastruktur", + "AuditLoggingEntityHistories": "Audit Logging & Entity Histories", + "ObjectToObjectMapping": "Mappning av objekt till objekt", + "ObjectToObjectMappingExplanation": "Objekt-till-objekt-mappning abstraktion med AutoMapper-integration.", + "EmailSMSAbstractions": "E-post- och SMS-abstraktioner", + "EmailSMSAbstractionsWithTemplatingSupport": "E-post- och SMS-abstraktioner med stöd för templating", + "Localization": "Lokalisering", + "SettingManagement": "Inställning Management", + "ExtensionMethods": "Metoder för förlängning", + "ExtensionMethodsHelpers": "Metoder och hjälpmedel för förlängning", + "AspectOrientedProgramming": "Aspektorienterad programmering", + "DependencyInjection": "Injektion av beroenden", + "DependencyInjectionByConventions": "Dependency Injection enligt konventioner", + "ModularityExplanation": "ABP tillhandahåller en komplett infrastruktur för att bygga dina egna applikationsmoduler som kan innehålla enheter, tjänster, databasintegration, API:er, UI-komponenter och så vidare.", + "MultiTenancyExplanation": "ABP stöder inte bara utveckling av applikationer med flera hyresgäster, utan gör också din kod mestadels omedveten om flera hyresgäster.", + "MultiTenancyExplanation2": "Kan automatiskt bestämma den aktuella hyresgästen, isolera data från olika hyresgäster från varandra.", + "MultiTenancyExplanation3": "Stöd för en enda databas, databas per klient och hybridmetoder.", + "MultiTenancyExplanation4": "Du fokuserar på din affärskod och låter ramverket hantera multi-tenancy för din räkning.", + "BootstrapTagHelpersExplanation": "Istället för att manuellt skriva de upprepande detaljerna i bootstrap-komponenterna, använd ABP:s tagghjälpmedel för att förenkla det och dra nytta av IntelliSense. Du kan använda Bootstrap direkt när du behöver det.", + "DynamicFormsExplanation": "Dynamiska formulär- och inmatningstagghjälpmedel kan skapa ett komplett formulär från en C#-klass som modell.", + "AuthenticationAuthorizationExplanation": "Rika autentiserings- och auktoriseringsalternativ integrerade med ASP.NET Core Identity & OpenIddict. Tillhandahåller ett utbyggbart och detaljerat behörighetssystem.", + "CrossCuttingConcernsExplanation": "Upprepa inte dig själv för att implementera alla dessa vanliga saker om och om igen. Fokusera på din affärskod och låt ABP automatisera dem genom konventioner.", + "DatabaseConnectionTransactionManagement": "Databasanslutning och transaktionshantering", + "CorrelationIdTracking": "Spårning av korrelation-Id", + "BundlingMinificationExplanation": "ABP erbjuder ett enkelt, dynamiskt, kraftfullt, modulärt och inbyggt system för paketering och minifiering.", + "VirtualFileSystemnExplanation": "Det virtuella filsystemet gör det möjligt att hantera filer som inte fysiskt finns i filsystemet (disken). Det används främst för att bädda in (js, css, image, cshtml...) filer i assemblies och använda dem som fysiska filer vid körning.", + "ThemingExplanation": "Theming-systemet gör det möjligt att utveckla dina applikationer och moduler tematiskt oberoende genom att definiera en uppsättning gemensamma basbibliotek och layouter, baserade på det senaste Bootstrap-ramverket.", + "DomainDrivenDesignInfrastructureExplanation": "En komplett infrastruktur för att bygga applikationer i flera lager baserat på mönster och principer för domändriven design;", + "Specification": "Specifikation", + "Repository": "Förvar", + "DomainService": "Domänservice", + "ValueObject": "Värdeobjekt", + "ApplicationService": "Applikationstjänst", + "DataTransferObject": "Dataöverföringsobjekt", + "AggregateRootEntity": "Aggregerad rot, enhet", + "AutoRESTAPIsExplanation": "ABP kan automatiskt konfigurera dina applikationstjänster som API-controllers enligt konvention.", + "DynamicClientProxiesExplanation": "Använd enkelt dina API:er från JavaScript- och C#-klienter.", + "DistributedEventBusWithRabbitMQIntegrationExplanation": "Publicera och konsumera enkelt distribuerade händelser med hjälp av den inbyggda Distributed Event Bus med RabbitMQ-integration.", + "TestInfrastructureExplanation": "Ramverket har utvecklats med enhets- och integrationstestning i åtanke. Ger dig basklasser för att göra det enklare. Startmallar kommer förkonfigurerade för testning.", + "AuditLoggingEntityHistoriesExplanation": "Inbyggd revisionsloggning för affärskritiska applikationer. Granskningsloggning på förfrågnings-, tjänste- och metodnivå samt entitetshistorik med detaljer på egenskapsnivå.", + "EmailSMSAbstractionsWithTemplatingSupportExplanation": "IEmailSender- och ISmsSender-abstraktionerna frikopplar din applikationslogik från infrastrukturen. Avancerat e-postmallsystem gör det möjligt att skapa och lokalisera e-postmallar och enkelt använda dem när det behövs.", + "LocalizationExplanation": "Lokaliseringssystemet gör det möjligt att skapa resurser i vanliga JSON-filer och använda dem för att lokalisera ditt användargränssnitt. Det stöder avancerade scenarier som arv, tillägg och JavaScript-integration samtidigt som det är helt kompatibelt med AspNet Core's lokaliseringssystem.", + "SettingManagementExplanation": "Definiera inställningar för din applikation och hämta värdena i körtid baserat på aktuell konfiguration, klient och användare.", + "ExtensionMethodsHelpersExplanation": "Upprepa inte dig själv ens för triviala koddelar. Extensions & helpers för standardtyper gör din kod mycket renare och lättare att skriva.", + "AspectOrientedProgrammingExplanation": "Ger en bekväm infrastruktur för att skapa dynamiska proxies och implementera aspektorienterad programmering. Fånga upp valfri klass och kör din kod före och efter varje metodkörning.", + "DependencyInjectionByConventionsExplanation": "Du behöver inte registrera dina klasser för dependency injection manuellt. Registrerar automatiskt vanliga tjänstetyper enligt konvention. För andra typer av tjänster kan du använda gränssnitt och attribut för att göra det enklare och på plats.", + "DataFilteringExplanation": "Definiera och använd datafilter som tillämpas automatiskt när du söker efter enheter i databasen. Soft Delete & MultiTenant-filter tillhandahålls direkt när du implementerar enkla gränssnitt.", + "PublishEvents": "Publicera evenemang", + "HandleEvents": "Hantera händelser", + "Code": "Kod", + "Result": "Resultat", + "SeeTheDocumentForMoreInformation": "Kolla in {0} dokumentet för mer information", + "UiFramework": "Ramverk för användargränssnitt", + "EmailAddress": "E-postadress", + "Mobile": "Mobil", + "ReactNative": "React Native", + "Strong": "Stark", + "Complete": "Komplett", + "BasedLayeringModel": "Baserad skiktningsmodell", + "Microservice": "Mikroservice", + "Compatible": "Kompatibel", + "MeeTTheABPCommunityInfo": "Vårt uppdrag är att skapa en miljö där utvecklare kan hjälpa varandra med inlägg, handledning, fallstudier etc. och träffa likasinnade.", + "JoinTheABPCommunityInfo": "Engagera dig i en livlig gemenskap och bli en bidragsgivare till ABP-ramverket!", + "AllPosts": "Alla inlägg", + "SubmitYourPost": "Skicka in ditt inlägg", + "DynamicClientProxyDocument": "Kolla in dokumentationen för dynamisk klientproxy för JavaScript & C#.", + "EmailSMSAbstractionsDocument": "Mer information finns i dokumenten E-post och SMS-sändning.", + "CreateProjectWizard": "Den här guiden skapar ett nytt projekt från startmallen som är korrekt konfigurerad för att starta upp ditt projekt.", + "TieredOption": "Skapar en skiktad lösning där webb- och Http API-skikten är fysiskt åtskilda. Om det inte är markerat skapas en skiktad lösning som är mindre komplex och lämplig för de flesta scenarier.", + "SeparateIdentityServerOption": "Separerar serversidan i två applikationer: Den första är för identitetsservern och den andra är för ditt HTTP-API på serversidan.", + "SeparateAuthenticationServerOption": "Separerar serversidan i två applikationer: Den första är för autentiseringsservern och den andra är för ditt HTTP-API på serversidan.", + "ProgressiveWebApplicationOption": "Anger projektet som Progressive Web Application", + "UseslatestPreVersion": "Använder den senaste pre-release-versionen", + "ReadTheDocumentation": "Läs dokumentationen", + "Documentation": "Dokumentation", + "GettingStartedTutorial": "Handledning för att komma igång", + "ApplicationDevelopmentTutorial": "Handledning för applikationsutveckling", + "TheStartupTemplate": "Startmall för nystartade företag", + "InstallABPCLIInfo": "ABP CLI är det snabbaste sättet att starta en ny lösning med ABP-ramverket. Installera ABP CLI med hjälp av ett kommandoradsfönster:", + "DifferentLevelOfNamespaces": "Du kan använda olika nivåer av namnrymder; t.ex. BookStore, Acme.BookStore eller Acme.Retail.BookStore.", + "ABPCLIExamplesInfo": "Kommandot new skapar en lagrad MVC-applikation med Entity Framework Core som databasleverantör. Det har dock ytterligare alternativ.", + "SeeCliDocumentForMoreInformation": "Kolla in ABP CLI-dokumentet för fler alternativ eller välj fliken \"Direkt nedladdning\" ovan.", + "Optional": "Valfritt", + "LocalFrameworkRef": "Behåll den lokala projektreferensen för ramverkspaketen.", + "BlobStoring": "BLOB Storing", + "BlobStoringExplanation": "BLOB-lagringssystemet ger en abstraktion för att arbeta med BLOB. ABP tillhandahåller några förbyggda lagringsleverantörsintegrationer (Azure, AWS, File System, Database, etc.) som du enkelt kan använda i dina applikationer.", + "TextTemplating": "Templating av text", + "TextTemplatingExplanation": "Textmallar används för att dynamiskt återge innehåll baserat på en mall och en modell (ett dataobjekt). Du kan t.ex. använda det för att skapa dynamiskt e-postinnehåll med en förbyggd mall.", + "MultipleUIOptions": "Flera alternativ för användargränssnitt", + "MultipleDBOptions": "Flera databasleverantörer", + "MultipleDBOptionsExplanation": "Ramverket kan användas med alla datakällor, men följande leverantörer är officiellt utvecklade och stöds:", + "SelectLanguage": "Välj språk", + "LatestPostOnCommunity": "Senaste inlägget på ABP Community", + "Register": "Registrera", + "IsDownloadable": "Är nedladdningsbar", + "DatabaseOptions": "Alternativ för databas", + "BackToPackagesPage": "Tillbaka till sidan Paket", + "HowToInstall": "Så här installerar du", + "SeeOnNpm": "Se på NPM", + "SeeOnNuget": "Detta är Nuget", + "MVCGulpCommandExplanation": "Om du använder MVC (Razor Pages) UI, kör kommandot \"gulp\" efter installationen av paketet.", + "UsingABPCLI": "Använda Abp CLI", + "WithoutABPCLI": "Utan ABP CLI", + "ABPCLIModuleDependency": "Abp Cli lägger automatiskt till modulberoende.", + "AddModuleDependency": "Lägg sedan till modulberoende", + "Packages": "Paket", + "NugetPackages": "Nuget-paket", + "NPMPackages": "NPM-paket", + "SeeDocs": "Se dokument", + "None": "Ingen", + "Application": "Tillämpning", + "ApplicationExplanation": "Skapar en heltäckande lösning baserad på metoder för domändriven design. Rekommenderas för långsiktiga projekt som behöver en underhållbar och utbyggbar kodbas.", + "ApplicationNoLayer": "Applikation (enstaka lager)", + "ApplicationNoLayerExplanation": "Skapar en webbapplikation i ett lager. Rekommenderas för att bygga en applikation med en enklare och mer lättförståelig arkitektur.", + "Module": "Modul", + "ModuleExplanation": "Skapar en återanvändbar, helt skiktad applikationsmodullösning. Du kan använda det här alternativet för att skapa moduler för din modulära applikation.", + "PackageName": "Paketets namn", + "LicenseURL": "URL för licens", + "License": "Licens", + "ProjectCreationSuccessMessage": "Ditt projekt har skapats framgångsrikt", + "HowToRunSolution": "Hur kör jag din lösning?", + "GettingStartedMessage": "I dokumentet Kom igång kan du läsa om hur du konfigurerar och kör din lösning.", + "WebAppDevTutorial": "Handledning för utveckling av webbapplikationer", + "WebAppDevTutorialMessage": "I handledningsdokumentet för utveckling av webbapplikationer finns ett exempel på utveckling steg för steg.", + "CommunityPosts": "Inlägg från gemenskapen", + "CommunityPostMessage": "Kolla in ABP Community Platform för att läsa användbara inlägg för ABP Framework.", + "InvestigateSolutionDetails": "Kolla in lösningsdetaljerna", + "StartupTemplateDocumentationMessage": "Ta en titt på malldokumentet för applikationsstart för att lära dig arkitekturen och strukturen för din lösning.", + "ClientSideDevelopment": "Utveckling på klientsidan", + "ClientSideDevelopmentDocumentationMessage": "Kolla in {0}-dokumentet för att lära dig de viktigaste punkterna för utvecklingen av användargränssnittet (klientsidan).", + "DatabaseProviderDocumentationMessage": "Kolla in dokumentet {0} för att lära dig de viktigaste punkterna för utvecklingen av databaslagret.", + "ImplementingDDD": "Implementering av domändriven design", + "DDDBookExplanation": "En praktisk guide för implementering av domändriven design med ABP-ramverket.", + "Overview": "Översikt", + "TableOfContents": "Innehållsförteckning", + "IntroductionToImplementingDDD": "Introduktion till implementering av domändriven design", + "WhatIsDDD": "Vad är domändriven design?", + "Implementation": "Implementering", + "TheBigPicture": "Den stora bilden", + "TheBuildingBlock": "Byggstenen", + "ExampleUseCase": "Exempel Användningsfall", + "DomainAndApplicationLogic": "Domänlogik och applikationslogik", + "Author": "Författaren", + "Pages": "Sidor", + "PublishedOn": "Publicerad på", + "FreeEBook": "Gratis e-bok", + "Download": "Nedladdningar", + "EBookSignInForDownload": "För att ladda ner e-boken logga in", + "SignIn": "Logga in", + "Or": "Eller", + "TellUsAboutYourself": "Berätta lite om dig själv", + "Name": "Namn", + "Surname": "Efternamn", + "CompanyName": "Företagets namn", + "Free": "Gratis", + "DDDEBook": "DDD e-bok", + "PracticalGuideForImplementingDDD": "Den här boken är en praktisk guide för att implementera domändriven design med ABP-ramverket.", + "IntroducingDDD": "Introduktion till domändriven design", + "DDDLayersAndCleanArchitecture": "DDD-skikt och ren arkitektur", + "LayeringOfADotnetSolution": "Skiktning av en .NET-lösning", + "ImplementingDDDBuildingBlocks": "Implementering av DDD-byggstenar", + "DomainVsApplicationLogic": "Domänlogik vs applikationslogik", + "SamplesAndDiscussions": "Provtagningar och diskussioner", + "EmailNotValid": "Vänligen ange en giltig e-postadress.", + "WeWillSendYouADownloadLink": "En länk för att ladda ner e-boken har skickats till {0}. Kontrollera din inkorg, skräppost eller spambox!", + "GoHome": "Gå hem", + "InvalidFormInputs": "Vänligen skriv in den giltiga information som anges på formuläret.", + "DDDBookEmailBody": "Tack så mycket.
För att ladda ner din bok, klicka här.", + "SubscribeToNewsletter": "Prenumerera på nyhetsbrevet för att få information om vad som händer i ABP Platform, t.ex. nya releaser, inlägg, erbjudanden och mycket mer.", + "FirstEdition": "Första upplagan", + "ThankYou": "Tack så mycket!", + "CheckboxMandatory": "Du måste kontrollera detta för att fortsätta!", + "UserInterface": "Användargränssnitt", + "APIGateway": "API-gateway", + "Database": "Databas", + "Saas": "Saas", + "OpenSourceWebApp": "Öppna källan
webbapplikation", + "Framework": "Ramverk", + "AuditLoggingExplanation": "Spåra automatiskt alla operationer och dataförändringar i ditt system.", + "AbpNewCommandExplanation": "Skapar nya lösningar med hjälp av ABP:s startmallar.", + "AbpAddModuleCommandExplanation": "Installerar förbyggda applikationsmoduler till din lösning", + "AbpUpdateCommandExplanation": "Uppdaterar automatiskt alla ABP-relaterade NuGet- och NPM-paket i din lösning.", + "ExploreAllCLICommands": "Utforska alla CLI-kommandon", + "ExploreDocumentationAndGuides": "Utforska den omfattande dokumentationen och guiderna.", + "Documentations": "Dokumentation", + "Views": "Utsikt", + "EnterYouEmailToGetNews": "Ange din e-postadress för att få de senaste nyheterna om ABP-ramverket", + "Tiered": "Tiered", + "SeparateIdentityServer": "Separat identitetsserver", + "SeparateAuthenticationServer": "Separat autentiseringsserver", + "ProgressiveWebApplication": "Progressiv webbapplikation", + "Preview": "Förhandsgranskning", + "CreateANewSolution": "Skapa en ny .NET-lösning", + "FrameworkFeatures": "Funktioner för ramverk", + "Commercial": "Kommersiell", + "ThirdPartyTools": "Verktyg från tredje part", + "Back": "Tillbaka", + "Community": "Gemenskap", + "SeeMore": "Se mer", + "DetailsOfTheEBook": "Detaljer om e-boken", + "JoinOurMarketingNewsletter": "Anmäl dig till vårt marknadsföringsnyhetsbrev", + "FrameworkNewsletterConfirmationMessage": "Jag godkänner Villkor och bestämmelser och Privatlivspolicy.", + "GetYourFreeEBook": "Hämta din gratis DDD e-bok ", + "EverythingYouNeedToKnow": "Allt du behöver veta.", + "PreOrderNow": "Förbeställ nu", + "UITheming": "Tematisering av användargränssnitt", + "UIThemingExplanation": "Skapa återanvändbara UI-teman och layouter eller använd ett av de förbyggda UI-temana.", + "DataFilteringExplanation2": "Filtrera automatiskt vid förfrågningar från databasen för att enkelt kunna implementera mönster som mjuk borttagning och multi-tenancy.", + "NeedHelp": "Behöver du hjälp?", + "GiveYourProjectAName": "Ge ditt projekt ett namn", + "SelectProjectType": "Välj projekttyp", + "SelectUIFramework": "Välj UI Framework", + "SelectDatabaseProvider": "Välj databasleverantör", + "SelectDatabaseManagementSystem": "Välj system för databashantering", + "InstallingTheABPCLI": "Installera ABP CLI", + "CreateYourProjectNow": "Skapa ditt projekt nu", + "OrderOn": "Order på {0}", + "DownloadFreeDDDBook": "Ladda ner gratis DDD-bok", + "WhatIsABPFramework": "Vad är ABP-ramverket?", + "TenantDatabase": "Hyresgäst {0} Databas", + "SharedDatabase": "Delad databas", + "ConnectionResolver": "Återlösare för anslutning", + "TenantBasedDataFilter": "Filter för hyresgästbaserad data", + "ApplicationCode": "Tillämpningskod", + "TenantResolution": "Lösning för hyresgäster", + "TenantUser": "Hyresgäst {0} Användare", + "CardTitle": "Kortets titel", + "View": "Utsikt", + "Model": "Modell", + "Email": "E-post", + "Password": "Lösenord", + "Address": "Adress", + "Gender": "Kön", + "Male": "Man", + "Female": "Kvinna", + "Submit": "Skicka in", + "Unspecified": "Ospecificerad", + "StaticFileMiddleware": "Middleware för statiska filer", + "RazorViewEngine": "Razor View Motor", + "PhysicalFiles": "Fysiska filer (wwwroot)", + "EmbeddedFiles": "Inbäddade filer (DLL)", + "DynamicFiles": "Dynamiska filer (minne)", + "BuildSolutionsWithAbp": "Skapa underhållbara .NET-lösningar genom att följa bästa praxis för programvaruutveckling med hjälp av ABP.", + "BuyOnAmazon": "Köp på Amazon", + "BuyOnPackt": "Köp på Packt", + "BuyOnDangDang": "Köp på DangDang", + "BuyOnJD": "Köp på JD", + "Discounted": "Rabatterad", + "MasteringAbpFramework_Book_KeyFeatures": "Viktiga funktioner", + "MasteringAbpFramework_Book_Key_Features_Description_1": "Bygga robusta, underhållbara, modulära och skalbara programvarulösningar med hjälp av ABP Framework.", + "MasteringAbpFramework_Book_Key_Features_Description_2": "Lär dig hur du implementerar SOLID-principer och domändriven design i dina webbapplikationer.", + "MasteringAbpFramework_Book_Key_Features_Description_3": "Upptäck hur ABP Framework påskyndar din utvecklingscykel genom att automatisera repetitiva uppgifter.", + "MasteringAbpFramework_Book_Description": "Bokbeskrivning", + "MasteringAbpFramework_Book_Description_Details_1": "ABP Framework är en komplett infrastruktur för att skapa moderna webbapplikationer genom att följa\n bästa praxis och konventioner för mjukvaruutveckling. Med ABP:s ramverk och ekosystem på hög nivå kan du\n implementera DRY-principen (Don't Repeat Yourself) och fokusera på din affärskod.", + "MasteringAbpFramework_Book_Description_Details_2": "Den här boken är skriven av skaparen av ABP Framework och hjälper dig att få en fullständig förståelse för ramverket\n ramverket och moderna tekniker för utveckling av webbapplikationer. Med steg-för-steg-förklaringar av viktiga\n begrepp och praktiska exempel kommer du att förstå kraven på en modern webblösning och hur ABP\n Framework gör det enkelt att utveckla dina egna lösningar. Du kommer att upptäcka de vanliga kraven på\n utveckling av webbapplikationer för företag och utforska den infrastruktur som tillhandahålls av ABP. Genom hela\n boken kommer du att lära dig bästa praxis för mjukvaruutveckling för att bygga underhållbara och modulära\n webblösningar.", + "MasteringAbpFramework_Book_Description_Details_3": "I slutet av den här boken kommer du att kunna skapa en komplett webblösning som är lätt att utveckla, underhålla och testa,\n underhålla och testa.", + "MasteringAbpFramework_Book_WhatYouWillLearn": "Vad du kommer att lära dig", + "MasteringAbpFramework_Book_What_You_Will_Learn_1": "Konfigurera utvecklingsmiljön och kom igång med ABP Framework.", + "MasteringAbpFramework_Book_What_You_Will_Learn_2": "Arbeta med Entity Framework Core och MongoDB för att utveckla ditt dataåtkomstlager.", + "MasteringAbpFramework_Book_What_You_Will_Learn_3": "Förstå övergripande problem och hur ABP automatiserar repetitiva uppgifter.", + "MasteringAbpFramework_Book_What_You_Will_Learn_4": "Få koll på hur du implementerar domändriven design med ABP Framework.", + "MasteringAbpFramework_Book_What_You_Will_Learn_5": "Bygg UI-sidor och komponenter med ASP.NET Core MVC (Razor Pages) och Blazor.", + "MasteringAbpFramework_Book_What_You_Will_Learn_6": "Arbeta med multi-tenancy för att skapa modulära webbapplikationer.", + "MasteringAbpFramework_Book_What_You_Will_Learn_7": "Förstå modularitet och skapa återanvändbara applikationsmoduler.", + "MasteringAbpFramework_Book_What_You_Will_Learn_8": "Skriva enhets-, integrations- och UI-tester med hjälp av ABP Framework.", + "MasteringAbpFramework_Book_WhoIsThisBookFor": "Vem är den här boken för?", + "MasteringAbpFramework_Book_WhoIsThisBookFor_Description": "Den här boken vänder sig till webbutvecklare som vill lära sig programvaruarkitekturer och bästa praxis för att bygga\n underhållbara webbaserade lösningar med hjälp av Microsoft-teknik och ABP Framework. Grundläggande kunskaper i C#\n och ASP.NET Core är nödvändiga för att komma igång med den här boken.", + "ComputersAndTechnology": "Datorer & teknik", + "BuildingMicroserviceSolutions": "Bygga Microservice-lösningar", + "MicroserviceBookPracticalGuide": "Den här boken är en referensguide för utveckling och hantering av mikrotjänstbaserade applikationer med hjälp av ABP Framework. Den refererar till .NET Microservice Sample Reference Application: eShopOnContainers och diskuterar den arkitektoniska utformningen och implementeringsmetoderna med hjälp av ABP-ramverket. I slutet av den här boken kommer du att lära dig hur ABP hanterar de vanligaste komplexiteterna för mikrotjänster, t.ex. auktorisering, distribuerade transaktioner, kommunikation mellan mikrotjänster, driftsättning osv.", + "IntroducingTheSolution": "Vi presenterar lösningen eShopOnAbp", + "RunningTheSolution": "Kör lösningen", + "UnderstandingTheAuthenticationSystem": "Förståelse för autentiseringssystemet", + "ExploringTheApplications": "Utforska applikationerna", + "UnderstandingTheAPIGateways": "Förståelse för API-gateways", + "DevelopingTheMicroservices": "Utveckling av mikrotjänster", + "UnderstandingTheInfrastructure": "Förståelse för infrastrukturen", + "DiggingInTheUseCases": "Gräva i användningsfallen", + "DeployingTheSolution": "Implementering av lösningen", + "ThisBookIsInDraftStageAndIsNotCompletedYet": "Denna bok är i utkaststadiet och är inte färdigställd ännu.", + "Authors": "Författarna", + "MicroserviceEBook": "Mikroservice e-bok", + "SelectUITheme": "Välj UI-tema", + "LeptonXLiteTheme": "LeptonX Lite tema", + "BasicTheme": "Grundläggande tema", + "LeptonXLiteThemeInfo": " Ett modernt och snyggt Bootstrap UI-tema. Perfekt om du vill ha ett produktionsfärdigt UI-tema. Detta är det nyaste temat och är standard.", + "BasicThemeInfo": "Minimalistiskt UI-tema med vanliga Bootstrap-färger och -stilar. Perfekt om du ska bygga ditt eget UI-tema.", + "SeeDocumentation": "Se dokumentation.", + "SeeFullScreen": "🖼️ Se skärmdump", + "BuildingMicroserviceSolutionsShortDescription": "Den här boken är en referensguide för utveckling och hantering av mikrotjänstbaserade applikationer med hjälp av ABP-ramverket.", + "InstallAbpCliMessage": "Installera ABP CLI i en kommandoradsterminal om du inte har installerat det tidigare:", + "Terminal": "Terminal", + "Copy": "Kopia", + "RunTheFollowingCommand": "Kör följande kommando i en kommandoradsterminal:", + "ChangeSolutionOptionsBelow": "Du kan ändra lösningsalternativen nedan.", + "MultiLayerApplication": "Flera lager
Användningsområde", + "MultiLayerApplicationExplanation1": "Skapar en heltäckande lösning baserad på metoder för domändriven design.", + "MultiLayerApplicationExplanation2": "Rekommenderas för långsiktiga projekt som kräver en underhållbar och utbyggbar kodbas.", + "SingleLayerApplication": "Enkelskikt
Användningsområde", + "SingleLayerApplicationExplanation1": "Skapar en webbapplikation i ett lager. ", + "SingleLayerApplicationExplanation2": "Rekommenderas för att bygga en applikation med en enklare och mer lättförståelig arkitektur.", + "ApplicationModule": "Applikation
Modul", + "SeeTheScreenshot": "Se skärmdumpen", + "ApplicationModuleExplanation1": "Skapar en återanvändbar, helt skiktad applikationsmodullösning.", + "ApplicationModuleExplanation2": "Du kan använda detta alternativ för att skapa moduler för din modulära applikation.", + "Expert_": "Expert", + "Partner_": "Partnerskap", + "WebSite": "Webbplats", + "Expert_Year": "Kompetens År", + "CompanyInfo": "Företagsinformation", + "Date": "Datum", + "WhoWeAre_Partner": "Vilka vi är", + "WhoWeAre_Expert": "Om mig", + "CreateSolutionFolder": "Skapa lösningsmapp", + "CreateSolutionFolderOption": "Anger om projektet ska läggas i en ny mapp i utdatamappen eller direkt i utdatamappen.", + "BooksPageTitle": "ABP Böcker", + "BooksPageDescription": "Utforska ABP-böcker för att fördjupa din förståelse och behärskning av ABP-ramverket.", + "PackageDetailPage_NuGetPackageInstallationOptions": "Det finns tre sätt att installera {0} NuGet-paket till ditt projekt", + "PackageDetailPage_InstallingWithABPCLI": "1: Installera med ABP CLI", + "PackageDetailPage_InstallingWithABPCLIDescription1": "Om du inte har installerat ABP CLI, installera först genom att utföra följande kommando i en kommandoradsterminal", + "PackageDetailPage_InstallingWithABPCLIDescription2": "När du har installerat ABP CLI öppnar du en kommandoradsterminal på platsen för projektet (.csproj-filen) som du vill installera det och kör följande kommando", + "PackageDetailPage_InstallingWithABPCLIDescription3": "Den lägger till {0}-paketreferensen i ditt projekt och {1}-beroendet i din modulklass.", + "PackageDetailPage_ManualInstallation": "2: Installera med Dotnet CLI", + "PackageDetailPage_ManualInstallationDescription1": "Lägg till {0} NuGet-paketreferens till ditt projekt med hjälp av din IDE eller genom att utföra följande kommando", + "PackageDetailPage_ManualInstallationDescription2": "Lägg sedan till {0}-beroendet i din modulklass enligt följande exempel", + "PackageDetailPage_SeeDocumentation": "Se dokumentationen för att lära dig hur du använder det här paketet i dina program.", + "PackageDetailPage_InstallingUsingPMC": "3: Installera med Package Manager-konsolen", + "PackageDetailPage_InstallingUsingPMCDescription1": "Öppna Package Manager Console i Visual Studio (Verktyg -> Nuget Package Manager -> Package Manager Console) och kör följande kommando", + "UIOptions": "Alternativ för användargränssnitt", + "Testimonials": "Vittnesmål", + "CoolestCompaniesUseABPFramework": "De coolaste företagen använder ABP-ramverket", + "Index_Page_Testimonial_1": "ABP Framework är inte bara ett verktyg utan en katalysator som har påskyndat min tillväxt som utvecklare. Det har gjort det möjligt för mig att bygga nya funktioner snabbare än någonsin tidigare, som påminner om andra användares erfarenheter. Det enhetliga kodningsmönstret har effektiviserat mina projekt, vilket ger mig mer tid att fokusera på att skapa snarare än att felsöka.\nJag skulle säga att ABP-ramverket har varit hörnstenen i min tidiga professionella resa. Det har underlättat min övergång från en aspirerande utvecklare till en självsäker yrkesman som är redo att göra avtryck i programvaruvärlden. Jag ser fram emot de spännande projekt som väntar mig, med vetskapen om att ABP kommer att finnas där för att vägleda mig. Det är mer än bara en produkt; det är en partner i framgång.", + "Index_Page_Testimonial_2": "ABP Framework är inte bara ett ramverk, det är också en vägledning för projektutveckling / hantering, eftersom det ger DDD, GenericRepository, DI, Microservice, Modularity utbildningar. Även om du inte kommer att använda själva ramverket kan du utveckla dig själv med abp.io/docs som är väl och professionellt förberedda. (OpenIddict, Redis, Quartz etc.)\nEftersom många saker är förbyggda förkortar det projektutvecklingstiden avsevärt. (Såsom inloggningssida, undantagshantering, datafiltrering-sådd, revisionsloggning, lokalisering, automatisk api-kontroller etc.)\nSom ett exempel från vår app har jag använt Local Event Bus för lagerstyrning. Så jag kan hantera orderrörelser genom att skriva lagerhanterare.\nDet är underbart att inte förlora tid för CreationTime, CreatorId. De fylls i automatiskt.", + "VideosLoginAndRegisterMessage": "För att kunna titta på videor måste du logga in.", + "Filter": "Filter", + "VideoCourses": "Viktiga videor", + "TestimonialText": "Ditt vittnesmål", + "Position": "Position", + "ExperienceYear": "Antal års erfarenhet", + "FullName": "Fullständigt namn", + "CompanySize": "Företagets storlek", + "TestimonialTitle": "Låt oss höra ditt vittnesmål", + "TestimonialInfo": "Vad våra kunder säger är viktigt! Berätta om din erfarenhet av våra produkter och tjänster. Vi rekommenderar att du skriver din testimonial på engelska för att nå ut till en bredare publik.", + "Country": "Land", + "TestimonialTextPlaceholder": "Skriv en kort berättelse om hur ABP hjälpte dig att bygga och leverera ditt projekt.", + "PositionPlaceholder": "Din position på företaget", + "SelectExperienceYearPlaceholder": "Hur många år har du arbetat inom mjukvarubranschen", + "FullNamePlaceholder": "Ditt fullständiga namn", + "CompanyNamePlaceholder": "Ditt företagsnamn", + "SelectCompanySizePlaceholder": "Antal anställda", + "ImagePlaceholder": "Din bild", + "SelectCountryPlaceholder": "Ditt land", + "YouAreNotAuthorizedToWriteTestimonial": "För att kunna skriva ett rekommendationsbrev måste du vara inloggad.", + "UnAuthorizeTestimonialInfo": "Din åsikt är viktig! Logga in för att dela den.", + "TheFileIsTooLargeForImage": "Din profilbild kan inte vara mer än {0} MB", + "ThisExtensionIsNotAllowedForImage": "Denna förlängning är inte tillåten.", + "FileUploadError": "Fel vid filuppladdning", + "TestimonialSend": "Tack så mycket! Vi har tagit emot ditt vittnesmål.
Vi kommer att granska och ta nästa steg snart.", + "Title": "Titel", + "TitlePlaceholder": "Programvaruutvecklare, CTO etc.", + "characters": "karaktärer", + "Testimonial_YourProfilePicture": "Din profilbild (endast {0})", + "BootstrapCardTitle": "Detta är ett exempel på en kortkomponent som byggts av ABP bootstrap card tag helper.", + "GoSomewhere": "Åk någonstans →.", + "ABPTestimonialTitle": "Nytt vittnesmål", + "ABPTestimonialDescription": "Skicka in din testimonial till ABP Community genom att dela med dig av dina erfarenheter och feedback om ramverket.", + "NotValidEmailAddress": "E-postfältet är inte en giltig e-postadress.", + "EmailAddressMaxLength": "Fältet Email måste vara en sträng med en maximal längd på 255.", + "EmailAddressRequired": "Fältet E-post är obligatoriskt.", + "PasswordLength": "Fältet Password måste vara en sträng med en maximal längd på 32.", + "PasswordRequired": "Fältet Password (Lösenord) är obligatoriskt.", + "AddressLength": "Fältet Address måste vara en sträng med en maximal längd på 255.", + "GenderRequired": "Fältet Gender (kön) är obligatoriskt.", + "LeaveUsReview": "Lämna oss en recension", + "ABPVideoCoursesDescription": "Lär dig grundläggande begrepp och användning av ABP Framework i denna videokursserie. Perfekt för nybörjare!", + "ABPVideoCoursesPageDescription": "Lär dig grunderna i ABP-ramverket genom videokurser som skapats av ABP-teamet. I den här videoserien får du lära dig de viktigaste ämnena i ABP-ramverket. Siffrorna i varje video är skrivna enligt inlärningsflödet.", + "DocumentationButtonTitle": "Dokumentation", + "ABPVideoCoursesTitle": "Viktiga videor", + "LovedDevelopers": "Älskad av tusentals utvecklare
runt om i världen", + "ABPIOPlatformPackages": "ABP-paket", + "AbpPackagesDescription": "Utöka din applikation med olika paket som finns i ABP och lägg till funktioner och egenskaper.", + "Cancel": "Avbryt", + "Continue": "Fortsätt", + "WhatIsTheABPIOPlatform": "Vad är ABP-plattformen?", + "AbpIoPlatformExplanation1": "ABP Platform är en omfattande infrastruktur för applikationsutveckling baserad på .NET- och ASP.NET Core-plattformarna. Den fyller gapet mellan den enkla ASP.NET Core-plattformen och de komplexa krav som ställs vid utveckling av programvara för moderna företag.", + "AbpIoPlatformExplanation2": "I kärnan tillhandahåller det ett open source och gratis ramverk som består av hundratals NuGet- och NPM-paket, som alla erbjuder olika funktioner. Kärnramverket är modulärt, tematiserbart och kompatibelt med mikrotjänster, vilket ger en komplett arkitektur och en robust infrastruktur. Detta gör att du kan fokusera på din affärskod snarare än att upprepa dig själv för varje nytt projekt. Det är baserat på bästa praxis för programvaruutveckling och integrerar populära verktyg som du redan känner till. Ramverket är helt gratis, open source och community-drivet.", + "AbpIoPlatformExplanation3": "ABP Platform erbjuder gratis och betalda licensalternativ. Beroende på din licenstyp får du tillgång till flera produktionsfärdiga startmallar, många förbyggda applikationsmoduler, UI-teman, CLI och GUI-verktyg, support och mycket mer.", + "WhatAreTheDifferencesBetweenFreeAndPaid": "Vilka är skillnaderna mellan de fria och kommersiella licenserna?", + "WhatAreTheDifferencesBetweenFreeAndPaidExplanation1": "ABP-licensen för fri (öppen källkod) omfattar kärnramverket, grundläggande startmallar, grundläggande moduler, grundläggande teman och community-utgåvan av ABP Studio.", + "WhatAreTheDifferencesBetweenFreeAndPaidExplanation2": "Kommersiella licenser erbjuder ytterligare funktioner, inklusive fler startmallar (t.ex. startmallen för mikrotjänster), professionella applikationsmoduler, ett fullfjädrat UI-tema, professionella utgåvor av ABP Studio, ABP Suite för kodgenerering, fler alternativ för mobila startapplikationer, premiumsupport och några andra fördelar.", + "WhatAreTheDifferencesBetweenFreeAndPaidExplanation3": "För mer information om skillnaderna mellan licenstyperna, se prissättningssidan.", + "HowDoIUseTheABPIOPlatform": "Hur använder jag ABP-plattformen?", + "HowDoIUseTheABPIOPlatformExplanation": "ABP Framework utökar .NET-plattformen, vilket innebär att allt du kan göra med en vanlig .NET-lösning redan är möjligt med ABP Framework. Det gör det enkelt att komma igång med en låg inlärningskurva. Se sidan Hur det fungerar för att lära dig hur du använder ABP Platform i praktiken.", + "SupportPolicyFaqExplanation1": "Vi tillhandahåller två typer av support: Community-support för användare med en icke-kommersiell licens och premium-support för kommersiella licensinnehavare. Community-support är tillgängligt på plattformar som GitHub och Stackoverflow, där supporten är begränsad. Å andra sidan tillhandahålls premiumsupport på den officiella ABP Support-webbplatsen. Här besvaras dina frågor direkt av ABP:s kärnutvecklare, vilket garanterar support av högre kvalitet.", + "SupportPolicyFaqExplanation2": "Information om Premium-support: Vi ger endast support för den aktiva och den föregående huvudversionen. Vi garanterar inte patchreleaser för den tredje och äldre huvudversionen. Till exempel, om den aktiva versionen är 7.0.0, kommer vi att släppa patchversioner för både 6.x.x och 7.x.x. Dessutom ger vi support endast för ABP Platform-relaterade problem. Detta innebär att inget stöd ges för tredjepartsapplikationer, molntjänster och andra perifera bibliotek som används av ABP-produkter.", + "SupportPolicyFaqExplanation3": "Vi åtar oss att använda kommersiellt rimliga ansträngningar för att ge våra kunder teknisk support under de officiella öppettiderna för \"Volosoft Bilisim A.S\". Vi förbinder oss dock inte till en SLA-svarstid (Service-Level Agreement), men vi kommer att försöka svara på de tekniska frågorna så snabbt som möjligt inom våra officiella arbetstider. Om inte ett särskilt avtal görs med kunden tillhandahålls support uteslutande på {1}. Dessutom är privat e-postsupport endast tillgänglig för innehavare av Enterprise-licens.", + "HowManyProducts": "Hur många olika produkter/lösningar kan jag bygga?", + "HowManyDevelopers": "Hur många utvecklare kan arbeta med lösningar som använder ABP Platform?", + "HowManyDevelopersExplanation": "ABP.IO-licenser utfärdas per utvecklare. Olika licenstyper har varierande gränser för utvecklare. Du kan dock lägga till fler utvecklare till vilken licenstyp som helst när du behöver. För information om licenstyper, utvecklargränser och kostnader för ytterligare utvecklare, se prissättningssidan.", + "ChangingLicenseTypeExplanation": "Du kan uppgradera till en högre licens genom att betala mellanskillnaden under din aktiva licensperiod. När du uppgraderar till en högre licensplan får du fördelarna med den nya planen, men licensuppgraderingen ändrar inte licensens utgångsdatum. Dessutom kan du lägga till nya utvecklarplatser till din befintliga licens. För detaljer om hur många utvecklare som kan arbeta med lösningar som använder ABP Platform, se 'Hur många utvecklare kan arbeta med lösningar som använder ABP Platform?' frågan.", + "DowngradeLicensePlanExplanation": "Du kan inte nedgradera din befintliga licensplan. För ytterligare information, kontakta oss på info@abp.io.", + "LicenseTransferExplanation": "Ja, det gör jag! När du köper en licens blir du licensinnehavare, vilket ger dig tillgång till sidan för organisationshantering. En organisation innehåller roller för ägare och utvecklare. Ägare kan hantera utvecklarplatser och tilldela utvecklare. Varje tilldelad utvecklare loggar in i systemet med kommandot ABP CLI och har behörigheter för utveckling och support.", + "LicenseExtendUpgradeDiff": "Vad är skillnaden mellan licensförnyelse och uppgradering?", + "LicenseExtendUpgradeDiffExplanation1": "Förnyelse: Genom att förnya din licens kommer du att fortsätta att få premiumsupport och uppdateringar, både större och mindre, för moduler, verktyg och teman. Dessutom kommer du att kunna skapa nya projekt och använda ABP Suite och ABP Studio, vilket kan påskynda din utvecklingsprocess avsevärt. När du förnyar din licens läggs ett år till licensens utgångsdatum.", + "LicenseExtendUpgradeDiffExplanation2": "Uppgradering: Genom att uppgradera din licens kommer du att befordras till en högre licensplan, vilket gör att du kan få ytterligare fördelar. Kolla in prissättningssidan för att se skillnaderna mellan licensplanerna. Å andra sidan ändras inte licensens utgångsdatum när du uppgraderar! Om du vill förlänga licensens slutdatum måste du förnya din licens.", + "WhatHappensWhenLicenseEndsExplanation1": "ABP-licenser är eviga licenser. När din licens löper ut kan du fortsätta att utveckla ditt projekt utan att behöva förnya den. Din licens levereras med en ettårig uppdaterings- och premiumsupportplan. För att få nya funktioner, prestandaförbättringar, buggfixar och fortsatt support, samt för att använda ABP Suite och ABP Studio, måste du förnya din licens. När din licens löper ut;", + "WhatHappensWhenLicenseEndsExplanation2": "Du kan inte skapa nya lösningar med hjälp av pro startup-mallarna, men du kan fortsätta att utveckla dina befintliga applikationer för alltid.", + "WhatHappensWhenLicenseEndsExplanation3": "Du kommer att få uppdateringar för programmoduler och teman i din MINOR-version (exklusive RC- eller Preview-versioner). Om du t.ex. använder v3.2.0 av en modul kan du fortfarande få uppdateringar för v3.2.x (v3.2.1, v3.2.5... etc.) av den modulen. Du kan dock inte få uppdateringar för nästa större eller mindre version (t.ex. v3.3.0, v3.3.3, 4.x.x... etc.). Om t.ex. den senaste versionen var v4.4.3 när din licens löpte ut och senare versioner 4.4.4 och 4.5.0 publicerades, skulle du ha tillgång till v4.4.x men inte till v4.5.x.", + "WhatHappensWhenLicenseEndsExplanation4": "Du kan inte installera nya programmoduler och teman som läggs till i din lösning efter att din licens har upphört att gälla.", + "WhatHappensWhenLicenseEndsExplanation5": "Du kan inte använda ABP Suite.", + "WhatHappensWhenLicenseEndsExplanation6": "Du kan inte använda ABP Studios proffsfunktioner (du kan använda ABP Studios Community Edition-funktioner)", + "WhatHappensWhenLicenseEndsExplanation7": "Du kommer inte längre att ha tillgång till premiumsupport.", + "WhatHappensWhenLicenseEndsExplanation8": "Du kan förnya (förlänga) din licens för att fortsätta att få dessa förmåner. Om du förnyar din licens inom {3} dagar efter att den har löpt ut kommer följande rabatter att tillämpas: Teamlicens {0}; Företagslicens {1}; Enterprise-licens {2}.", + "WhenShouldIRenewMyLicenseExplanation1": "Om du förnyar din licens inom 30 dagar efter att den har löpt ut kommer följande rabatter att tillämpas:", + "WhenShouldIRenewMyLicenseExplanation2": "{0} för Team Licenser;", + "WhenShouldIRenewMyLicenseExplanation3": "{0} för Business- och Enterprise-licenser;", + "WhenShouldIRenewMyLicenseExplanation4": "Om du förnyar din licens mer än {0} dagar efter utgångsdatumet kommer dock förnyelsepriset att vara detsamma som det ursprungliga inköpspriset för licensen, utan att några rabatter tillämpas på din förnyelse.", + "DoesTheSubscriptionRenewAutomaticallyExplanationAutoRenewal": "ABP Platform tillåter dig att automatiskt förnya din licens. Detta är en valfri gratis tjänst. Du kan växla den här funktionen när du köper en ny licens eller senare aktivera den från din organisationshanteringssida. Om du vill slå på eller av den automatiska förnyelsen, besök organisationens hanteringssida, gå till avsnittet \"Betalningsmetod\" och antingen markera eller avmarkera kryssrutan \"Automatisk förnyelse\". När du stänger av funktionen för automatisk förnyelse kommer det att vara ditt ansvar att förnya din licens manuellt.", + "TrialPlanExplanation": "Ja, för att starta din kostnadsfria testperiod, vänligen kontakta marketing@volosoft.com. Vi erbjuder också en 30-dagars pengarna-tillbaka-garanti för Team-licensen, utan några frågor! Du kan begära full återbetalning inom de första 30 dagarna efter att du köpt licensen. För Business- och Enterprise-licenser ger vi 60% återbetalning om det begärs inom 30 dagar efter köpet. Denna policy beror på att den fullständiga källkoden för alla moduler och teman ingår i Business- och Enterprise-licenserna.", + "BlazoriseLicenseExplanation": "Vi har ett avtal mellan Volosoft och Megabit, enligt vilket Blazorise-licensen buntas med ABP-plattformens kommersiella licenser. Därför behöver våra betalda användare inte köpa en ytterligare Blazorise-licens.", + "HowToUpgradeExplanation1": "När du skapar en ny applikation med hjälp av ABP:s startmallar används alla moduler och teman som NuGet- och NPM-paket. Den här inställningen gör det enkelt att uppgradera till nyare versioner av paketen.", + "HowToUpgradeExplanation2": "Förutom de vanliga NuGet/NPM-uppgraderingarna tillhandahåller ABP CLI ett update-kommando som automatiskt hittar och uppgraderar alla ABP-relaterade paket i din lösning.", + "HowToUpgradeExplanation3": "Utöver automatiska paketuppgraderingar publicerar vi också en migreringsguide om den nya versionen kräver några manuella steg för att uppgradera eller om den har några anteckningar som ska beaktas. Fortsätt följa ABP-bloggen för nyheter om nya utgåvor.", + "DatabaseSupportExplanation": "ABP är databasagnostisk och kan arbeta med alla databasleverantörer i sin natur. För en lista över för närvarande implementerade leverantörer, vänligen kolla in Data Access-dokumentet.", + "MicroserviceSupportExplanation1": "Ja, det stöder mikrotjänstarkitekturer.", + "MicroserviceSupportExplanation2": "Ett av de viktigaste målen med ABP-plattformen är att tillhandahålla en bekväm infrastruktur för att skapa mikrotjänstlösningar. Alla officiella ABP-applikationsmoduler är utformade för att stödja mikroservice-distributionsscenarier (med eget API och databas) genom att följa dokumentet Module Development Best Practices.", + "MicroserviceSupportExplanation3": "ABP Platforms kommersiella licenser innehåller också en microservice startup template som kan användas för att direkt skapa en produktionsfärdig baslösning för ditt microservice-system.", + "MicroserviceSupportExplanation4": "För icke-betalande användare tillhandahåller vi också en exempel på e-handelslösning som du kan kontrollera för att förstå hur du kan bygga din mikrotjänstlösning baserat på ABP-ramverket.", + "MicroserviceSupportExplanation5": "Ett mikrotjänstsystem är dock en lösning och varje lösning kommer att ha olika krav, inklusive nätverkstopologi, kommunikationsscenarier, autentiseringsmöjligheter, beslut om databashardning/partitionering, körtidskonfigurationer, systemintegrationer från tredje part och många fler aspekter. ABP-plattformen tillhandahåller infrastruktur för mikroservicescenarier, mikroservice-kompatibla moduler, exempel och dokumentation för att hjälpa till att bygga din egen lösning. Förvänta dig dock inte att direkt ladda ner din idealiska, anpassade lösning som är förbyggd åt dig. Du måste förstå den och sammanföra specifika delar baserat på dina krav.", + "WhereCanIDownloadSourceCodeExplanation": "Du kan ladda ner källkoden för alla ABP-moduler, Angular-paket och teman via ABP Suite, ABP Studio eller ABP CLI. Kolla in forumfrågan: Hur laddar man ner källkoden?", + "CommercialLicenses": "Kommersiella licenser", + "WhatIsDifferencePaidLicenses": "Vad är skillnaden mellan en personlig licens och andra typer av betalda licenser?", + "DifferencePaidLicenseExplanation1": "En icke-personlig betald licens är standardlicensalternativet för företag och kommersiella enheter. Licenser köps av företaget och kan användas av vem som helst inom organisationen.", + "DifferencePaidLicenseExplanation2": "Personal License är å andra sidan en typ av licens för privatpersoner/freelancers/oberoende utvecklare som köper licenser med egna medel och enbart för eget bruk. Den personliga licensen har vissa begränsningar. I den här planen kan det bara finnas 1 utvecklare som arbetar med ABP-projektet och inga ytterligare utvecklare får läggas till senare i projektet. Nedladdning av källkoden för PRO-moduler är inte tillåten i den personliga licensplanen. Det finns inte heller någon mikrotjänstmall och nivå (skiktad) arkitektur i denna plan. Personliga licensinnehavare kan endast använda följande moduler: Konto, Audit Log UI, GDPR, Identity, Language Management, LeptonX PRO, OpenIddict UI och SaaS. Personliga licensinnehavare kan inte använda följande moduler: Chatt, CMS-Kit PRO, Formulär, Identity Server User Interface, Lepton Theme, Text Template Management, File Management och Twilio SMS. Du kan komma åt den fullständiga modullistan på abp.io/modules.", + "ReadyToStart": "Är du redo att börja?", + "TransformYourIdeasIntoRealityWithOurProfessionalNETDevelopmentServices": "Förvandla dina idéer till verklighet med våra professionella .NET-utvecklingstjänster.", + "ReadyToUpgrade": "Är du redo att uppgradera?", + "SendServiceRequest": "Skicka en servicebegäran", + "Permission:CommunityPost": "Gemenskapens inlägg", + "Permission:Edit": "Redigera", + "Waiting": "Väntar på", + "Approved": "Godkänd", + "Rejected": "Avvisad", + "Wait": "Vänta", + "Approve": "Godkänna", + "Reject": "Avvisa", + "ReadPost": "Läs inlägget", + "Status": "Status", + "ContentSource": "Källa för innehåll", + "Details": "Detaljer", + "CreationTime": "Skapelsetid", + "Save": "Spara", + "SameUrlAlreadyExist": "Samma webbadress finns redan om du vill lägga till det här inlägget, bör du ändra webbadressen!", + "UrlIsNotValid": "Url är inte giltig.", + "UrlNotFound": "Url hittades inte.", + "UrlContentNotFound": "Url-innehållet hittades inte.", + "Summary": "Sammanfattning", + "MostRead": "Mest läst", + "Latest": "Senaste", + "ContributeAbpCommunity": "Bidra till ABP:s gemenskap", + "ContributionGuide": "Bidragsguide", + "BugReport": "Bugg-rapport", + "SeeAllPosts": "Se alla inlägg", + "WelcomeToABP": "Välkommen till ABP", + "FeatureRequest": "Begäran om funktion", + "CreatePostTitleInfo": "Titel på det inlägg som ska visas i inläggslistan.", + "CreatePostSummaryInfo": "En kort sammanfattning av inlägget som ska visas i inläggslistan. Maximal längd: {0}", + "CreatePostCoverInfo": "För att skapa ett effektivt inlägg, lägg till ett omslagsfoto. Ladda upp bilder med bildförhållandet 16:9 för bästa visning.
Maximal filstorlek: 1MB.", + "ThisExtensionIsNotAllowed": "Denna förlängning är inte tillåten.", + "TheFileIsTooLarge": "Filen är för stor.", + "GoToThePost": "Gå till inlägget", + "GoToTheVideo": "Gå till videon", + "Contribute": "Bidra", + "OverallProgress": "Övergripande framsteg", + "Done": "Klar", + "Open": "Öppna", + "Closed": "Stängt", + "RecentQuestionFrom": "Senaste frågan från {0}", + "Stackoverflow": "Stackoverflow", + "Votes": "röster", + "Answer": "Svar", + "views": "utsikt", + "Answered": "Besvarad", + "WaitingForYourAnswer": "Väntar på ditt svar", + "Asked": "aska", + "AllQuestions": "Alla frågor", + "NextVersion": "Nästa version", + "MilestoneErrorMessage": "Det gick inte att få aktuell milstolpsinformation från Github.", + "QuestionItemErrorMessage": "Kunde inte få de senaste frågeuppgifterna från Stackoverflow.", + "Oops": "Oops!", + "CreatePostSuccessMessage": "Inlägget har skickats in framgångsrikt. Det kommer att publiceras efter en granskning från webbplatsens administratör.", + "Browse": "Bläddra", + "CoverImage": "Omslagsbild", + "ShareYourExperiencesWithTheABPFramework": "Dela dina erfarenheter av ABP-ramverket!", + "UpdateUserWebSiteInfo": "Exempel: https://johndoe.com", + "UpdateUserTwitterInfo": "Exempel: johndoe", + "UpdateUserGithubInfo": "Exempel: johndoe", + "UpdateUserLinkedinInfo": "Exempel: https://www.linkedin.com/...", + "UpdateUserCompanyInfo": "Exempel: Volosoft", + "UpdateUserJobTitleInfo": "Exempel: Programvaruutvecklare", + "UserName": "Användarnamn", + "Company": "Företag", + "PersonalWebsite": "Personlig webbplats", + "RegistrationDate": "Registreringsdatum", + "Social": "Sociala", + "Biography": "Biografi", + "HasNoPublishedPostsYet": "har inga publicerade inlägg ännu", + "LatestGithubAnnouncements": "Senaste Github-tillkännagivanden", + "SeeAllAnnouncements": "Se alla tillkännagivanden", + "LatestBlogPost": "Senaste blogginlägget", + "Edit": "Redigera", + "ProfileImageChange": "Ändra profilbilden", + "BlogItemErrorMessage": "Kunde inte få den senaste informationen om blogginlägg från ABP.", + "PlannedReleaseDate": "Planerat utgivningsdatum", + "CommunityPostRequestErrorMessage": "Det gick inte att få den senaste postförfrågan från Github.", + "PostRequestFromGithubIssue": "Det finns inga postförfrågningar nu.", + "LatestPosts": "Senaste inlägg", + "ArticleRequests": "Begär ett innehåll", + "ArticleRequestsDescription": "Vill du se ett specifikt innehåll här? Du kan be communityn att skapa det!", + "LatestContentRequests": "Senaste förfrågningar om innehåll", + "AllPostRequests": "Se alla postförfrågningar", + "SubscribeToTheNewsletter": "Prenumerera på nyhetsbrevet", + "NewsletterEmailDefinition": "Få information om vad som händer i ABP, t.ex. nya utgåvor, fria källor, inlägg och mycket mer.", + "NoThanks": "Nej, tack.", + "MaybeLater": "Kanske senare", + "JoinOurPostNewsletter": "Anmäl dig till vårt nyhetsbrev", + "Marketing": "Marknadsföring", + "CommunityPrivacyPolicyConfirmation": "Jag godkänner de allmänna villkoren och Integritetspolicy.", + "PostRequestMessageTitle": "Öppna en fråga på GitHub för att begära ett inlägg / en handledning som du vill se på den här webbplatsen.", + "PostRequestMessageBody": "Här är en lista över de inlägg som efterfrågats av communityn. Vill du skriva ett efterfrågat inlägg? Klicka på önskemålet och delta i diskussionen.", + "Language": "Språk", + "CreatePostLanguageInfo": "Språket för inläggets innehåll.", + "VideoPost": "Videoinlägg", + "Post": "Post", + "Read": "Läs", + "CreateGithubPostUrlInfo": "Fullständig URL till Markdown-filen på GitHub (exempel).", + "CreateVideoContentUrlInfo": "Inläggets ursprungliga URL på Youtube.", + "CreateExternalPostUrlInfo": "Inläggets ursprungliga externa webbadress.", + "VideoContentForm": "Skicka in video på YouTube", + "GithubPostForm": "Skicka inlägg på GitHub", + "ExternalPostForm": "Skicka in ett externt innehåll", + "HowToPost": "Hur postar jag?", + "Posts": "Inlägg", + "VideoUrl": "Video webbadress", + "GithubPostUrl": "Url för GitHub-post", + "ExternalPostUrl": "Url för externt inlägg", + "ThankYouForContribution": "Tack för att du bidrar till ABP Community. Vi tar gärna emot artiklar och videohandledning om ABP Framework, .NET, ASP.NET Core och allmänna ämnen inom programvaruutveckling.", + "GithubPost": "GitHub-inlägg", + "GithubPostSubmitStepOne": "1. Skriv ett inlägg på ett offentligt GitHub-arkiv med Markdown-formatet. exempel", + "GithubPostSubmitStepTwo": "2. Skicka in din URL till inlägget med hjälp av formuläret.", + "GithubPostSubmitStepThree": "3. Ditt inlägg kommer att återges på denna webbplats.", + "YoutubeVideo": "Youtube-video", + "YoutubeVideoSubmitStepOne": "1. Publicera din video på YouTube.", + "YoutubeVideoSubmitStepTwo": "2. Skicka in video-URL:en med hjälp av formuläret.", + "YoutubeVideoSubmitStepThree": "3. Besökare kommer att kunna titta på ditt videoinnehåll direkt på denna webbplats.", + "ExternalContent": "Externt innehåll", + "ExternalContentSubmitStepOne": "1. Skapa ett innehåll på en publik plattform (Medium, din egen blogg eller var du vill).", + "ExternalContentSubmitStepTwo": "2. Skicka in URL:en för ditt innehåll med hjälp av formuläret.", + "ExternalContentSubmitStepThree": "3. Besökare omdirigeras till innehållet på den ursprungliga webbplatsen.", + "ChooseYourContentType": "Välj det sätt som du vill lägga till ditt innehåll på.", + "PostContentViaGithub": "Jag vill lägga till mitt inlägg med GitHub i enlighet med markdown-reglerna.", + "PostContentViaYoutube": "Jag vill dela mina videor som finns på Youtube här.", + "PostContentViaExternalSource": "Jag vill lägga till det innehåll jag publicerade på en annan plattform här.", + "GitHubUserNameValidationMessage": "Ditt Github-användarnamn kan inte innehålla blanksteg, kontrollera att ditt Github-användarnamn är korrekt.", + "PersonalSiteUrlValidationMessage": "URL:en till din personliga webbplats får inte innehålla blanksteg, kontrollera att URL:en till din personliga webbplats är korrekt.", + "TwitterUserNameValidationMessage": "Ditt Twitter-användarnamn får inte innehålla blanksteg, kontrollera att ditt Twitter-användarnamn är korrekt.", + "LinkedinUrlValidationMessage": "Din Linkedin-URL får inte innehålla blanksteg, kontrollera att din Linkedin-URL är korrekt.", + "NoPostsFound": "Inga inlägg hittades!", + "SearchInPosts": "Sök i inlägg...", + "MinimumSearchContent": "Du måste ange minst 3 tecken!", + "Volo.AbpIo.Domain:060001": "Källans URL(\"{PostUrl}\") är inte Github URL", + "Volo.AbpIo.Domain:060002": "Inläggets innehåll är inte tillgängligt från Github(\"{PostUrl}\")-resursen.", + "Volo.AbpIo.Domain:060003": "Inget innehåll i inlägget hittades!", + "JoinTheABPCommunity": "Gå med i ABP:s gemenskap", + "ABPCommunityTalks": "ABP:s samtal med allmänheten", + "LiveDemo": "Live Demo", + "GetLicense": "Skaffa licens", + "SourceCode": "Källkod", + "LeaveComment": "Lämna kommentar", + "ShowMore": "Visa mer", + "NoPublishedPostsYet": "Inga publicerade inlägg ännu.", + "FullURL": "Full URL", + "JobTitle": "Befattning", + "Prev": "Före", + "Previous": "Föregående", + "Next": "Nästa", + "Share": "Aktie", + "SortBy": "Sortera efter", + "NoPublishedEventsYet": "Inga publicerade händelser ännu.", + "SubscribeYoutubeChannel": "Prenumerera på Youtube-kanalen", + "Enum:EventType:0": "Samtal", + "MemberNotPublishedPostYet": "Denna medlem har inte publicerat några inlägg ännu.", + "MemberNotPublishedArticlesYet": "Denna medlem har inte publicerat några artiklar ännu.", + "MemberNotPublishedVideosYet": "Denna medlem har inte publicerat några videor ännu.", + "TimeAgo": "för {0} sedan", + "Discord_Page_JoinCommunityMessage": "Gå med i ABP Discord Community", + "Discord_Page_Announce": "Vi är glada att kunna presentera ABP Community Discord Server!", + "Discord_Page_Description_1": "ABP Community har vuxit sedan dag ett. Vi ville ta det till nästa steg genom att skapa en officiell ABP Discord-server så att ABP-communityn kan interagera med varandra med hjälp av underverk som snabbmeddelanden.", + "Discord_Page_Description_2": "ABP Community Discord Server är platsen där du kan visa upp dina skapelser med ABP Framework, dela de tips som fungerade för dig, få de senaste nyheterna och tillkännagivandena om ABP Framework, bara chatta med medlemmar i samhället för att utbyta idéer och ha kul!", + "Discord_Page_Description_3": "Denna ABP Community Discord Server är den officiella med ABP Core Team är närvarande på servern för att övervaka.", + "Discord_Page_JoinToServer": "Gå med i ABP Discord Server", + "Events_Page_MetaTitle": "ABP:s evenemang för allmänheten", + "Events_Page_MetaDescription": "Live-showerna, som leds av ABP-teamet, är avslappnade sessioner fulla av community-innehåll, demonstrationer, frågor och svar och diskussioner om vad som händer i ABP.", + "Events_Page_Title": "ABP Community Samtal", + "Members_Page_WritingFromUser": "Läs skrivning från {0} på ABP Community.", + "Post_Create_Page_MetaTitle": "Ny tjänst i gemenskapen", + "Post_Create_Page_MetaDescription": "Skicka in dina egna inlägg till ABP:s communityplattform och bidra med dina insikter och erfarenheter.", + "Post_Create_Page_CreateNewPost": "Skapa nytt inlägg", + "Post_Index_Page_MetaDescription": "ABP Communitys syfte är att skapa en bidragsmiljö för utvecklare som använder ABP-ramverket.", + "Layout_Title": "{0} | ABP Gemenskap", + "Layout_MetaDescription": "Ett nav för ABP Framework, .NET och programvaruutveckling. Få tillgång till artiklar, handledning, nyheter och bidra till ABP-communityn.", + "Index_Page_CommunityIntroduction": "Detta är ett nav för ABP Framework, .NET och programvaruutveckling. Du kan läsa artiklarna, titta på videohandledningarna, få information om ABP:s utvecklingsframsteg och ABP-relaterade evenemang, hjälpa andra utvecklare och dela med dig av din expertis till ABP-communityn.", + "TagsInArticle": "Taggar i artikel", + "IConsentToMedium": "Jag samtycker till publicering av detta inlägg på https://medium.com/volosoft.", + "SearchResultsFor": "Sökresultat för \"{0}\"", + "SeeMoreVideos": "Se fler videor", + "DiscordPageTitle": "Discord", + "DiscordPageDescription": "Gå med i ABP Community Discord för att chatta med andra medlemmar, diskutera idéer och få stöd om ABP.", + "ViewVideo": "Visa video", + "AbpCommunityTitleContent": "ABP Community - ABP-ramverk med öppen källkod", + "CommunitySlogan": "En unik community-plattform för ABP-älskare.", + "RaffleIsNotActive": "Lottdragningen är inte aktiv", + "YouAreAlreadyJoinedToThisRaffle": "Du har redan gått med i denna utlottning!", + "InvalidSubscriptionCode": "Ogiltig prenumerationskod", + "Raffle:{0}": "Lottdragning: {0}", + "Join": "Gå med", + "Leave": "Lämna", + "LoginToJoin": "Logga in för att gå med", + "ToEnd:": "För att avsluta:", + "ToStart:": "Det är en början:", + "days": "dagar", + "hrs": "timmar", + "min": "min", + "sec": "sek", + "Winners": "Vinnare", + "To{0}LuckyWinners": "till {0} lyckliga vinnare", + "ActiveRaffles": "Aktiva Rafflar.", + "UpcomingRaffles": "Kommande Rafflar", + "CompletedRaffles": "Färdigställda Rafflar", + "NoActiveRaffleTitle": "Ingen aktiv utlottning är tillgänglig för tillfället.", + "NoActiveRaffleDescription": "Ingen aktiv utlottning är tillgänglig för tillfället.", + "RaffleSubscriptionCodeInputMessage": "Denna utlottning kräver en registreringskod. Vänligen ange registreringskoden nedan:", + "RaffleSubscriptionCodeInputErrorMessage": "Registreringskoden är felaktig. Vänligen försök igen.", + "GoodJob!": "Bra jobbat!", + "RaffleJoinSuccessMessage": "Du är nu registrerad för utlottningen. Du kommer att informeras via e-post om du vinner priset!", + "RaffleLoginAndRegisterMessage": "Du måste logga in för att delta i utlottningen! Om du inte har registrerat dig ännu kan du skapa ett konto gratis nu.", + "Ok": "Ok", + "WaitingForTheDraw": "Vänta på dragningen!", + "AllAttendees": "Alla deltagare", + "SeeRaffleDetail": "Se Raffle detalj", + "SeeRaffle": "Se Raffle", + "ParticipationIsComplete": "Deltagandet är fullständigt.", + "ABPCoreDevelopmentTeam": "ABP Core utvecklingsteam", + "RegisterTheEvent": "Registrera evenemanget", + "GoToConferencePage": "Gå till konferenssidan", + "BuyTicket": "Buy Ticket", + "SeeEvent": "Se evenemang", + "PreviousEvents": "Tidigare evenemang", + "OtherLiveEvents": "Andra live-evenemang", + "SponsoredConferences": "Sponsrade konferenser", + "SponsoredConferencesDescription": "Vi är stolta över att stödja .NET-communities och evenemang för programvaruutvecklare.", + "UpcomingEvents": "Kommande evenemang", + "UpcomingCommunityTalkEventDescription": "Live-showerna, som leds av ABP-teamet, är avslappnade sessioner fulla av community-innehåll, demonstrationer, frågor och svar och diskussioner om vad som händer i ABP.", + "UpcomingConferenceEventDescription": "ABP .NET Conference är ett virtuellt evenemang för .NET-utvecklare där de kan träffas och lyssna på föredrag om .NET-världen, vanliga metoder för programvaruutveckling och ABP Framework med öppen källkod.", + "LastOneYear": "Senaste 1 året", + "AllTimes": "Alla tider", + "TopContributors": "De största bidragsgivarna", + "{0}Posts": "{0} Inlägg", + "LATESTPOSTS": "SENASTE INLÄGGNINGAR", + "NoContributorsFound": "Inga bidragsgivare hittades!", + "LatestPost": "Senaste inlägget", + "MEMBERSINCE{0}": "MEDLEM EFTERSOM {0}", + "CopyLink": "Kopiera länk", + "ShareOnTwitter": "Dela på Twitter", + "ShareOnLinkedIn": "Dela på LinkedIn", + "MoreFrom{0}": "Mer från {0}", + "SeeAllFrom{0}": "Se alla från {0}", + "MostWatched": "Mest bevakade", + "Articles({0})": "Artiklar ({0})", + "Videos({0})": "Videor ({0})", + "LatestArticles": "Senaste artiklar", + "RaffleHeader": "Hej ABP Community Member!", + "RafflesInfo": "
Detta är utlottningssidan som är avsedd att visa vår uppskattning för att du är en aktiv gemenskapsmedlem. Vi gör ABP Community Talks ABP Dotnet Conference, deltar eller sponsrar .NET-relaterade evenemang där vi ger bort några gåvor.

Du kan följa den här sidan för att se kommande lotterier, delta i dem eller se tidigare lotterier som vi dragit inklusive vinnarna.

Tack för att du är en aktiv medlem! Vi ses i de kommande lotterierna.", + "RafflesInfoTitle": "ABP Community Rafflar.", + "ToLuckyWinner": "till 1 lycklig vinnare", + "MarkdownSupported": "Stöd för Markdown.", + "VisitPage": "Besök sidan", + "VisitVideoCourseDescription": "Om du vill lära dig grunderna i ABP-ramverket kan du kolla in videokurserna ABP Essentials.", + "EditProfile": "Redigera profil", + "ConfirmEmailForPost": "För att kunna göra inlägg måste du bekräfta din e-post. Gå till account.abp.io/Account/Manage och verifiera din e-postadress under fliken Personal Info.", + "DailyPostCreateLimitation": "Du har nått den dagliga gränsen för skapande av inlägg. Du kan skapa ett nytt inlägg i {0}.", + "OrganizationManagement": "Organisation och ledning", + "OrganizationList": "Organisationslista", + "Volo.AbpIo.Commercial:010003": "Du är inte ägare till den här organisationen!", + "OrganizationNotFoundMessage": "Ingen organisation hittades!", + "DeveloperCount": "Tilldelade / totala utvecklare", + "QuestionCount": "Kvarvarande / totala frågor", + "Unlimited": "Obegränsad", + "Owners": "Ägare", + "Owner": "Ägare", + "AddMember": "Lägg till medlem", + "AddNewOwner": "Lägg till ny ägare", + "AddNewDeveloper": "Lägg till ny utvecklare", + "Developers": "Utvecklare", + "LicenseType": "Typ av licens", + "Manage": "Hantera", + "SetDefault": "Ställ in som standard", + "DefaultOrganization": "Standard", + "StartDate": "Startdatum", + "EndDate": "Slutdatum", + "Modules": "Moduler", + "LicenseExtendMessage": "Slutdatum för din licens förlängs till {0}.", + "LicenseUpgradeMessage": "Din licens har uppgraderats till {0}.", + "LicenseExtendAdnUpgradeMessage": "Din licens har förlängts till {0} och din licensplan har uppgraderats till {1}.", + "LicenseAddDeveloperMessage": "{0} utvecklare läggs till i din licens", + "Volo.AbpIo.Commercial:010004": "Kan inte hitta den angivna användaren! Användaren måste redan ha registrerats.", + "MyOrganizations": "Mina organisationer", + "ApiKey": "API-nyckel", + "UserNameNotFound": "Det finns ingen användare med användarnamnet {0}", + "SuccessfullyAddedToNewsletter": "Tack för att du prenumererar på vårt nyhetsbrev!", + "MyProfile": "Min profil", + "WouldLikeToReceiveMarketingMaterials": "Jag skulle vilja få marknadsföringsnyheter som produkterbjudanden och specialerbjudanden.", + "StartUsingYourLicenseNow": "Börja använda din licens nu!", + "WelcomePage": "Välkomstsida", + "UnsubscriptionExpireEmail": "Avregistrera dig från e-postmeddelanden med påminnelser om licensens utgångsdatum", + "UnsubscribeLicenseExpireEmailReminderMessage": "Denna e-postprenumeration innehåller endast påminnelser om utgångsdatum för din licens.", + "UnsubscribeFromLicenseExpireEmails": "Om du inte vill få e-postmeddelanden om utgångsdatum för din licens kan du avsluta prenumerationen när som helst.", + "Unsubscribe": "Avsluta prenumeration", + "NotOrganizationMember": "Du är inte medlem i någon organisation.", + "UnsubscribeLicenseExpirationEmailSuccessTitle": "Framgångsrikt avregistrerad", + "UnsubscribeLicenseExpirationEmailSuccessMessage": "Du kommer inte längre att få e-postmeddelanden med påminnelser om licensens utgångsdatum.", + "LiveDemoLead": "{1} med ditt ABP-konto, {3} till abp.io eller fyll i formuläret nedan för att skapa en live demo nu", + "ThereIsAlreadyAnAccountWithTheGivenEmailAddress": "Det finns redan ett konto med den angivna e-postadressen: {0}
Du bör logga in med ditt konto för att fortsätta.", + "GetLicence": "Skaffa licens", + "Startup": "Nystartad verksamhet", + "Templates": "Mallar", + "Developer": "Utvecklare", + "Tools": "Verktyg", + "Premium": "Premium", + "PremiumSupport": "Premium-support", + "PremiumForumSupport": "Premium Forum Support", + "UI": "UI", + "Themes": "Teman", + "JoinOurNewsletter": "Anmäl dig till vårt nyhetsbrev", + "Send": "Skicka", + "OpenSourceBaseFramework": "Basramverk med öppen källkod", + "MicroserviceCompatible": "Kompatibel med mikrotjänster", + "DistributedMessaging": "Distribuerad meddelandehantering", + "DynamicProxying": "Dynamisk proxyservering", + "BLOBStoring": "BLOB Storing", + "AdvancedLocalization": "Avancerad lokalisering", + "ManyMore": "Många fler", + "ExploreTheABPFramework": "Utforska ABP-ramverket", + "StartupTemplatesShortDescription": "Startup-mallar gör att du kan starta ditt projekt på några sekunder.", + "UIFrameworksOptions": "Alternativ för ramverk för användargränssnitt;", + "DatabaseProviderOptions": "Alternativ för databasleverantör;", + "PreBuiltApplicationModules": "Förbyggda applikationsmoduler", + "PreBuiltApplicationModulesShortDescription": "De vanligaste applikationskraven är redan utvecklade åt dig som återanvändbara moduler.", + "Account": "Konto", + "Blogging": "Bloggande", + "Identity": "Identitet", + "IdentityServer": "Identitetsserver", + "LanguageManagement": "Språkhantering", + "TextTemplateManagement": "Hantering av textmallar", + "See All Modules": "SeAllaModuler", + "ABPSuite": "ABP-svit", + "AbpSuiteShortDescription": "ABP Suite är ett komplementärt verktyg till ABP Platform.", + "AbpSuiteExplanation": "Det gör att du kan bygga webbsidor på bara några minuter. Det är ett .NET Core Global-verktyg som kan installeras från kommandoraden. Det kan skapa en ny ABP-lösning och generera CRUD-sidor från databasen till frontend.", + "LeptonTheme": "Lepton tema", + "ProfessionalModernUIThemes": "Professionella, moderna UI-teman", + "LeptonThemeExplanation": "Lepton tillhandahåller en rad Bootstrap-adminteman som fungerar som en solid grund för alla projekt som kräver en adminpanel.", + "DefaultTheme": "Standardtema", + "MaterialTheme": "Materialtema", + "Default2Theme": "Standard 2 Tema", + "DarkTheme": "Mörkt tema", + "DarkBlueTheme": "Mörkblått tema", + "LightTheme": "Ljus tema", + "ProudToWorkWith": "Stolt över att arbeta med", + "JoinOurConsumers": "Anslut dig till dem och bygg fantastiska produkter snabbt.", + "AdditionalServicesExplanation": "Behöver du ytterligare eller anpassade tjänster? Vi och våra partners kan tillhandahålla;", + "CustomProjectDevelopment": "Anpassad projektutveckling", + "CustomProjectDevelopmentExplanation": "Dedikerade utvecklare för dina anpassade projekt.", + "PortingExistingProjects": "Portning av befintliga projekt", + "PortingExistingProjectsExplanation": "Migrera dina äldre projekt till ABP-plattformen.", + "LiveSupport": "Support i realtid", + "LiveSupportExplanation": "Fjärrsupport i realtid när du behöver det.", + "Training": "Utbildning", + "TrainingExplanation": "Dedikerad utbildning för dina utvecklare.", + "OnBoarding": "Onboarding", + "OnBoardingExplanation": "Hjälp med att konfigurera dina utvecklings-, CI- och CD-miljöer.", + "PrioritizedTechnicalSupport": "Prioriterad teknisk support", + "PremiumSupportExplanation": "Förutom det stora samhällsstödet i ABP-ramverket svarar vårt supportteam på tekniska frågor och problem från de kommersiella användarna med hög prioritet.", + "SeeTheSupportOptions": "Kolla in supportalternativen", + "Contact": "Kontakt", + "TellUsWhatYouNeed": "Berätta för oss vad du behöver.", + "YourMessage": "Ditt meddelande", + "YourFullName": "Ditt fullständiga namn", + "FirstNameField": "Förnamn", + "LastNameField": "Efternamn", + "EmailField": "E-postadress", + "YourEmailAddress": "Din e-postadress", + "ValidEmailAddressIsRequired": "En giltig e-postadress krävs.", + "HowMayWeHelpYou": "Hur kan vi hjälpa dig?", + "SendMessage": "Skicka meddelande", + "Success": "Framgång", + "WeWillReplyYou": "Vi har mottagit ditt meddelande och kommer att kontakta dig inom kort.", + "CreateLiveDemo": "Skapa live-demo", + "CreateLiveDemoDescription": "När du har skickat in formuläret kommer du att få ett e-postmeddelande med din demolänk.", + "RegisterToTheNewsletter": "Anmäl dig till nyhetsbrevet för att få information om ABP.IO, inklusive nya releaser etc.", + "EnterYourEmailOrLogin": "Ange din e-postadress för att skapa din demo eller Logga in med ditt befintliga konto.", + "ApplicationTemplate": "Mall för ansökan", + "ApplicationTemplateExplanation": "Application startup template används för att skapa en ny webbapplikation.", + "EfCoreProvider": "Entity Framework (Stödjer SQL Server, MySQL, PostgreSQL, Oracle och andra)", + "AlreadyIncludedInTemplateModules": "Följande moduler är redan inkluderade och konfigurerade i den här mallen:", + "ApplicationTemplateArchitecture": "Den här applikationsmallen stöder också nivåindelad arkitektur där användargränssnittslagret, API-lagret och autentiseringstjänsten är fysiskt åtskilda.", + "SeeTheGuideOrGoToTheLiveDemo": "Kolla in utvecklarguiden för teknisk information om den här mallen eller gå till live-demonstrationen.", + "DeveloperGuide": "Guide för utvecklare", + "ModuleTemplate": "Mall för modul", + "ModuleTemplateExplanation1": "Vill du skapa en modul och återanvända den i olika applikationer? Den här startmallen förbereder allt för att börja skapa en återanvändbar applikationsmodul eller en mikrotjänst.", + "ModuleTemplateExplanation2": "

Du kan stödja enstaka eller flera användargränssnittsramverk, enstaka eller flera databasleverantörer för en enda modul. Startmallen är konfigurerad för att köra och testa din modul i en minimal applikation utöver infrastrukturen för enhets- och integrationstest.

Se utvecklarguiden för teknisk information om den här mallen.

", + "WithAllStyleOptions": "med alla stilalternativ", + "Demo": "Demo", + "SeeAllModules": "Se alla moduler", + "ABPCLIExplanation": "ABP CLI är ett kommandoradsverktyg för att utföra vanliga utvecklingsuppgifter för ABP-baserade lösningar.", + "ABPSuiteEasilyCURD": "ABP Suite är ett verktyg som gör att du enkelt kan skapa CRUD-sidor", + "WeAreHereToHelp": "Vi är här för att hjälpa", + "BrowseOrAskQuestion": "Du kan bläddra i våra hjälpämnen eller söka i vanliga frågor, eller så kan du ställa en fråga till oss genom att använda kontaktformuläret.", + "SearchQuestionPlaceholder": "Sök i vanliga frågor och svar", + "AbpCommercialMetaDescription": "En omfattande webbutvecklingsplattform på ABP Framework med förbyggda moduler, startmallar, verktyg för snabb utveckling, proffsiga UI-teman och premiumsupport.", + "WhatAreDifferencesThanABPFrameworkExplanation": "

ABP-ramverket är ett modulärt, tematiserbart, mikrotjänstkompatibelt ramverk för applikationsutveckling för ASP.NET Core. Det ger en komplett arkitektur och en stark infrastruktur så att du kan fokusera på din egen affärskod istället för att upprepa dig själv för varje nytt projekt. Det är baserat på bästa praxis för mjukvaruutveckling och populära verktyg som du redan känner till.

ABP-ramverket är helt gratis, öppen källkod och community-driven. Det ger också ett gratis tema och några förbyggda moduler (t.ex. identitetshantering och hyresgästhantering).

<", + "VisitTheFrameworkVSCommercialDocument": "Besök följande länk för mer information {1} ", + "Professional": "Professionell", + "UIThemes": "Teman för användargränssnitt", + "EnterpriseModules": "Enterprise ready, funktionsrika, förbyggda applikationsmoduler (t.ex. hantering av identitetsserver, SaaS-hantering, språkhantering)", + "ToolingToSupport": "Verktyg för att stödja din utvecklingsproduktivitet (t.ex. ABP Suite)", + "PremiumSupportLink": "Premium Support", + "ABPCommercialSolutionExplanation": "När du skapar en ny applikation får du en Visual Studio-lösning (en startmall) som baseras på dina önskemål. Den nedladdade lösningen har kommersiella moduler och teman som redan är installerade och konfigurerade åt dig. Du kan ta bort en förinstallerad modul eller lägga till en annan modul om du vill. Alla moduler och teman använder NuGet/NPM-paket som standard.", + "StartDevelopWithTutorials": "Den nedladdade lösningen är väl arkitekterad och dokumenterad. Du kan börja utveckla din egen företagskod baserad på den genom att följa handledningarna.", + "HowManyProductsExplanation": "Du kan skapa så många projekt du vill under din aktiva licensperiod; det finns ingen gräns! Efter att din licens har löpt ut kan du inte skapa nya projekt, men du kan fortsätta att utveckla de projekt du har laddat ner och distribuera dem till ett obegränsat antal servrar.", + "ChangingLicenseType": "Kan jag uppgradera min licenstyp senare?", + "LicenseExtendUpgradeDiffExplanation": "Förlängning: Genom att förlänga/förnya din licens kommer du att fortsätta att få premiumsupport och få större eller mindre uppdateringar för modulerna och teman. Dessutom kommer du att kunna fortsätta skapa nya projekt. Och du kommer fortfarande att kunna använda ABP Suite, vilket påskyndar din utveckling. När du förlänger din licens läggs 1 år till licensens utgångsdatum.
Uppgradering: Genom att uppgradera din licens kommer du att befordras till en högre licensplan, vilket gör att du kan få ytterligare fördelar. Kolla in jämförelsetabellen för licenser för att se skillnaderna mellan licensplanerna. När du uppgraderar ändras däremot inte licensens utgångsdatum! För att förlänga licensens slutdatum måste du förlänga din licens.", + "LicenseRenewalCost": "Vad är kostnaden för licensförnyelse efter 1 år?", + "LicenseRenewalCostExplanation": "Priset för förnyelse (förlängning) av standard Team License är ${0}, standard Business License är ${1} och standard Enterprise License är ${2}. Om du redan är kund, logga in på ditt konto för att granska den aktuella förnyelseprissättningen.", + "HowDoIRenewMyLicense": "Hur förnyar jag min licens?", + "HowDoIRenewMyLicenseExplanation": "Du kan förnya din licens genom att navigera till organisationshanteringssidan. För att dra nytta av våra rabatterade priser för tidig förnyelse, se till att du förnyar innan din licens löper ut. Oroa dig inte för att du inte vet när din möjlighet till tidig förnyelse stängs; du kommer att få 3 påminnelse-e-postmeddelanden innan din prenumeration löper ut. Vi skickar dem 30 dagar, 7 dagar och 1 dag före utgången.", + "IsSourceCodeIncluded": "Omfattar min licens källkoden för pro-modulerna och teman?", + "IsSourceCodeIncludedExplanation1": "Beror på vilken licenstyp du har köpt:", + "IsSourceCodeIncludedExplanation2": "Team: Din lösning använder moduler och teman som NuGet- och NPM-paket. Den inkluderar inte deras källkod. På så sätt kan du enkelt uppgradera dessa moduler och teman när en ny version är tillgänglig. Du kan dock inte få källkoden för dessa moduler och teman.", + "IsSourceCodeIncludedExplanation3": "Business/Enterprise: Utöver Team-licensen kan du ladda ner källkoden för alla moduler eller teman du behöver. Du kan till och med ta bort NuGet/NPM-paketreferenserna för en viss modul och lägga till dess källkod direkt i din lösning för att ändra den helt.", + "IsSourceCodeIncludedExplanation4": "

Att inkludera källkoden för en modul i din lösning ger dig maximal frihet att anpassa den modulen. Det kommer dock inte att vara möjligt att automatiskt uppgradera modulen när en ny version släpps.

Ingen av licenserna inkluderar källkoden för ABP Suite och ABP Studio, vilket är externa verktyg som genererar kod åt dig och hjälper din utveckling.

Kolla in sidan Planer och priser för andra skillnader mellan licenstyperna.

<", + "ChangingDevelopers": "Kan jag ändra de registrerade utvecklarna för min organisation i framtiden?", + "ChangingDevelopersExplanation": "Förutom att lägga till nya utvecklare till din licens kan du också ändra befintliga utvecklare (du kan ta bort en utvecklare och lägga till en ny på samma plats) utan någon extra kostnad.", + "WhatHappensWhenLicenseEnds": "Vad händer när min licensperiod upphör?", + "discountForYears": "{0}% rabatt för {1} år", + "WhenShouldIRenewMyLicense": "När ska jag förnya min licens?", + "WhenShouldIRenewMyLicenseExplanation": "Om du förnyar din licens inom {3} dagar efter att din licens har löpt ut, kommer följande rabatter att tillämpas: Teamlicens {0}; Företagslicens {1}; Enterprise-licens {2}. Men om du förnyar din licens efter {3} dagar efter licensens utgångsdatum, kommer förnyelsepriset att vara detsamma som licensens inköpspris och det kommer inte att finnas någon rabatt på din förnyelse.", + "TrialPlan": "Har du en testplan?", + "DoYouAcceptBankWireTransfer": "Accepterar ni banköverföringar?", + "DoYouAcceptBankWireTransferExplanation": "Ja, vi accepterar banköverföringar.
När du har skickat licensavgiften via banköverföring, skicka ditt kvitto och önskad licenstyp till accounting@volosoft.com.
Vår internationella bankkontoinformation:", + "HowToUpgrade": "Hur uppgraderar man befintliga applikationer när en ny version finns tillgänglig?", + "DatabaseSupport": "Vilka databassystem stöds?", + "UISupport": "Vilka UI-ramverk stöds?", + "Supported": "Stödd", + "UISupportExplanation": "ABP Framework är i sig självt agnostiskt och kan fungera med alla användargränssnitt. Startmallar, modul-användargränssnitt och teman implementerades dock inte för alla användargränssnittsramverk. Kolla in Gå igång-dokumentet för den uppdaterade listan över användargränssnittsalternativ.", + "MicroserviceSupport": "Stödjer den microservice-arkitekturen?", + "WhereCanIDownloadSourceCode": "Var kan jag ladda ner källkoden?", + "ComputerLimitation": "Hur många datorer kan en utvecklare logga in på när han utvecklar ABP?", + "ComputerLimitationExplanation": "Vi tillåter specifikt {0} datorer per individ/licensierad utvecklare. När det finns ett behov för en utvecklare att utveckla ABP-baserade produkter på en tredje maskin, ska ett e-postmeddelande skickas till license@abp.io där situationen förklaras, och vi kommer sedan att göra lämplig tilldelning i vårt system.", + "RefundPolicy": "Har ni någon återbetalningspolicy?", + "RefundPolicyExplanation": "Du kan begära återbetalning inom 30 dagar efter ditt licensköp. Licenstyperna Business och Enterprise har alternativ för nedladdning av källkod; därför ger vi en återbetalning på 60 % inom 30 dagar för Business- och Enterprise-licenser. Dessutom görs inga återbetalningar för förnyelser och andra licensköp.", + "HowCanIRefundVat": "Hur kan jag återbetala moms?", + "HowCanIRefundVatExplanation1": "Om du gjorde betalningen med 2Checkout kan du återbetala momsen via ditt 2Checkout-konto:", + "HowCanIRefundVatExplanation2": "Logga in på ditt 2Checkout-konto", + "HowCanIRefundVatExplanation3": "Leta upp rätt order och tryck på \"Återbetala försenad moms\" (ange ditt momsregistreringsnummer)", + "HowCanIGetMyInvoice": "Hur kan jag få min faktura?", + "HowCanIGetMyInvoiceExplanation": "Det finns 2 betalningsgateways för att köpa en licens: Iyzico och 2Checkout. Om du köper din licens via 2Checkout-gatewayen skickar den PDF-fakturan till din e-postadress; kolla in 2Checkout-fakturering. Om du köper via Iyzico-gatewayen, med en anpassad inköpslänk eller via en banköverföring, kommer vi att förbereda och skicka din faktura. Du kan begära eller ladda ner din faktura från sidan för organisationshantering. Innan du kontaktar oss för fakturan, kontrollera din organisationshanteringssida!", + "Forum": "Forum", + "PrivateTicket": "Privat biljett", + "PrivateTicketExplanation": "Enterprise License inkluderar även en privat support med e-post och ärendehanteringssystem.", + "AbpSuiteExplanation1": "Med ABP Suite kan du skapa webbsidor på bara några minuter. Det är ett globalt .NET Core-verktyg som kan installeras från kommandoraden.", + "AbpSuiteExplanation2": "Den kan skapa en ny ABP-lösning och generera CRUD-sidor från databasen till frontend. För teknisk översikt se dokumentet", + "FastEasy": "Snabbt och enkelt", + "AbpSuiteExplanation3": "Med ABP Suite kan du enkelt skapa CRUD-sidor. Du behöver bara definiera din entitet och dess egenskaper och låta resten gå till ABP Suite åt dig! ABP Suite genererar all nödvändig kod för din CRUD-sida på några sekunder. Den stöder Angular, MVC och Blazor användargränssnitt.", + "RichOptions": "Rika alternativ", + "AbpSuiteExplanation4": "ABP Suite stöder flera användargränssnittsalternativ som Razor Pages och Angular. Det stöder också flera databaser som MongoDB och alla databaser som stöds av EntityFramework Core (MS SQL Server, Oracle, MySql, PostgreSQL och andra leverantörer...).", + "AbpSuiteExplanation5": "Det som är bra är att du inte behöver oroa dig för dessa alternativ. ABP Suite förstår din projekttyp och genererar koden för ditt projekt och placerar den genererade koden på rätt plats i ditt projekt.", + "AbpSuiteExplanation6": "ABP Suite genererar källkoden för Entity, Repository, Application Service, Code First Migration, JavaScript/TypeScript och CSHTML/HTML och även nödvändiga gränssnitt. ABP Suite genererar också koden enligt Best Practices för programvaruutveckling, så du behöver inte oroa dig för den genererade kodens kvalitet.", + "AbpSuiteExplanation7": "Eftersom du har källkoden för byggstenarna i den genererade CRUD-sidan i rätt applikationslager kan du enkelt ändra källkoden och lägga till din egen anpassade affärslogik i den genererade koden.", + "CrossPlatform": "Plattformsoberoende", + "AbpSuiteExplanation8": "ABP Suite är byggt med .NET Core och är plattformsoberoende. Den körs som en webbapplikation på din lokala dator. Du kan köra den på Windows, Mac och Linux", + "OtherFeatures": "Andra funktioner", + "OtherFeatures1": "Uppdaterar enkelt NuGet- och NPM-paket på din lösning.", + "OtherFeatures2": "Återskapar redan genererade sidor från början.", + "OtherFeatures3": "Skapar nya lösningar", + "ThanksForCreatingProject": "Ditt projekt har skapats framgångsrikt!", + "HotToRunSolution": "Hur kör du din lösning?", + "HotToRunSolutionExplanation": "I dokumentet Kom igång kan du läsa om hur du konfigurerar och kör din lösning.", + "GettingStarted": "Komma igång", + "WebAppDevTutorialExplanation": "I handledningsdokumentet för utveckling av webbapplikationer finns ett exempel på utveckling steg för steg.", + "Document": "Dokument", + "UsingABPSuiteToCURD": "Använda ABP Suite för generering av CRUD-sidor och verktyg", + "SeeABPSuiteDocument": "Kolla in ABP Suite-dokumentet för att lära dig användningen av ABP Suite.", + "SeeModulesDocument": "Se sidan med moduler för en lista över alla PRO-moduler.", + "Pricing": "Prissättning", + "PricingExplanation": "Välj de egenskaper och funktioner som ditt företag behöver idag. Uppgradera enkelt när ditt företag växer.", + "Team": "Team", + "Business": "Företag", + "Enterprise": "Företag", + "Custom": "Anpassad", + "IncludedDeveloperLicenses": "Inkluderade utvecklarlicenser", + "CustomLicenceOrAdditionalServices": "Behöver du en anpassad licens eller ytterligare tjänster?", + "CustomOrVolumeLicense": "Anpassad licens eller volymlicens", + "LiveTrainingSupport": "Utbildning och support i realtid", + "AndMore": "och mer", + "AdditionalDeveloperLicense": "Ytterligare licens för utvecklare", + "ProjectCount": "Projekträkning", + "AllProModules": "Alla proffsmoduler", + "AllProThemes": "Alla proffsteman", + "AllProStartupTemplates": "Alla proffsmallar för nystartade företag", + "SourceCodeOfAllModules": "Källkod för alla moduler", + "SourceCodeOfAllThemes": "Källkod för alla teman", + "PerpetualLicense": "Evig licens", + "UnlimitedServerDeployment": "Obegränsad serverdistribution", + "YearUpgrade": "1 års uppgradering", + "YearPremiumForumSupport": "1 års premiumsupport för forum", + "ForumSupportIncidentCountYear": "Antal incidenter för forumstöd/år", + "PrivateTicketEmailSupport": "Privat support via biljett och e-post", + "BuyNow": "Köp nu", + "PayViaAmexCard": "Hur kan jag betala med mitt AMEX-kort?", + "PayViaAmexCardDescription": "Standardbetalningsgatewayen \"Iyzico\" kan neka vissa AMEX-kreditkort på grund av säkerhetsåtgärder. I detta fall kan du betala via den alternativa betalningsgatewayen \"2Checkout\".", + "InvalidReCaptchaErrorMessage": "Det uppstod ett fel vid verifiering av reCAPTCHA. Vänligen försök igen.", + "YourCompanyName": "Ditt företagsnamn", + "FirstName": "Förnamn", + "LastName": "Efternamn", + "YourFirstName": "Ditt förnamn", + "YourLastName": "Ditt efternamn", + "SpecialOffer": "Specialerbjudande", + "SpecialOfferMessage": "Skynda dig! Priserna gäller under en begränsad tid.", + "DiscountRequest": "Begäran om rabatt", + "DiscountRequestDescribeCustomerQuestion": "Vilken av följande beskrivningar stämmer in på dig?", + "DiscountRequestStudentEmailMessage": "E-postadressen måste innehålla \"edu\".", + "DiscountRequestDeveloperCount": "Hur många utvecklare är ni?", + "DiscountRequestDeveloperCountExceedMessage": "Vi erbjuder inte rabatterade licenser för företag som har fler än {0} utvecklare.", + "DiscountRequestOrganizationName": "Företagets/organisationens/skolans namn", + "Website": "Webbplats", + "GithubUsername": "Användarnamn för GitHub", + "PhoneNumber": "Telefonnummer", + "DescribeABPCommercialUsage": "Beskriv det projekt som du planerar att utveckla baserat på APB Commercial", + "DiscountRequestCertifyInformationMessage": "Jag intygar att alla uppgifter är sanningsenliga och korrekta.", + "DiscountRequestReceived": "Vi har mottagit din begäran om rabatt.", + "DiscountRequestStatusMessage": "Vi kommer att svara dig efter att ha kontrollerat den information du har lämnat.", + "MVCOrRazorPages": "MVC (Razor Pages)", + "Angular": "Angular", + "Blazor": "Blazor", + "New": "Nya", + "MongoDB": "MongoDB", + "EBookDDD": "E-bok Domänstyrd design", + "Page": "Sidan", + "DoYouAgreePrivacyPolicy": "Jag samtycker till Terms & Conditions och Privacy Policy.", + "VolosoftMarketingInformationMessage": "Jag vill ha information, tips och erbjudanden om Solutions for Businesses and Organizations och andra produkter och tjänster från Volosoft.", + "VolosoftSharingInformationMessage": "Jag vill att Volosoft ska dela min information med utvalda partners så att jag kan få relevant information om deras produkter och tjänster.", + "StartFree": "Starta gratis", + "FreeTrial": "Gratis provperiod", + "AcceptsMarketingCommunications": " Ja, jag vill gärna få ABP-relaterade marknadsföringsnyheter.", + "PurposeOfUsage": "Syfte med användningen", + "Choose": "- Välj -", + "CompanyOrganizationName": "Företagets/organisationens namn", + "StartTrial": "Starta min kostnadsfria testperiod", + "ContactUsQuestions": "Kontakta oss om du har några frågor", + "TrialActivatedWarning": "En användare har endast rätt till 1 gratis provperiod. Du har redan använt din provperiod.", + "ActivationRequirement": "Du är bara ett steg från att starta din provperiod.
Efter att ha kontrollerat din information aktiverar vi din licens. När din licens är aktiverad skickar vi ett e-postmeddelande till {0}. Oroa dig inte, den här processen kommer inte att ta lång tid!", + "SaveAndDownload": "Spara och ladda ner", + "CompanyNameValidationMessage": "Företagsnamnet är för långt!", + "AddressValidationMessage": "Adressen är för lång!", + "TaxNoValidationMessage": "TAX/VAT Nej är för långt!", + "NotesValidationMessage": "Anteckningsfältet är för långt!", + "CheckYourBillingInfo": "Du kan bara skapa din faktura en gång! Kontrollera din faktureringsinformation innan du skapar din faktura.", + "StartYourFreeTrial": "Starta din kostnadsfria testperiod", + "TrialLicenseModelInvalidErrorMessage": "Ett av följande fält är ogiltigt: Landsnamn, Företagsstorlek, Bransch eller Syfte med användning.", + "Trial": "Rättegång", + "Purchased": "Köpte", + "PurchaseNow": "Köp nu", + "PurchaseTrialLicenseMessage": "Din licens utgångsdatum är {0}.
Om du vill fortsätta använda de projekt som du skapade under din kostnadsfria testperiod måste du ändra licensnycklarna i dina appsettings.secrets.json-filer. Här är din licensnyckel:", + "TrialLicenseExpireMessage": "Du använder en testlicens och din testlicens upphör att gälla den {0}.", + "TryForFree": "Prova gratis", + "TrialLicenseExpiredInfo": "Din testlicensperiod har löpt ut!", + "DowngradeLicensePlan": "Kan jag nedgradera till en lägre licensplan i framtiden?", + "LicenseTransfer": "Kan en licens överföras från en utvecklare till en annan?", + "UserOwnerDescription": "Organisationens \"ägare\" är administratör för detta konto. Han/hon hanterar organisationen genom att köpa licenser och tilldela utvecklare. En \"ägare\" kan inte skriva kod i ABP-projekten, kan inte ladda ner ABP-exempelprojekten och kan inte ställa frågor på supportwebbplatsen. Om du vill göra allt detta måste du också lägga till dig själv som utvecklare.", + "UserDeveloperDescription": "\"Utvecklarna\" kan skriva kod i ABP-projekten, ladda ner ABP:s exempelprojekt och ställa frågor på supportwebbplatsen. Å andra sidan kan \"utvecklarna\" inte hantera den här organisationen.", + "RemoveCurrentUserFromOrganizationWarningMessage": "Du tar bort dig själv från din egen organisation. Du kommer inte längre att kunna hantera den här organisationen, bekräftar du det?", + "RenewExistingOrganizationOrCreateNewOneMessage": "Du kan förnya licensen för din organisation (er) genom att klicka på nedanstående \"Förläng nu\"-knapp (ar) och därmed kan du förlänga licensens utgångsdatum med 1 år. Om du fortsätter till kassan kommer du att ha en ny organisation. Vill du fortsätta med en ny organisation?", + "PurchaseTrialOrganizationOrCreateNewOneMessage": "Du har en testlicens. För att köpa din testlicens klickar du på knappen Köp nu. Om du fortsätter till kassan kommer du att ha en ny organisation. Vill du fortsätta med en ny organisation?", + "ExtendNow": "Förlänga / Förnya", + "CreateNewOrganization": "Skapa en ny organisation", + "RenewLicenseEarly": "Om jag förnyar min licens tidigt, kommer jag att få hela året?", + "RenewLicenseEarylExplanation": "När du förnyar din licens före licensens utgångsdatum kommer 1 år att läggas till licensens utgångsdatum. Om din licens t.ex. löper ut den {0}-06-06 och du förnyar den den {0}-01-01, kommer din nya licens att löpa ut den {1}-06-06.", + "OpenSourceWebApplication": "Webbapplikation med öppen källkod", + "CompleteWebDevelopment": "En komplett webbutveckling", + "ABPFrameworkDescription": "ABP Framework är en komplett infrastruktur för att skapa moderna webbapplikationer genom att följa de bästa metoderna för mjukvaruutveckling och konventioner.", + "CommunityDescription": "Dela dina erfarenheter av ABP-ramverket!", + "PreBuiltApplication": "Förbyggd applikation", + "DatabaseProviders": "Databasleverantörer", + "UIFrameworks": "Ramverk för användargränssnitt", + "UsefulLinks": "Användbara länkar", + "Platform": "Plattform", + "MicroserviceArchitectureExplanation": "Det här är en komplett lösningsarkitektur som består av flera applikationer, API-gateways, mikrotjänster och databaser för att bygga en skalbar mikrotjänstlösning med den senaste tekniken.", + "BusinessLogic": "Affärslogik", + "DataAccessLayer": "Dataåtkomstskikt", + "Monolith": "Monolit", + "ModularArchitectureExplanation": "Denna startup-mall ger en skiktad, modulär och DDD-baserad lösningsarkitektur för att bygga en ren och underhållbar kodbas.", + "Bs5Compatible": "Professionellt tema som är kompatibelt med Bootstrap 5, perfekt för din administratörswebbplats.", + "LeptonXTheme": "LeptonX tema", + "LeptonXDark": "LeptonX Mörk", + "LeptonXLight": "LeptonX Ljus", + "LeptonXSemiDark": "LeptonX Halvmörk", + "BuiltOnBs5Library": "Byggd på Bootstrap 5-biblioteket", + "FullyCompatibleWithBs5": "100% kompatibel med Bootstrap 5 HTML-struktur och CSS-klasser", + "ResponsiveAndMobileCompatible": "Responsiv, mobilkompatibel, RTL-stöd", + "ProvidesStylesForDatatables": "Tillhandahåller stilar för datatabeller", + "MultipleLayoutOptions": "Flera layoutalternativ", + "EasilyInstallAndUpgrade": "Enkel installation och uppgradering", + "SupportForum": "Forum för support", + "TrustedBy": "Betrodda av", + "OurPricing": "Vår prissättning", + "Plans": "Planer", + "NameSurname": "Namn Efternamn", + "LicenceType": "Typ av licens", + "LicenseDiscountWarning": "DENNA RABATTSIDA ANVÄNDER STANDARD RABATTKOD OCH FÖR VOLOSOFT UTVECKLARE. INKÖPSLÄNKAR NEDAN FUNGERAR INTE.", + "DiscountedLicenseExplanation": "Dessa licenspriser är avsedda för små nystartade företag, enskilda utvecklare, studenter, ideella organisationer och projekt!", + "General": "Allmänt", + "Development": "Utveckling", + "Payment": "Betalning", + "WatchExplainerVideo": "Låt oss träffas! Titta på förklarande video", + "LightDarkAndSemiDarkThemes": "Ljus, mörk och halvmörk", + "LeptonXThemeExplanation": "Lepton Theme kan ändra ditt tema enligt dina systeminställningar.", + "PRO": "PRO", + "YourAccountDetails": "Dina kontouppgifter", + "OrganizationName": "Organisationens namn", + "AddDevelopers": "Lägg till utvecklare", + "StartDevelopment": "Starta utveckling", + "CreateAndRunApplicationUsingStartupTemplate": "Lär dig hur du skapar och kör en ny webbapplikation med hjälp av ABP:s startmall.", + "CommunityDescription2": "abp.io/community är en plats där människor kan dela ABP-relaterade artiklar. Sök efter artiklar, handledningar, kodprover, fallstudier och träffa människor som är i samma spår som du.", + "UseABPSuiteExplanation": "Använd ABP Suite för att ladda ner källkoden för modulerna och temana.", + "ManageModulesWithSuite": "Du kan också hantera dina ABP-moduler med Suite.", + "LearnHowToInstallSuite": "Lär dig hur du installerar och använder ABP Suite.", + "SeeLess": "Se mindre", + "LayeredSolutionStructure": "Struktur med flera lager av lösningar", + "LayeredSolutionStructureExplanation": "Lösningen är uppbyggd i lager baserat på principer och mönster för domändriven design för att isolera affärslogiken från infrastruktur och integrationer och för att maximera underhåll och återanvändning av koden. ABP Framework tillhandahåller redan abstraktioner, basklasser och guider för att verkligen implementera DDD för din applikation.", + "MultipleUIOptionsExplanation": "Vi älskar olika sätt att skapa användargränssnittet. Den här startup-lösningen ger tre olika alternativ för användargränssnitt för din affärsapplikation.", + "MultipleDatabaseOptions": "Flera databasalternativ", + "MultipleDatabaseOptionsExplanation": "Du har två alternativ för databasleverantörer (förutom att du kan använda båda i en och samma applikation). Använd Entity Framework Core för att arbeta med alla relationsdatabaser och använd eventuellt Dapper när du behöver skriva lågnivåfrågor för bättre prestanda. MongoDB är ett annat alternativ om du behöver använda en dokumentbaserad NoSQL-databas. Även om dessa leverantörer är välintegrerade, abstraherade och förkonfigurerade kan du faktiskt interagera med alla databassystem som du kan använda med .NET.", + "ModularArchitectureExplanation2": "Modularitet är en förstklassig medborgare i ABP-plattformen. Alla applikationsfunktionaliteter är uppdelade i välisolerade valfria moduler. Startlösningen levereras redan med de grundläggande ABP-modulerna förinstallerade. Du kan också skapa dina egna moduler för att bygga ett modulärt system för din egen applikation.", + "MultiTenancyForSaasBusiness": "Multi-tenancy för ditt SaaS-företag", + "MultiTenancyForSaasBusinessExplanation": "Lösningen har konfigurerats fullt ut för att stödja system med flera hyresgäster. Det gör det möjligt för hyresgästerna att dela eller ha sina egna databaser med on-the-fly databasskapande och migrationssystem.", + "MicroserviceStartupSolution": "Microservice Startup-lösning", + "MicroserviceArchitectureExplanation2": "Du kan skaffa det till ditt nästa microservice-system för att dra nytta av den förbyggda baslösningen och destillerade erfarenheten.", + "PreIntegratedTools": "Förintegrerad med populära verktyg", + "PreIntegratedToolsExplanation": "Lösningen är redan integrerad i branschens standardverktyg och -tekniker, medan du alltid kan ändra dem och integrera dem med dina favoritverktyg.", + "SingleSignOnAuthenticationServer": "Server för autentisering med enkel inloggning", + "SingleSignOnAuthenticationServerExplanation": "Lösningen har en autentiseringsserverapplikation som används av de andra applikationerna som en server för enkel inloggning med API-åtkomsthanteringsfunktioner. Den är baserad på implementeringen Openiddict.", + "WebAppsWithGateways": "2 webbappar med 2 API-gateways", + "WebAppsWithGatewaysExplanation": "Lösningen innehåller två webbapplikationer som var och en har en dedikerad API-gateway (BFF - Backend For Frontend-mönster).", + "BackOfficeApplication": "Back Office-applikation", + "BackOfficeApplicationExplanation": "Den faktiska webbapplikationen för ditt system, med flera alternativ för användargränssnitt. Du kan skapa alla typer av affärsapplikationer.", + "LandingWebsite": "Landningswebbplats", + "LandingWebsiteExplanation": "En generisk landningsplats/publik webbplats som kan användas för flera ändamål, t.ex. för att presentera ditt företag, sälja dina produkter osv.", + "ABPFrameworkEBook": "Mastering ABP Framework e-bok", + "MasteringAbpFrameworkEBookDescription": "Ingår i din kommersiella licens", + "LicenseTypeNotCorrect": "Licenstypen är inte korrekt!", + "Trainings": "Utbildningar", + "ChooseTrainingPlaceholder": "Välj utbildning...", + "DoYouNeedTrainings": "Behöver du någon av dessa utbildningar?", + "DoYouNeedTraining": "Behöver du {0} utbildning?", + "GetInTouchUs": "Ta kontakt med oss", + "ForMoreInformationClickHere": "För mer information, klicka här.", + "ForMoreInformationClickHereByClass": "För mer information, klicka här.", + "IsGetOnboardingTraining": "Vill du få utbildning i onboarding och utveckling av webbapplikationer?", + "OnboardingWebApplicationDevelopmentTrainingMessage": "För att schemalägga din utbildningskalender, vänligen kontakta {0} efter att du har skapat organisationen", + "CustomPurchaseMessage": "För nästa steg, klicka på {0} för att kontakta oss.", + "Note": "Notera", + "AdditionalNote": "Ytterligare anmärkning", + "OnboardingTrainingFaqTitle": "Har du en ABP onboarding-utbildning?", + "OnboardingTrainingFaqExplanation": "Ja, vi har ABP Training Services som hjälper dig att snabbt komma igång med ditt ABP-projekt. Du kommer att lära dig om ABP från en medlem i ABP:s kärnteam och du kommer att få de färdigheter som krävs för att starta ditt ABP-projekt. I onboarding-utbildningen förklarar vi hur du ställer in din utvecklingsmiljö, installerar de nödvändiga verktygen och skapar en fullt fungerande CRUD-sida. Utbildningen kommer att vara live och Zoom-applikationen kommer att användas, men vi är öppna för att använda andra online-mötesplattformar. Språket för utbildningen kommer att vara engelska. Du kan också ställa dina frågor om ABP under sessionerna. En lämplig tid och ett lämpligt datum kommer att planeras för båda parter. För ytterligare information besök utbildningssidan.", + "AddBasket": "Lägg till i korgen", + "SendTrainingRequest": "Skicka förfrågan om utbildning", + "OnlyEnglishVersionOfThisDocumentIsTheRecentAndValid": "* Den engelska versionen av detta dokument är den mest aktuella och den engelska versionen ska ha företräde i alla tvister.", + "Pricing_Page_Title": "Prissättning", + "Pricing_Page_Description": "Se de olika licensplanerna för ABP Platform, inklusive kostnadsfria nivåer. Om standardplanerna inte passar, be om en offert. Glöm inte att vi har en 30-dagars pengarna-tillbaka-garanti!", + "Pricing_Page_HurryUp": "Skynda dig!", + "Pricing_Page_BuyLicense": "Köp en licens till 2021 års priser fram till den 16 januari!", + "Pricing_Page_ValidForExistingCustomers": "Gäller även för befintliga kunder och licensförnyelser.", + "Pricing_Page_Hint1": "I licenspriset ingår ett visst antal platser för utvecklare. Om du har fler utvecklare kan du alltid köpa ytterligare platser.", + "Pricing_Page_Hint2": "Du kan köpa fler utvecklarlicenser nu eller i framtiden. Licenserna är platsbaserade, vilket innebär att du kan överföra en plats från en utvecklare till en annan.", + "Pricing_Page_Hint3": "Du kan utveckla ett obegränsat antal olika produkter med din licens.", + "Pricing_Page_Hint4": "ABP Suite är ett verktyg som hjälper dig att utveckla och förbättra din produktivitet. Det stöder generering av CRUD-sidor och skapande av nya projekt.", + "Pricing_Page_Hint5": "Du kan använda alla de förbyggda modulerna i dina applikationer.", + "Pricing_Page_Hint6": "Du kan använda alla de förbyggda temana i dina applikationer.", + "Pricing_Page_Hint7": "En startmall är en Visual Studio-lösning som hjälper dig att komma igång med ditt projekt. Alla grundläggande moduler läggs till och förkonfigureras åt dig.", + "Pricing_Page_Hint8": "Mastering ABP Framework e-bok förklarar hur man implementerar .NET-lösningar med bästa praxis. Den säljs på Amazon.com, och du kan ladda ner boken gratis med din licens.", + "Pricing_Page_Hint9": "Du kan ladda ner källkoden för alla moduler. Du kanske vill lägga till källkoden i din lösning för att göra radikala ändringar eller bara behålla den för dig själv av säkerhetsskäl.", + "Pricing_Page_Hint10": "Licenserna är livstidsbaserade. Det innebär att du kan fortsätta att utveckla din applikation för alltid. Tillgång till den senaste versionen och support beviljas inom licensperioden (1 år om du inte förnyar den).", + "Pricing_Page_Hint11": "Inga begränsningar för driftsättning! Du kan distribuera till så många servrar som du vill, inklusive molntjänster eller lokalt.", + "Pricing_Page_Hint12": "Du kan uppdatera moduler, teman och verktyg till den senaste versionen inom din aktiva licensperiod. När din licens löper ut måste du förnya den för att fortsätta att få uppdateringar för buggfixar, nya funktioner och förbättringar.", + "Pricing_Page_Hint13": "Du kan få premiumsupport i ett år (du kan förnya din licens för att förlänga den).", + "Pricing_Page_Hint14": "Team- och Business-licenser har en gräns för antal incidenter/frågor. Om du köper ytterligare utvecklarlicenser ökar incidentgränsen med {0} (för Team-licensen) eller {1} (för Business-licensen) per utvecklare.", + "Pricing_Page_Hint15": "Endast Enterprise License inkluderar privat support. Du kan skicka ett e-postmeddelande direkt till ABP-teamet eller ställa frågor på abp.io/support/questions med ett privat biljettalternativ. De privata ärendena är inte synliga för allmänheten.", + "Pricing_Page_Hint16": "Du kan ladda ner källkoden för alla ABP-teman. Du kanske vill lägga till källkoden i din lösning för att göra radikala ändringar eller bara behålla den för dig själv av säkerhetsskäl.", + "Pricing_Page_Testimonial_1": "ABP Commercial gjorde det möjligt för SC Ventures att leverera en bankklassad SaaS-plattform med silodatabas med flera hyresgäster på 9 månader för att stödja leverantörskedjans kundfordringar / leverantörsskulder för finansiering av fakturor med betydande värde från flera integrerade ankare. ABP:s modularitet gjorde det möjligt för teamet att leverera på rekordtid, klara alla VAPT och driftsätta den containeriserade mikrotjänststacken via fullständig CI/CD och pipelines till produktion.", + "Pricing_Page_Testimonial_2": "Vi ser värdet av att använda ABP Commercial för att minska omkostnaderna för kundanpassade utvecklingsprojekt. Teamet kan förena kodmönstret i olika projektströmmar. Vi ser mer potential i ramverket för att vi ska kunna bygga nya funktioner snabbare än tidigare. Vi litar på att vi ständigt kommer att se värdet av att utnyttja ABP Commercial.", + "Pricing_Page_Testimonial_3": "Vi älskar ABP. Vi behöver inte skriva allt från grunden. Vi utgår från out-of-the-box-funktioner och fokuserar bara på det vi verkligen behöver skriva. Dessutom är ABP välarkitekterat och koden är av hög kvalitet med färre buggar. Om vi hade varit tvungna att skriva allt vi behövde på egen hand hade vi kanske fått lägga ner flera år. Ytterligare en sak vi gillar är att den nya versionen, problemfixningen eller förbättringen kommer ut väldigt snart, varannan vecka. Vi väntar inte för länge.", + "Pricing_Page_Testimonial_4": "ABP Commercial är en fantastisk produkt som jag skulle rekommendera. Kommersiella produkter till marknaden för våra kunder i en enda konfigurerbar plattform. Den starthjälp som ramverket och verktygen ger alla team är värd varenda krona. ABP Commercial var det som passade bäst för våra behov.", + "Pricing_Page_Testimonial_5": "ABP Framework är inte bara ett ramverk, utan också en guide för projektutveckling/hantering, eftersom det ger utbildning i DDD, GenericRepository, DI, Microservice och Modularity. Även om du inte kommer att använda själva ramverket kan du utveckla dig själv med abp.io/docs som är väl och professionellt förberedda (OpenIddict, Redis, Quartz etc.). Eftersom många saker är förbyggda förkortar det projektutvecklingstiden avsevärt (t.ex. inloggningssida, undantagshantering, datafiltrering, seeding, revisionsloggning, lokalisering, automatisk API-kontroller etc.) Som ett exempel från vår applikation har jag använt Local Event Bus för lagerstyrning. Så jag kan hantera orderrörelser genom att skriva lagerhanterare. Det är underbart att inte förlora tid för CreationTime, CreatorId. De fylls i automatiskt.", + "Pricing_Page_Testimonial_6": "ABP Framework är ett bra ramverk men det tar tid att förstå de olika lager, klasser och bibliotek som det använder (särskilt ABP). Jag tillbringade mycket tid med att läsa kodbasen, men ABP Commercial sparade oss tid när vi skapade projektspecialitetsenheterna (AR) och förvaret kopplat till var och en av dem. Jag gillade också det tillvägagångssätt som används i ABP är mycket moget; vi vet är baserat på DDD och monolit.", + "Pricing_Page_Testimonial_7": "Som ett nystartat företag måste vi iterera snabbt och spendera minimal tid på standardfunktioner och icke-kärnfunktioner.\nVåra ingenjörer sträcker sig från mycket erfarna till juniora ingenjörer, och vi behövde en gemensam förståelse och ett sätt att dela teknisk och domänkunskap, ABP gjorde det möjligt för oss att göra detta tack vare deras fantastiska guider och dokumentation.\nDet finns saker som vi inte har behövt oroa oss för eftersom de fungerar direkt med ABP.\nABP hjälpte oss att effektivisera snabb prototyping och utveckling, mindre än 4 veckor från funktionsstart till produktion. Med alla premiumfunktioner som ingår i licensen har ABP gett oss \"Startup in a Box\" på Software Engineering-sidan.", + "Pricing_Page_Testimonial_8": "Jag skulle rekommendera ABP commercial till alla som vill utöka utbudet av produkter som är tillgängliga för sina kunder. Det är fantastiskt när man behöver använda en distribuerad företagsmiljö (Angular, WPF, Win&Linux). Förutom deras produkter älskar vi deras support, som gör vårt jobb snabbare och enklare. Vi vet redan att vi har hittat en bra partner för framtiden som kommer att stödja oss i att expandera vår verksamhet.", + "Pricing_Page_Testimonial_9": "Vi är ett företag med 2 anställda som har varit verksamma i över 20 år.\nNär det gäller vår erfarenhet av ABP Commercial kontaktades vi av en kund som ville att vi skulle utveckla en ny personalapplikation i en modern miljö för att ersätta deras 25 år gamla Access-applikation. Vi bestämde oss för att gå över från en desktoplösning till en webbaserad lösning.\n\nVid den tidpunkten hade vi mycket liten kunskap om webbapplikationer och .NET, men vi snubblade över ABP Commercial, och med hjälp av ABP Framework, teknisk dokumentation och ABP Suite kunde vi inte bara utveckla applikationen enligt kundens specifikationer utan också framgångsrikt arbeta i en .NET-miljö inom ett år.", + "AbpBookDownloadArea_ClaimYourEBook": "Gör anspråk på din Mastering ABP Framework e-bok", + "AddMemberModal_Warning_1": "Om det användarnamn som du försöker lägga till inte finns i systemet, be din teammedlem att registrera sig på {0} och dela användarnamnet på hans/hennes konto med dig.", + "MyOrganizations_Detail_WelcomeMessage": "Välkommen till din organisation, {0}", + "MyOrganizations_Detail_OrganizationManagement": "Organisation Förvaltning", + "OrganizationDisplayName": "Organisationens visningsnamn", + "MyOrganizations_Detail_EditDisplayName": "Redigera visningsnamn", + "MyOrganizations_Detail_UpgradeYourLicense": "Uppgradera din licens", + "MyOrganizations_Detail_LicenseStartAndExpiryDate": "Licensens startdatum - utgångsdatum", + "MyOrganizations_Detail_OwnerRightInfo": "Du använder {0} av din {1} ägares rättigheter.", + "MyOrganizations_Detail_CopyApiKey": "Kopiera nyckeln", + "MyOrganizations_Detail_ApiKeyDescription": "API-nyckeln är token för PRO-paket som finns på {1}.", + "MyOrganizations_Detail_YourPrivateNugetSource": "Din privata NuGet-källa är {0}", + "MyOrganizations_Detail_PrivateNugetSourceWarning": "Detta läggs automatiskt till som en feed till din NuGet.Config i din ABP-lösning. Dela inte din privata nyckel med obehöriga användare!", + "MyOrganizations_Detail_DeveloperSeatInfo": "Du använder {0} av dina {1} platser för utvecklare.", + "NeedMoreSeatsForYourTeam": "Behöver du fler platser för ditt team?", + "MyOrganizations_Detail_PricePerYear": "{0} / per år", + "MyOrganizations_Detail_PurchaseDeveloperSeats": "Köpa platser för utvecklare", + "Invoices": "Fakturor", + "RequestInvoice": "Begär faktura", + "OrderNumber": "Beställningsnummer", + "Products": "Produkter", + "TotalPrice": "Totalt pris", + "ThereIsNoInvoice": "Det finns ingen faktura", + "MyOrganizations_Detail_PaymentProviderInfo": "Om du har köpt din licens via {0} gateway skickas PDF-fakturan till din e-postadress, se {0} fakturering.", + "MyOrganizations_Detail_PayUInfo": "Om du har köpt via Iyzico-gatewayen klickar du på knappen \"Begär faktura\" och fyller i faktureringsinformationen.", + "MyOrganizations_Detail_ConclusionInfo": "Din fakturabegäran kommer att behandlas inom {0} arbetsdagar.", + "ExtendYourLicense": "Förläng din {0} licens", + "PurchaseLicense": "Köp {0} licens", + "DownloadInvoiceModal_DownloadInvoice": "Ladda ner faktura", + "DownloadInvoiceModal_SaveInformationOnlyOnce": "Du kan bara spara din faktureringsinformation en gång.", + "InvoiceModal_EnterCompanyName": "Ange ditt juridiska företagsnamn...", + "InvoiceModal_EnterCompanyAddress": "Ange din juridiska företagsadress...", + "InvoiceModal_EnterTaxNumber": "Ange ditt TAX/VAT-nummer om det finns tillgängligt...", + "RequestInvoiceModal_EnterNotes": "Ytterligare information för din faktura... Denna anteckning kommer att skrivas i anteckningsavsnittet på fakturan.", + "PrePayment_PayWithIyzico": "Du kommer att betala med Iyzico", + "ContinueToCheckout": "Fortsätt till kassan", + "PrePayment_IyzicoRedirectionInfo": "Du kommer att omdirigeras till Iyzico Payment Gateway för att slutföra ditt köp på ett säkert sätt.", + "PrePayment_IyzicoAcceptVisaAndMasterCard": "Iyzico tar emot Visa och MasterCard.", + "Purchase": "Köp", + "AcceptTermsAndConditions": "Jag har läst, förstått och accepterar integritetspolicy, villkor och EULA.", + "AcceptTermsAndConditionsWarningMessage": "Vänligen acceptera integritetspolicyn och villkoren", + "SelectGatewayToContinue": "Vänligen välj en Gateway för att fortsätta!", + "GatewaySelection_SelectGateway": "Välj en betalningsportal", + "GatewaySelection_RedirectionMessage": "Därefter kommer du att omdirigeras till den valda betalningsgatewayens webbplats för transaktionen.", + "PaymentSucceed_PaymentSuccessMessage": "Betalning framgångsrik", + "PaymentSucceed_ThanksForPurchase": "Tack för ditt köp!", + "PaymentSucceed_CreateYourOrganization": "Skapa din organisation", + "PaymentSucceed_AddMeAsDeveloper": "Jag är också utvecklare, lägg till mig som utvecklare i min organisation.", + "PaymentSucceed_CreateOrganization": "Skapa organisation", + "PaymentSucceed_OrganizationDescription": "En organisation består av utvecklare och ägare. Utvecklarna är användare som skriver kod i ABP-projektet och som kommer att dra nytta av webbplatsen {1}. Ägarna är användare som tilldelar utvecklarplatser och hanterar licensiering.", + "PaymentSucceed_ViewOrganization": "Klicka här för att se organisationen", + "Purchase_TotalAnnualPrice": "TOTALT (årsavgift)", + "Purchase_TrainingPrice": "Pris för utbildning", + "Purchase_OnboardingTraining": "Live-utbildning i onboarding och utveckling av webbapplikationer", + "TotalDeveloperPrice": "Totalt pris för utvecklare", + "Purchase_PricePerDeveloper": "{0} per utvecklare", + "Purchase_IncludedDeveloperInfo": "{0} {1} ingår.", + "Purchase_LicenseExtraDeveloperPurchaseMessage": "I {0} licens ingår {1} utvecklare. Du kan lägga till ytterligare utvecklare.", + "StartupTemplates_Page_Title": "ABP Startup Mallar", + "StartupTemplates_Page_Description": "Kickstarta ditt nya projekt med ABP:s appmallar! Lämna alla infrastrukturaspekter till ABP och gör det du gör bäst; fokusera på ditt arbete...", + "MicroserviceStartupSolutionForDotnet": "Microservice Startup-lösning för .NET", + "MonolithSolutionForDotnet": "Monolitisk (modulär) lösning för .NET", + "TrainingDetailsHeaderInfo_TrainingHour": "{0} timmar", + "Trainings_Content": "Utbildningens innehåll", + "Trial_Page_StartYourFreeTrial": "Starta din gratis provperiod.", + "TrialLicenseFeatures": "Du kommer att kunna dra nytta av alla ABP:s kommersiella funktioner", + "TrialPeriodDays": "Du kommer att ha en {0} dagars teamlicens", + "TrialForumSupportIncident": "Du kommer att ha {0} forum support incidenter", + "Contact_Page_Title": "Kontakta oss", + "Contact_Page_Description": "Kontakta oss om du har frågor om licenser, tilläggstjänster, förfrågningar eller feedback om ABP. Vi är här för att hjälpa dig!", + "Demo_Page_Title": "Skapa en demo", + "Demo_Page_Description": "Skapa en gratis demo för att se ett exempel på en ansökan som skapats med hjälp av ABP-startmallen. Upprepa inte dig själv för vanliga applikationskrav.", + "Discounted_Page_Title": "Rabatterad prissättning", + "Discounted_Page_Description": "Välj de funktioner och den funktionalitet som ditt företag behöver redan idag. Köp en kommersiell licens och skapa obegränsat med projekt", + "Faq_Page_Title": "Vanliga frågor och svar", + "Faq_Page_Description": "Hitta svar på vanliga frågor om ABP Framework i vår FAQ-sektion, som täcker olika ämnen och frågor.", + "Faq_Page_SwiftCode": "SWIFT-kod", + "Faq_Page_BankName": "Bankens namn", + "Faq_Page_AccountName": "Kontots namn", + "Faq_Page_AccountNumber": "Kontonummer", + "Faq_Page_Currency": "Valuta", + "Faq_Page_VatNumber": "Momsregistreringsnummer", + "Faq_Page_OtherCurrenciesInfo": "För andra valutor, se alla konton", + "ProjectCreatedSuccess_Page_Title": "Ditt projekt skapat", + "ProjectCreatedSuccess_Page_Description": "Ditt ABP-projekt har skapats framgångsrikt!", + "Suite_Page_Title": "ABP-svit", + "Suite_Page_Description": "Möt ABP Suite, ett verktyg för snabb applikationsutveckling som ökar produktiviteten och effektiviteten. Skapa CRUD-sidor på några minuter!", + "Themes_Page_Title": "ABP Teman", + "Themes_Page_Description": "Utseendet är viktigt! Vi presenterar LeptonX Theme, ett modernt, anpassningsbart och flexibelt tema som skapar en unik användarupplevelse.", + "Tools_Page_Title": "ABP Verktyg", + "Tools_Page_Description": "Utforska de verktygslådor som ABP tillhandahåller och som ökar utvecklingsproduktiviteten och effektiviserar din utveckling.", + "DeveloperPrice": "Pris för utvecklare", + "AdditionalDeveloperPaymentInfoSection_AdditionalDevelopers": "{0} utvecklare", + "LicenseRemainingDays": "i {0} dagar", + "ExtendPaymentInfoSection_Description": "Genom att förlänga/förnya din licens kommer du att fortsätta att få premium support. Du kommer också att kunna få större eller mindre uppdateringar för moduler och teman. Du kommer att kunna fortsätta skapa nya projekt. Och du kommer fortfarande att kunna använda ABP Suite som påskyndar din utveckling.", + "LicenseRenewalPrice": "Pris för förnyelse av licens", + "LicensePrice": "Licenspris", + "TrialLicensePaymentInfoSection_Description": "Köp licens: Genom att köpa en licens kommer du att fortsätta att få premium support. Du kommer också att kunna få större eller mindre uppdateringar för moduler och teman. Du kommer att kunna fortsätta skapa nya projekt. Och du kommer fortfarande att kunna använda ABP Suite som påskyndar din utveckling.
Se jämförelsetabellen för licenser för att kontrollera skillnaderna mellan licenstyperna.", + "SelectTargetLicense": "Välj mållicens", + "UpgradePaymentInfoSection_ExtendMyLicenseForOneYear": "Ja, förlänga min licens utgångsdatum med 1 år.", + "UpgradePaymentInfoSection_WantToExtendLicense": "Vill du förlänga din licens med ytterligare 1 år?", + "UpgradePaymentInfoSection_UpgradingWillNotExtendLicense": "Uppgradering kommer inte att förlänga licensens utgångsdatum!", + "UpgradePaymentInfoSection_LicenseUpgradeDescription": "Genom att uppgradera din licens kommer du att bli befordrad till en högre licenstyp, vilket gör att du kan få ytterligare fördelar. Se jämförelsetabellen för licenser för att kontrollera skillnaderna mellan licenstyperna.", + "Welcome_Page_UseSameCredentialForCommercialWebsites": "Använd samma autentiseringsuppgifter för både abp.io och abp.io/support/questions.", + "WatchCrudPagesVideo": "Titta på videon \"Skapa CRUD-sidor med ABP Suite\"!", + "WatchGeneratingFromDatabaseVideo": "Titta på videon \"ABP Suite: Generera CRUD-sidor från befintliga databastabeller\" Video!", + "WatchTakeCloserLookVideo": "Titta på videon \"Ta en närmare titt på kodgenerering: ABP Suite\" Video!", + "ConfirmedEmailAddressRequiredToStartTrial": "Du måste ha en bekräftad e-postadress för att kunna starta en testlicens.", + "EmailVerificationMailNotSent": "E-postverifiering mail kunde inte skickas.", + "GetConfirmationEmail": "Klicka här för att få ett verifieringsmejl om du inte har fått det tidigare.", + "WhichLicenseTypeYouAreInterestedIn": "Vilken licenstyp är du intresserad av?", + "DontTakeOurWordForIt": "Ta inte vårt ord för det...", + "BlazoriseLicense": "Måste vi köpa en Blazorise-licens?", + "ExtendPaymentInfoSection_DeveloperPrice": "{0}x Ytterligare utvecklare", + "ExtendPaymentInfoSection_DiscountRate": "Rabatt {0}%.", + "TotalNetPrice": "Totalt nettopris", + "EFCore": "Entity Framework Core", + "All": "Alla", + "Mvc": "MVC", + "DataBaseProvider": "Dataleverantör", + "UIFramework": "Ramverk för användargränssnitt", + "LeptonXThemeForDashboard": "LeptonX Theme för din Admin Dashboard av", + "AbpPlatform": "ABP-plattform", + "YouDeserveGoodUXUI": "Du förtjänar ett bra UI och ett bättre UX. LeptonX Theme by ABP är här för att tjäna det.", + "ViewLiveDemo": "Visa demo för live-tema", + "GetLeptonX": "Skaffa LeptonX nu", + "SeeLeptonXDocumentation": "Se LeptonX dokumentation", + "SeeLeptonDocumentation": "Se Lepton Dokumentation", + "SimplifiedMenu": "Förenklad meny", + "SimplifiedMenuDescription": "Du kan enkelt hitta den sida du letar efter genom att filtrera i menyn", + "YourFavoritePages": "Dina favoritsidor inom räckhåll", + "YourFavoritePagesDescription": "Lägg enkelt till eller ta bort sidan från favoriter genom att klicka på stjärnikonen i det övre högra hörnet av sidan.", + "BreadCrumbs": "Breadcrumb för sömlös växling", + "BreadCrumbsDescription": "Med Breadcrumb kan du växla till sidorna på samma nivå med ett klick, även när vänstermenyn är stängd, och det fungerar på surfplattor och mobiler!", + "YourMenu": "Din meny som du vill ha den", + "YourMenuDescription": "Anpassa de direktklickbara ikonerna och rullgardinsmenyerna i användarmenyn som du vill. Användarmenyn är helt anpassningsbar efter dina behov", + "RtlSupport": "RTL-stöd för ditt språk", + "RtlSupportDescription": "LeptonX Theme stöder RTL för ditt språk. Språkalternativen finns i inställningsmenyn så att du kan ändra språk.", + "YourColors": "Dina färger i gränssnittet för din adminpanel", + "YourColorsDescription": "LeptonX Theme fungerar enligt dina systeminställningar och har alternativ för dashboard light theme, dashboard dark theme och dashboard semi-dark theme.", + "ArrangeContentWidth": "Ordna enkelt bredden på ditt innehåll", + "ArrangeContentWidthDescription": "Ändra enkelt bredden på din innehållsyta.", + "LeptonXCompatibleWith": "LeptonX Theme är kompatibelt med", + "MobileResponsiveTemplate": "Mobil responsiv mall", + "MobileResponsiveTemplateDescription1": "Få tillgång till LeptonX adminpanel från vilken enhet du vill.", + "MobileResponsiveTemplateDescription2": "Den är utformad för att du enkelt ska kunna använda den i alla dina enheter. Den är responsiv på mobila enheter och surfplattor.", + "TopMenuLayoutOption": "Alternativ för layout av toppmeny", + "TopMenuLayoutOptionDescription1": "Om du vill konfigurera din webbplats med samma adminpanel är det möjligt att göra det med LeptonX Theme!", + "TopMenuLayoutOptionDescription2": "Prova bara LeptonX toppmenylayout för att få det att hända!", + "EasilyCustomizable": "Lätt att anpassa till ditt varumärkes färger", + "EasilyCustomizableDescription1": "Du kan anpassa LeptonX-temat med bara några få SCSS-variabler. Ingen åsidosättning, ingen extra CSS-belastning!", + "EasilyCustomizableDescription2": "Med LeptonX kan du ordna din adminpanel precis som du vill.", + "IndependentLayout": "Oberoende layout och innehållsyta", + "IndependentLayoutDescription1": "LeptonX:s layoutinfrastruktur utformades helt separat från innehållet.", + "IndependentLayoutDescription2": "Detta innebär att du fritt kan utforma ditt projekt med en annan innehållsstruktur än Bootstrap om du vill.", + "MostUsedLibraries": "De mest använda biblioteken integrerade med LeptonX", + "MostUsedLibrariesDescription1": "LeptonX innehåller dina mest använda bibliotek. Det gör att du enkelt kan använda bibliotek som ApexCharts, DataTables, DropZone, FullCalender, JSTree, Select2 och Toastr.", + "MostUsedLibrariesDescription2": "LeptonX stöder också MVC Angular och Blazor-specifika bibliotek.", + "CreateAndCustomize": "Skapa och anpassa de sidor du behöver på några sekunder med LeptonX anpassade sidor", + "CreateAndCustomizeDescription": "Genom att använda LeptonX Theme får du också tillgång till många färdiga HTML-sidor. Dessa inkluderar många sidor som inloggningssida, blogg, FAQ, prenumerationslista, faktura, prissättning och filhantering.", + "LeptonThemeForAdmin": "Lepton Theme för din adminpanel genom att", + "LeptonThemeForAdminDescription": "Lepton Theme är fortfarande tillgängligt och kommer att underhållas. Om du vill byta till LeptonX Theme som Lepton Theme-användare kan du se dokumentationen för att lära dig hur du gör.", + "LeptonCompatibleWith": "Lepton Theme är kompatibelt med", + "BlackFridayDiscount": "Black Friday-rabatt", + "UpgradePaymentInfoSection_DeveloperPrice": "{0} för {1} ytterligare utvecklare", + "Upgrade": "Uppgradering", + "Renewal": "Förnyelse", + "UpgradePaymentInfoSection_LicensePrice": "{0} licens", + "UpgradePaymentInfoSection_LicenseRenewalPrice": "Förnyelse av licens", + "Total": "Totalt", + "SupportPolicyFaqTitle": "Vilken är er supportpolicy?", + "TotalDevelopers": "Totalt {0} utvecklare", + "CustomPurchaseExplanation": "Skräddarsydd för dina specifika behov", + "WhereDidYouHearAboutUs": "Var har du hört talas om oss?", + "Twitter": "Twitter", + "Facebook": "Facebook", + "Youtube": "YouTube", + "Google": "Google", + "Github": "GitHub", + "Friend": " Från en vän", + "Other": "Övriga", + "WhereDidYouHearAboutUs_explain": "Ange ...", + "DeletingMemberWarningMessage": "\"{0}\" kommer att tas bort från listan över utvecklare. Om du vill kan du tilldela denna tomma plats till en annan utvecklare senare.", + "AdditionalInfo": "Om antalet platser för utvecklare överstiger dina krav kan du minska dem. Du kan skicka e-post till info@abp.io för att ta bort några av dina utvecklarplatser. Om du rensar bort oanvända utvecklarplatser minskar kostnaden för licensförnyelse. Om du vill kan du återköpa ytterligare utvecklarplatser inom din aktiva licensperiod. Observera att eftersom det finns {0} utvecklare i det här licenspaketet kan du inte minska detta antal.", + "LinkExpiredErrorMessage": "Länken du försöker komma åt har gått ut.", + "ExpirationDate": "Utgångsdatum", + "SpringCampaignDiscount": "Rabatt på vårkampanjen", + "WhyUseAbpIoPlatform": "Varför ska jag använda ABP Platform istället för att skapa en ny lösning från grunden?", + "WhyUseAbpIoPlatformFaqExplanation": "Se den sidan för en detaljerad förklaring av varför användning av ABP Platform har en betydande fördel jämfört med att göra allt själv.", + "EulaPageTitle": "Licensavtal för slutanvändare (EULA)", + "PrivacyPolicyPageTitle": "Integritetspolicy - Cookiepolicy", + "TermsConditionsPageTitle": "Villkor och anvisningar", + "TrainingsPageTitle": "Utbildningspaket", + "ModulesPageTitle": "ABP-moduler", + "ModulesPageDescription": "Utöka och anpassa din applikation med ABP:s modulära arkitektur, som ger flexibilitet och skalbarhet.", + "Volo.AbpIo.Commercial:040001": "API-åtkomstnyckeln är felaktig.", + "GetLepton": "Skaffa Lepton nu", + "MyOrganizations_Detail_LicenseStartDate": "Startdatum", + "MyOrganizations_Detail_LicenseExpiryDate": "Utgångsdatum", + "BlazoriseSupport": "Hur får jag Blazorise-licensnyckeln och support från Blazorise-teamet?", + "BlazoriseSupportExplanation": "Följ stegen nedan för att få support från Blazorise-teamet och få din Blazorise-licensnyckel:", + "BlazoriseSupportExplanation1": "Registrera dig för ett nytt konto på blazorise.com/support/register med samma e-postadress som ditt abp.io-konto. Lämna posten \"Licensnyckel\" tom. Det måste vara samma e-postadress som ditt e-postkonto på abp.io.", + "BlazoriseSupportExplanation2": "Verifiera din e-postadress genom att kolla din e-postlåda. Kontrollera din skräppostlåda om du inte ser ett e-postmeddelande i din inkorg!", + "BlazoriseSupportExplanation3": "Logga in på Blazorise supportwebbplats på blazorise.com/support/login.", + "BlazoriseSupportExplanation4": "Om du har en aktiv ABP Commercial License kommer du också att ha en Blazorise PRO-licens. Du kan få din Blazorise-licensnyckel på blazorise.com/support/user/manage/license.", + "BlazoriseSupportExplanation5": "Du kan ställa dina frågor på supportwebbplatsen och generera en produkttoken för din applikation.", + "AbpLiveTrainingPackages": "ABP Live utbildningspaket", + "Releases": "Utgåvor", + "ReleasesDescription": "Den här sidan innehåller detaljerad information om varje release. Du kan se alla stängda pull requests för en specifik release. För övergripande milstolpsutvecklingar kan du kolla in sidan med kortfattade releaseanteckningar.", + "ReleaseDate": "Utgivningsdatum", + "Labels": "Etiketter", + "PreRelease": "Förhandsrelease", + "AllTypes": "Alla typer", + "Enhancement": "Förbättring", + "Bug": "Insekt", + "Feature": "Funktion", + "AllUIs": "Alla användargränssnitt", + "MVC": "MVC", + "BlazorServer": "Blazor Server", + "MAUI": "MAUI", + "HowItWorks_Page_Title": "Hur fungerar det?", + "HowItWorks_Page_Description": "Förstå hur ABP Framework fungerar med detaljerad dokumentation, inklusive guider och bästa praxis.", + "HowItWorks_Description1": "ABP utökar .NET-plattformen. Så allt du kan göra med en vanlig .NET-lösning är redan möjligt med ABP. Det gör det enkelt att komma igång med en låg inlärningskurva.", + "HowItWorks_Description2": "När du väl har börjat lära dig och använda ABP-funktionerna kommer det att bli mycket roligare än någonsin att utveckla din programvara.", + "HowItWorks_Description3": "Den här sidan förklarar i princip hur du använder ABP Platform som .NET-utvecklare.", + "CreateANewSolution_Description1": "Allt börjar med att skapa en ny ABP-integrerad .NET-lösning.", + "StartWithStartupTemplates": "Starta en av de förbyggda mallarna för startup-lösningar", + "SimpleMonolithApplicationTemplate": "Enkel mall för monolitisk applikation", + "LayeredApplicationTemplate": "Modulär monolitisk applikationsmall", + "MicroserviceSolutionTemplate": "Mall för mikroservicelösning", + "CreateEmptySolutionAndUseAbp": "Eller skapa en ny tom .NET-lösning och installera ABP NuGet & NPM packages själv.", + "CreatingSolutionWithMultipleOptions": "Det finns flera alternativ för användargränssnitt och databas när du skapar en ny lösning.", + "UIFrameworkOptions": "Alternativ för användargränssnitt", + "DotnetSolutionWithoutDependency": "Nu har du en vanlig .NET-lösning i din lokala dator som inte är beroende av någon molnplattform eller extern tjänst.", + "CheckTheDocumentForDetails": "Du kan kontrollera {1} dokumentet för detaljer.", + "UIAndDatabaseIndependent": "ABP kan fungera med alla användargränssnitt och alla databasleverantörer som stöds av .NET.\n Dessa användargränssnitt och databasleverantörer är dock förintegrerade och väldokumenterade.", + "InstallAbpModules": "Installera ABP-moduler", + "DevelopYourSolution": "Utveckla din lösning", + "DeployAnywhere": "Distribuera var som helst", + "InstallAbpModule_Description1": "ABP är ett modulärt ramverk för applikationsutveckling. Mallarna för startup-lösningar levereras redan med de viktigaste modulerna installerade.\n Men det finns fler applikationsmoduler som du kanske vill använda i din lösning.", + "InstallAbpModule_Description2": "Varje modul består av ett fåtal NuGet- och NPM-paket och har ett installationsdokument. ABP Studio gör det mesta av arbetet automatiskt, sedan konfigurerar eller finjusterar du modulen manuellt baserat på dess dokumentation.", + "DevelopYourSolution_Description1": "ABP:s infrastruktur gör att du kan fokusera på din egen affärskod genom att automatisera det repetitiva arbetet och tillhandahålla förbyggd infrastruktur och applikationsfunktioner.", + "DevelopYourSolution_Description2": "I följande kodblock kan du se hur ABP sömlöst integreras i din kod och automatiserar de repetitiva uppgifterna åt dig.", + "DevelopYourSolution_Description3": "Även i detta kortkodsblock gör ABP en hel del saker åt dig.", + "DevelopYourSolution_Description4": "Det ger basklasser för att tillämpa konventioner, som\n dependency injection. Generiska\n repository tjänster ger ett bekvämt sätt att\n sätt att interagera med databasen. Deklarativ\n auktorisering arbetar med ett finjusterat behörighetssystem.", + "DevelopYourSolution_Description5": "ABP automatiserar helt och hållet\n arbetsenhet (för databasanslutning och transaktionshantering),\n undantagshantering,\n validering\n och auditloggning. Det ger många fler byggstenar för att förenkla dina dagliga utvecklingsuppgifter och fokusera på din egen kod medan du skapar produktionsklara\n applikationer.", + "DevelopYourSolution_Description6": "Du kan föreställa dig hur långt och komplicerat det kodblocket kan bli om du skulle göra allt manuellt.", + "SuiteCrudGenerationInFewSeconds": "Förutom att handkoda din lösning kan du skapa fullt fungerande avancerade CRUD-sidor på några minuter med hjälp av ABP Suite-verktyget. Det genererar koden till din lösning, så att du kan finjustera den utifrån dina anpassade krav.", + "DeployAnywhere_Description1": "I slutändan har du en ren .NET-lösning. Du kan distribuera din lösning till din egen server, till en molnplattform, till Kubernetes eller var du vill. Du kan distribuera till så många servrar som du vill. ABP är ett agnostiskt verktyg för driftsättningsmiljöer.", + "ExpertiseAbpFramework": "Expertis ABP", + "ExpertiseAbpFramework_Description1": "Vill du gå längre än grunderna och få expertis med ABP Platform?", + "FreeDownload": "Fri nedladdning", + "HavingTrouble": "Har du problem?", + "HavingTrouble_Description1": "Har du problem med att utveckla din lösning? Vi finns här för dig! Använd ABP:s supportplattform\n eller skicka ett e-postmeddelande för att få hjälp direkt från Core ABP-teammedlemmarna.", + "WeAreHereToHelp_Description1": "Du kan bläddra bland våra hjälpämnen eller söka i vanliga frågor,\n eller så kan du ställa en fråga till oss genom att använda kontaktformuläret.", + "OtherModules": "Övriga moduler", + "OtherModules_Description1": "Konto, Audit Logging, Chatt, CMS Kit, Filhantering, Formulär, GDPR, Språkhantering och mer...", + "HowItWorks_DatabaseProviderOptions": "Alternativ för databasleverantör", + "SeeFAQ": "Se vanliga frågor", + "ReleaseLogs": "Release Loggar", + "ReleaseLogs_Tag": "{0} Loggar för frisläppande", + "ReleaseLogs_Pr": "Pull Request #{0} - {1}", + "NoLabels": "Inga etiketter", + "DoesTheSubscriptionRenewAutomatically": "Förnyas abonnemanget automatiskt?", + "DoesTheSubscriptionRenewAutomaticallyExplanation": "ABP-plattformen har inte en faktureringsmodell för automatisk förnyelse. Därför kommer din prenumeration inte att förnyas automatiskt i slutet av din licensperiod. Om du vill fortsätta att ha fördelarna med ABP-plattformen måste du förnya den manuellt på sidan för organisationshantering. Om du har flera organisationer klickar du på knappen \"Hantera\" på din organisation som löper ut och klickar sedan på knappen \"Förläng nu\" för att förnya din licens. Du kanske också vill ta en titt på avsnittet Vad händer när min licens går ut?.", + "ExtraQuestionCreditsFaqTitle": "Kan jag köpa extra poäng för supportfrågor?", + "ExtraQuestionCreditsFaqExplanation": "Ja, det kan du göra. För att köpa extra frågepoäng, skicka ett e-postmeddelande till info@abp.io med din organisations namn. Här är prislistan för de extra frågekrediterna: ", + "AlreadyBetaTester": "Du har redan gått med i betatestarprogrammet.", + "AbpStudio": "ABP Studio", + "AbpStudio_Description": "ABP Studio är fortfarande under utveckling. Du kan fylla i formuläret nedan för att bli en av de första användarna.", + "AbpStudio_Description1": "ABP Studio är en plattformsoberoende skrivbordsapplikation för ABP-utvecklare.", + "AbpStudio_Description2": "Det är väl integrerat i ABP-ramverket och syftar till att tillhandahålla en bekväm utvecklingsmiljö för dig genom att automatisera saker, ge insikter om din lösning, vilket gör det mycket enklare att utveckla, köra och distribuera dina lösningar.", + "AbpStudio_ComingSoon": "Kommer snart Planerat datum för betaversion: Q4 av 2023.", + "AbpStudio_PlannedPreviewDate": "Planerat utgivningsdatum för förhandsvisning: Q4 år 2023.", + "BetaRequest": "Beta förfrågan", + "CreateNewSolutions": "Skapa nya lösningar", + "CreateNewSolutions_Description1": "Du kan enkelt skapa allt från enkla applikationer till modulära monolit- eller mikroservicelösningar med många alternativ. Du får en fullständig produktionsfärdig basprogramvarulösning för ditt företag.", + "ArchitectYourSolutions": "Arkitekt för dina lösningar", + "ArchitectYourSolutions_Description1": "Bygg enklare monolitiskt modulära och mikrotjänstbaserade lösningsstrukturer genom att skapa moduler eller tjänster och upprätta relationer mellan dem. Du kan också installera eller avinstallera förbyggda applikationsmoduler.", + "ExploreYourSolution": "Utforska din lösning", + "ExploreYourSolution_Description1": "ABP Studio visar en vy på hög nivå av komponenterna i din lösning och de moduler som din lösning är beroende av. Du kan utforska entiteter, tjänster, HTTP API:er och mycket mer utan att behöva öppna din kodbas.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze": "Kör multiapplikations- eller microservice-lösningar på ett kick", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description1": "Kör en, flera eller alla tjänster med ett enda klick. På så sätt är det mycket enkelt att stoppa en tjänst, köra den i Visual Studio för att testa eller debugga.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description2": "Se en lista över tjänster, visa HTTP-begäran i realtid och antal undantag för varje tjänst.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description3": "Se alla detaljer om alla HTTP-begäranden som kommer till en tjänst.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description4": "Utforska undantagsdetaljer i realtid i alla tjänster, filtrera och sök enkelt.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description5": "Visa applikationsloggar, filtrera efter loggnivå eller sök efter text.", + "RunMultiApplicationOrMicroserviceSolutionsInABreeze_Description6": "Bläddra genom användargränssnittet i din applikation utan att lämna solution runner.", + "IntegrateToYourKubernetesCluster": "Integrera med ditt Kubernetes-kluster", + "IntegrateToYourKubernetesCluster_Description1": "Koppla din lokala utvecklingsmiljö till ett lokalt eller avlägset Kubernetes-kluster, där klustret redan kör din mikrotjänstlösning.", + "IntegrateToYourKubernetesCluster_Description2": "Få åtkomst till alla tjänster i Kubernetes med deras tjänstenamn som DNS, precis som om de körs på din lokala dator.", + "IntegrateToYourKubernetesCluster_Description3": "Interceptera vilken tjänst som helst i det klustret, så att all trafik till den intercepterade tjänsten automatiskt omdirigeras till din tjänst som körs i din lokala maskin. När din tjänst behöver använda någon tjänst i Kubernetes omdirigeras trafiken tillbaka till klustret, precis som om din lokala tjänst körs inuti Kubernetes.", + "GetInformed": "Bli informerad", + "Studio_GetInformed_Description1": "Lämna din kontaktinformation för att få information och pröva först när ABP Studio har lanserats.", + "Studio_GetInformed_Description2": "Planerat utgivningsdatum för förhandsvisning: Q3 år 2023.", + "ThankYou!": "Tack så mycket!", + "SendBetaRequest": "Skicka Beta förfrågan", + "YouJoinedTheBetaTesterProgram": "Du har gått med i betatestarprogrammet för ABP Studio.", + "PricingExplanation2": "30 dagars pengarna tillbaka-garanti - Läs mer", + "MoneyBackGuaranteeText": "* 30-dagars pengarna-tillbaka-garanti på alla licenser! 100% återbetalning på Team-, 60% återbetalning på Business- och Enterprise-licenser inom 30 dagar.", + "MobileApplicationStartupTemplates": "Mallar för uppstart av mobilapplikationer", + "MobileApplicationStartupTemplates_Description1": "Integrerade startmallar för mobilapplikationer för dina ABP-projekt.", + "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates": "Bygg kraftfulla applikationer för olika branscher med hjälp av ABP Mobile Startup Templates", + "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description1": "ABP tillhandahåller två startmallar för mobilapplikationer som implementerats med React Native och .NET MAUI. När du skapar din nya ABP-baserade lösning kommer du också att ha grundläggande startapplikationer som är anslutna till dina backend-API:er.", + "CreatePowerfulLineOfBusinessApplicationsUsingABPMobileStartupTemplates_Description2": "Applikationen har en förbyggd autentiseringstokencykel, stöd för flera språk, stöd för flera behörigheter, inloggning, glömt lösenord, profilhantering och en användarhanteringssida. Du kan lägga till din egen affärslogik och anpassa den utifrån dina krav.", + "TwoFrameworkOptions": "Två alternativ för ramverk", + "TwoFrameworkOptions_Description": "ABP tillhandahåller både React Native och .NET MAUI mobila startup-mallar. På så sätt kan du välja den som bäst passar dina behov. Båda apparna återanvänder kod i den högsta graden mellan iOS- och Android-plattformarna.", + "PreIntegratedToYourBackend": "Förintegrerad till din backend", + "PreIntegratedToYourBackend_Description": "ABP Mobile-applikationer är förintegrerade med dina backend-API:er. Den får en giltig autentiseringstoken från servern och gör autentiserade förfrågningar.", + "MultiLanguage": "Flerspråkig", + "MultiLanguage_Description": "Det stöder redan mer än 10 språk ur lådan. Du kan också lägga till ytterligare språk.", + "Arabic": "Arabiska", + "Czech": "Tjeckien", + "English": "Engelska", + "Hungarian": "Ungerska", + "Finnish": "Finska", + "French": "Franska", + "Hindi": "Hindi", + "Portuguese": "Portugisiska", + "Italian": "Italienska", + "Russian": "Ryska", + "Slovak": "Slovakien", + "Turkish": "Turkiska", + "EngageAndRetainYourCustomersWithABPMobileApps": "Engagera och behåll dina kunder med ABP:s mobilappar", + "EngageAndRetainYourCustomersWithABPMobileApps_Description1": "Dina kunder vill kunna hantera sina produkter och prenumerationer var som helst och när som helst. Det kräver att organisationer skapar mobilappar som gör det möjligt för kunderna att uppfylla sina önskemål snabbt och smidigt.", + "EngageAndRetainYourCustomersWithABPMobileApps_Description2": "Med ABP Mobile apps kan du skapa högkvalitativa native mobilappar för Android och iOS... med en enda kodbas och utan att kompromissa med säkerhet, kvalitet eller skalbarhet.", + "OneCodeBaseMultipleDevices": "En kodbas Flera enheter", + "OneCodeBaseMultipleDevices_Description": "ABP:s mobilapplikationer är plattformsoberoende. De är redo att installeras och köras på iOS- och Android-enheter, och de anpassar sig till olika formfaktorer med hjälp av en enda kodbas. Utvecklare behöver bara skapa användargränssnittet och front-end-koden en gång, det finns inget behov av att anpassa koden för varje enhet du vill stödja.", + "ComesWithTheSourceCode": "Levereras med källkoden", + "ComesWithTheSourceCode_Description": "Mobilapparna är försedda med källkod. Anpassa enkelt UX/UI för dina appar för att uppfylla riktlinjerna för varumärkesprofilering.", + "Purchase_OneYearPrice": "1 år Pris", + "Purchase_DeveloperSeatCount": "Antal platser för utvecklare", + "Purchase_DevelopersAlreadyIncluded": "{0} utvecklare redan inkluderade", + "1Year": "1 år", + "{0}Years": "{0} år", + "1YearLicense": "1 års licens", + "{0}YearsLicense": "{0} År Licens", + "1AdditionalDeveloper": "1 ytterligare utvecklare", + "{0}AdditionalDevelopers": "{0} Ytterligare utvecklare", + "Discount": "Rabatt ({0}%)", + "TrainingPack": "Utbildningspaket", + "TrainingPackDiscount": "Rabatt på utbildningspaket", + "Purchase_OnboardingTraining_Description": "Denna liveutbildning är giltig för en klass med 8 elever och denna rabatt är endast giltig när den köps med den nya licensen. Läs mer ", + "Purchase_Save": "{0}% Spara {1}", + "RemoveBasket": "Ta bort från korgen", + "WhyABPIOPlatform?": "Varför ABP Platform?", + "DocumentAim": "Detta dokument syftar till att besvara den stora frågan:", + "DocumentAim_Description": "\"Varför ska du använda ABP Platform istället för att skapa en ny lösning från grunden?\"", + "DocumentAim_Description2": "Dokumentet presenterar utmaningarna med att bygga en modern mjukvarulösning och förklarar hur ABP hanterar dessa utmaningar.", + "CreatingANewSolution": "Skapa en ny lösning", + "CreatingANewSolution_Description": "När du ska starta en ny lösning finns det många frågor du måste ställa dig själv, och du bör lägga ner mycket tid innan du börjar skriva din allra första affärskod.", + "CreatingAnEmptySolution": "Skapa en tom lösning", + "THEPROBLEM": "PROBLEMET", + "CreatingAnEmptySolution_THEPROBLEM_Description": "Även att skapa en nästan tom lösning är en utmaning;", + "CreatingAnEmptySolution_THEPROBLEM_Description2": "Hur organiserar du din kodbas mellan olika projekt?", + "CreatingAnEmptySolution_THEPROBLEM_Description3": "Vilka är lagren och hur samverkar de?", + "CreatingAnEmptySolution_THEPROBLEM_Description4": "Hur integrerar ni med tredjepartsbibliotek?", + "CreatingAnEmptySolution_THEPROBLEM_Description5": "Hur ställer man in automatiserade tester?", + "ABPSOLUTION": "ABP-LÖSNING", + "CreatingAnEmptySolution_ABPSOLUTION_Description": "ABP tillhandahåller en välarkitekterad, skiktad och produktionsklar startup-lösning baserad på Domain Driven Design-principerna. Lösningen innehåller också en förkonfigurerad enhet och integration test -projekt för varje lager.", + "CommonLibraries": "Gemensamma bibliotek", + "CommonLibraries_THEPROBLEM_Description": "Vilka bibliotek bör du använda för att implementera gemensamma krav? Ekosystemet för programvaruutveckling är mycket dynamiskt, vilket gör det svårt att hålla jämna steg med de senaste verktygen, biblioteken, trenderna och metoderna.", + "CommonLibraries_ABPSOLUTION_Description": "ABP förintegrerar populära, mogna och uppdaterade bibliotek i lösningen. Du behöver inte lägga tid på att integrera dem eller få dem att kommunicera med varandra. De fungerar som de ska direkt från start.", + "UITheme&Layout": "UI Tema & Layout", + "UITheme&Layout_THEPROBLEM_Description": "När man tar itu med användargränssnittet uppstår en rad olika utmaningar. Det handlar bland annat om att lägga grunden för ett responsivt, modernt och anpassningsbart UI-kit med ett konsekvent utseende och en mängd funktioner som navigeringsmenyer, rubriker, verktygsfält, sidfötter, widgetar med mera.", + "UITheme&Layout_THEPROBLEM_Description2": "Även om du väljer ett fördesignat tema kan det ta flera dagars utveckling att integrera det sömlöst i ditt projekt. Ett ytterligare hinder ligger i att uppgradera sådana teman. Ofta blir temats HTML/CSS-struktur sammanflätad med din UI-kod, vilket gör framtida temaförändringar eller uppgraderingar till komplicerade uppgifter. Denna sammanvävning av kod och design komplicerar flexibiliteten att göra justeringar längs linjen.", + "UITheme&Layout_ABPSOLUTION_Description": "ABP erbjuder ett distinkt temasystem som frigör din UI-kod från temabegränsningar. Teman existerar isolerat, paketerade som NuGet- eller NPM-paket, vilket gör installation eller uppgradering av teman till en fråga om minuter. Även om du behåller möjligheten att utveckla ditt eget tema eller integrera ett befintligt, presenterar ABP en samling polerade och moderna teman.", + "UITheme&Layout_ABPSOLUTION_Description2": "Dessutom finns det leverantörer av UI-komponenter som Telerik och DevExpress. Dessa leverantörer tillhandahåller dock främst enskilda komponenter, vilket innebär att det är upp till dig att skapa ditt layoutsystem. När du arbetar inom ABP-baserade projekt kan du sömlöst införliva dessa bibliotek, på samma sätt som du skulle göra i alla andra projekt.", + "TestInfrastructure_THEPROBLEM_Description": "Att etablera en robust testmiljö är en tidskrävande uppgift. Det handlar om att skapa dedikerade testprojekt inom din lösning, noggrant välja ut de verktyg som behövs, skapa mocks för tjänster och databaser, skapa viktiga basklasser och verktygstjänster för att minimera redundant kod i testerna och ta itu med olika relaterade uppgifter.", + "TestInfrastructure_ABPSOLUTION_Description": "ABP Startup Templates levereras färdigutrustade med konfigurerade testprojekt, vilket effektiviserar processen för dig. Det innebär att du redan från dag ett kan börja skriva din första enhets- eller integrationstestkod utan dröjsmål.", + "CodingStandards&Training": "Kodningsstandarder och utbildning", + "CodingStandards&Training_THEPROBLEM_Description": "När du har konfigurerat lösningen för utveckling måste du vanligtvis lära utvecklarna hur systemet fungerar och hur man bygger det med hjälp av samma överenskomna metoder. Även om du ger dem utbildning kan det vara svårt att hålla dokumentationen uppdaterad. Med tiden kanske varje utvecklare skriver kod på sitt eget sätt, vilket leder till att reglerna för att skriva kod skiljer sig från varandra.", + "CodingStandards&Training_ABPSOLUTION_Description": "ABP-lösningen är redan snyggt organiserad och har tydliga förklaringar. Steg-för-steg-handledningar och guider visar exakt hur du ska arbeta med ett ABP-projekt.", + "KeepingYourSolutionUpToDate": "Håll din lösning uppdaterad", + "KeepingYourSolutionUpToDate_THEPROBLEM_Description": "När du har påbörjat din utveckling måste du hålla reda på de nya versionerna av de bibliotek du använder för uppgraderingar och korrigeringar.", + "KeepingYourSolutionUpToDate_ABPSOLUTION_Description": "Vi uppdaterar regelbundet alla paket till de senaste versionerna och testar dem före den stabila utgåvan. När du uppdaterar ditt ABP-baserade projekt uppgraderas alla dess beroenden till den senaste tekniken.", + "KeepingYourSolutionUpToDate_ABPSOLUTION_Description2": "Abp update CLI-kommandot hittar och uppgraderar automatiskt alla ABP-beroende NuGet- och NPM-paket i en lösning. Med ABP är det enklare att hålla sig till de senaste versionerna.", + "DRY": "Upprepa inte dig själv!", + "DRY_Description": "Att skapa en baslösning tar lång tid och kräver god erfarenhet av arkitektur. Men detta är bara början! När du börjar utveckla kommer du sannolikt att behöva skriva massor av repetitiv kod; det skulle vara fantastiskt om allt detta kunde hanteras automatiskt.", + "DRY_Description2": "ABP automatiserar och förenklar upprepningskoden så mycket som möjligt genom att följa principen om konvention framför konfiguration. Det begränsar dig dock inte när du behöver växla till manuell växel. Kontrollen ligger alltid i dina händer.", + "Authentication": "Autentisering", + "Authentication_THEPROBLEM_Description": "Single Sign On, Active Directory / LDAP-integration, OpenIddict-integration, sociala inloggningar, tvåfaktorsautentisering, glömt / återställt lösenord, e-postaktivering, ny användarregistrering, kontroll av lösenordskomplexitet, låsning av konto vid misslyckade försök, visning av misslyckade inloggningsförsök ... etc. Vi vet att alla dessa generiska krav är bekanta för dig. Du är inte ensam!", + "Authentication_ABPSOLUTION_Description": "ABP tillhandahåller alla dessa standardgrejer förimplementerade för dig som en återanvändbar kontomodul. Du aktiverar och konfigurerar bara det du behöver.", + "CrossCuttingConcerns_THEPROBLEM_Description": "Cross-Cutting Concerns är den grundläggande upprepningslogik som bör implementeras för varje användningsfall. Några exempel;", + "CrossCuttingConcerns_THEPROBLEM_Description2": "Starta transaktioner, genomföra vid framgång och rulla tillbaka vid fel.", + "CrossCuttingConcerns_THEPROBLEM_Description3": "Hantera och rapportera undantag, returnera ett korrekt felsvar till klienterna och hantera felfall på klientsidan.", + "CrossCuttingConcerns_THEPROBLEM_Description4": "Implementera auktorisering och validering, returnera korrekta svar och hantera dessa på klientsidan.", + "CrossCuttingConcerns_ABPSOLUTION_Description": "ABP automatiserar eller förenklar alla vanliga övergripande problem. Du skriver bara kod som är viktig för din verksamhet, och ABP hanterar resten genom konventioner.", + "ArchitecturalInfrastructure": "Arkitektonisk infrastruktur", + "ArchitecturalInfrastructure_THEPROBLEM_Description": "Du behöver vanligtvis bygga infrastruktur för att implementera din arkitektur på rätt sätt. Till exempel implementerar du i allmänhet Repository-mönstret. Du definierar några basklasser för att förenkla och standardisera skapandet av entiteter, tjänster, controllers och andra objekt.", + "ArchitecturalInfrastructure_ABPSOLUTION_Description": "ABP tillhandahåller allt detta och mer därtill direkt från start. Det är moget och väldokumenterat.", + "EnterpriseApplicationRequirements": "Krav på företagsapplikationer", + "EnterpriseApplicationRequirements_THEPROBLEM_Description": "Det finns många krav som du upprepade gånger måste implementera i varje affärsapplikation;", + "EnterpriseApplicationRequirements_THEPROBLEM_Description2": "Detaljerat behörighetssystem och hantering av behörigheter i användargränssnittet baserat på roller och användare.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description3": "Skriva granskningsloggar och entitetshistorik för att spåra när en användare ändrar en databaspost.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description4": "Gör dina enheter mjukt raderade, så att de markeras som raderade istället för att fysiskt raderas från databasen och automatiskt filtrera bort raderade enheter i dina frågor.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description5": "Skapa abstraktioner och omslag för att konsumera dina backend-API:er från frontend-koden.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description6": "Uppställning i kö och utförande av bakgrundsjobb.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description7": "Hantering av flera tidszoner i ett globalt system.", + "EnterpriseApplicationRequirements_THEPROBLEM_Description8": "Delning av validering, lokalisering och auktoriseringslogik mellan server och klient.", + "EnterpriseApplicationRequirements_ABPSOLUTION_Description": "ABP tillhandahåller en infrastruktur för att enkelt implementera sådana krav. Återigen behöver du inte spendera din värdefulla tid på att implementera alla dessa om och om igen.", + "GeneratingInitialCode&Tooling": "Generering av initialkod och verktyg", + "GeneratingInitialCode&Tooling_THEPROBLEM_Description": "Du kommer att bygga många liknande sidor i en typisk webbapplikation. De flesta av dem kommer att utföra liknande CRUD-operationer. Det är mycket tråkigt och även felbenäget att upprepade gånger skapa sådana sidor.", + "GeneratingInitialCode&Tooling_ABPSOLUTION_Description": "ABP Suite kan generera en full-stack CRUD-sida för dina enheter på några sekunder. Den genererade koden är skiktad och ren. Alla standardkrav för validering och auktorisering är implementerade. Dessutom genereras enhetstestklasser. När du väl har fått en helt fungerande sida kan du ändra den enligt dina affärsbehov.", + "IntegratingTo3rdPartyLibrariesAndSystems": "Integrering med bibliotek och system från tredje part", + "IntegratingTo3rdPartyLibrariesAndSystems_THEPROBLEM_Description": "De flesta bibliotek är utformade på låg nivå och du måste vanligtvis göra en del arbete för att integrera dem på rätt sätt utan att upprepa samma integrations- och konfigurationskod överallt i din lösning. Anta till exempel att du måste använda RabbitMQ för att implementera din distribuerade händelsebuss. Allt du vill göra är att skicka ett meddelande till en kö och hantera de inkommande meddelandena. Men du måste förstå meddelandemönster, köer och utbytesdetaljer. För att skriva effektiv kod måste du skapa en pool för att hantera anslutningar, klienter och kanaler. Du måste också hantera undantag, ACK-meddelanden, återanslutning till RabbitMQ vid misslyckanden och mer.", + "IntegratingTo3rdPartyLibrariesAndSystems_ABPSOLUTION_Description": "Till exempel abstraherar ABP:s RabbitMQ Distributed Event Bus-integration alla dessa detaljer. Du skickar och tar emot meddelanden utan krångel. Behöver du skriva kod på låg nivå? Inga problem, det kan du alltid göra. ABP begränsar dig inte när du behöver använda lågnivåfunktioner i det bibliotek du använder.", + "WhyNotBuildYourOwnFramework?": "Varför inte bygga ditt eget ramverk?", + "WhyNotBuildYourOwnFramework_THEPROBLEM_Description": "All infrastruktur, även på det enklaste sättet, tar mycket tid att bygga, underhålla och dokumentera. Den blir större med tiden och det blir svårt att underhålla den i din lösning. Att separera dessa i ett återanvändbart projekt är utgångspunkten för att bygga ditt eget interna ramverk.", + "WhyNotBuildYourOwnFramework_THEPROBLEM_Description2": "Att bygga, dokumentera, utbilda och underhålla ett internt ramverk är verkligen svårt. Om du inte har ett erfaret, dedikerat ramverksteam blir ditt interna ramverk snabbt en odokumenterad äldre kod som ingen längre kan förstå och underhålla. Å andra sidan utvecklas dessa ramverk i allmänhet av en eller två utvecklare i teamet. Och dessa medarbetare håller på att bli en kunskapssilo. Det är bra för dem men dåligt för företaget eftersom de är projektets enda punkt för misslyckande -SPOF-. När de lämnar företaget går projektet dramatiskt ner.", + "WhyNotBuildYourOwnFramework_ABPSOLUTION_Description": "ABP är ett community-drivet, väldokumenterat, moget och generiskt applikationsramverk. Ett team av mycket erfarna utvecklare arbetar hårt för att hålla det uppdaterat, lätt att förstå och bekvämt att använda. Att använda ett så stabilt ramverk gör att du kan fokusera på din egen affärskod och få hjälp med ramverket från experter när du behöver det.", + "ArchitecturalInfrastructure_Description": "SaaS-applikationer, modulära system eller mikroservicesystem är de mest använda modellerna för företagsprogramvara. Att bygga sådana system kräver inte bara en god förståelse och erfarenhet utan också en stark mjukvaruinfrastruktur. Annars kommer du att få lägga ner mycket arbete på att stödja dessa arkitektoniska detaljer i din kodbas.", + "Modularity_THEPROBLEM_Description": "Att bygga ett verkligt modulärt system är inte lätt! Alla aspekter av systemet (databas, entiteter, API:er, UI-sidor/komponenter) kan delas upp i moduler, och varje modul kan återanvändas utan andra. Den vanliga ASP.NET Core ger inte en sådan modulär arkitektur. Om du behöver det bör du tänka på det från grunden.", + "Modularity_ABPSOLUTION_Description": "ABP är skapat för att vara en modulär struktur för applikationsutveckling. Varje funktion i ramverket är utvecklad för att vara kompatibel med modularitet. Dokumentation och guider förklarar hur man utvecklar återanvändbara moduler på ett standardiserat sätt.", + "SaaSMultiTenancy": "SaaS / Multi-tenancy", + "SaaSMultiTenancy_THEPROBLEM_Description": "Multi-tenancy är ett vanligt sätt att implementera SaaS-system. Att implementera en konsekvent multi-tenant infrastruktur kan dock bli komplicerat.", + "SaaSMultiTenancy_ABPSOLUTION_Description": "ABP tillhandahåller en komplett infrastruktur för flera hyresgäster och abstraherar komplexiteten från din företagskod. Din applikationskod kommer att vara mestadels multi-tenancy medveten, medan ABP automatiskt isolerar databasen, cache och andra detaljer om hyresgästerna från varandra. Den stöder en enda databas, per hyresgästdatabas och hybridmetoder. Den konfigurerar korrekt bibliotek som Microsoft Identity och OpenIddict, som normalt inte är kompatibla med multi-tenancy.", + "Microservices": "Mikrotjänster", + "Microservices_THEPROBLEM_Description": "Att bygga ett mikrotjänstsystem kräver många infrastrukturdetaljer: Autentisering och auktorisering av applikationer och mikrotjänster samt implementering av asynkrona meddelanden och synkrona (Rest/GRPC) kommunikationsmönster mellan mikrotjänster är de mest grundläggande frågorna.", + "Microservices_ABPSOLUTION_Description": "ABP tillhandahåller tjänster, guider och exempel som hjälper dig att implementera din microservice-lösning med hjälp av branschens standardverktyg.", + "Microservices_ABPSOLUTION_Description2": "ABP:s kommersiella licenser går till och med ett steg längre och tillhandahåller en komplett startmall för att kickstarta din mikroservicelösning.", + "PreBuiltModules": "Förbyggda moduler", + "PreBuiltModules_THEPROBLEM_Description": "Alla har vi liknande men lite olika affärskrav. Men vi måste alla uppfinna hjulet på nytt eftersom ingen annans kod kan fungera direkt i vår lösning. De är alla inbäddade delar av en större lösning.", + "PreBuiltModules_ABPSOLUTION_Description": "ABP modules tillhandahåller många återanvändbara applikationsmoduler som betalning, chatt, filhantering, revisionsloggrapportering ... etc. Alla dessa moduler installeras enkelt i din lösning och fungerar direkt. Vi lägger ständigt till fler moduler.", + "PreBuiltModules_ABPSOLUTION_Description2": "Alla moduler är utformade så att de kan anpassas efter dina affärsbehov. Om du behöver fullständig kontroll kan du ladda ner den fullständiga källkoden för alla moduler och anpassa dem helt utifrån dina specifika affärskrav.", + "ABPCommunity": "ABP Gemenskap", + "ABPCommunity_Description": "Slutligen, att vara en del av en stor gemenskap där alla följer liknande kodningsstilar och principer och delar en gemensam infrastruktur ger kraft när du har problem eller behöver hjälp med designbeslut. Eftersom vi skriver kod på liknande sätt kan vi hjälpa varandra mycket bättre. ABP är ett community-stöttat projekt med mer än 10K stjärnor på GitHub.", + "ABPCommunity_Description2": "Det är lätt att dela kod eller till och med återanvändbara bibliotek mellan ABP-utvecklare. En kodsnutt som fungerar för dig kommer också att fungera för andra. Det finns många exempel och handledningar som du direkt kan implementera i din applikation.", + "ABPCommunity_Description3": "När du anlitar en utvecklare som tidigare arbetat med ABP-arkitekturen kommer denne omedelbart att förstå din lösning och påbörja utvecklingen på mycket kort tid.", + "WhyAbpIo_Page_Title": "Varför ABP Platform?", + "AbpStudio_Page_Title": "ABP Studio", + "AbpStudio_Page_Description": "Utforska ABP Studio, en integrerad utvecklingsmiljö för ABP Platform, som förbättrar din utvecklingsprocess.", + "CampaignInfo": "Köp en ny licens eller förnya din befintliga licens och få ytterligare 2 månader utan extra kostnad! Detta erbjudande gäller för alla licensplaner. Se till att du utnyttjar denna tidsbegränsade kampanj för att utöka din tillgång till premiumfunktioner och uppgraderingar.", + "HurryUpLastDay": "Skynda på! Sista dagen: {0}", + "CreatingCRUDPagesWithABPSuite": "Skapa CRUD-sidor med ABP Suite", + "MultipleYearDiscount": "Rabatt för flera år", + "CampaignDiscountText": "Rabatt på ny plattform", + "CampaignDiscountName": "Ny plattform", + "CampaignName:BlackFriday": "Svart fredag", + "MultipleOrganizationInfo": "Se alla dina organisationer", + "AbpStudioBetaAccessInfoTitle": "ABP Studio Beta Access", + "AbpStudioBetaAccessInfoText": "Vi är glada över att kunna dela med oss av beta-versionen av ABP Studio! Den här versionen markerar en viktig milstolpe i vår utvecklingsresa, och vi är angelägna om att samla in din feedback för att göra applikationen ännu bättre.", + "YouAreNotAuthorizedToDownloadStudio": "Du är inte behörig att ladda ner ABP Studio.", + "OrganizationHasNoDefaultCreditCard": "Din organisation har inget standardkreditkort. Lägg till ett kreditkort för din organisation.", + "YouAreNotAuthorizedToPayThisPaymentRequest": "Du är inte behörig att betala denna betalningsbegäran.", + "YouAreNotAuthorizedToCreateBillingInfoForThisPaymentRequest": "Du är inte behörig att skapa faktureringsinformation för denna betalningsbegäran.", + "OrganizationNotFound": "Organisationen hittades inte.", + "CannotDeleteDefaultCardBecauseAutoRenewalEnabled": "Du kan inte ta bort kortet just nu eftersom funktionen Auto-Renewal är aktiverad. För att ta bort kortet måste du först avaktivera Auto-Renewal.", + "AreYouSureWantToDeleteThisCard": "Är du säker på att du vill ta bort det här kortet?", + "AreYouSureWantToSetThisCardAsDefault": "Är du säker på att du vill använda det här kortet som standard?", + "OrganizationBillingInfoIsNotSuitableForIyzicoPayment": "Din organisations faktureringsinformation är inte lämplig för iyzico-betalning.", + "AutomaticRenewal": "Automatisk förnyelse", + "AutomaticRenewal_Description": "Om du förnyar en licens innan den går ut får du en rabatt på upp till 40 %. Med den automatiska förnyelseprocessen kan du förnya din licens utan att förlora denna rabatt, och din utveckling kommer aldrig att avbrytas. Automatisk förnyelse är endast tillgänglig för kreditkortsbetalning. Du kan inaktivera automatisk förnyelse när som helst genom att gå till din organisationshanteringssida. ABP sparar inte din kreditkortsinformation, men våra globala betalningsgateways säkrar besparingar.", + "CardNotFoundMessage": "Vill du lägga till ett nytt kort?", + "CardNotFoundTitle": "Kortet hittades inte", + "AutoRenewalEnabled": "Automatisk förnyelse aktiverad", + "AutoRenewalDisabled": "Automatisk förnyelse Avaktiverad", + "PaymentRequestIdIsNotProvided": "Betalningsförfrågans ID anges inte.", + "PaymentFailedInfo": "Tyvärr, betalningen misslyckades! Detta kan bero på otillräckliga medel, ogiltigt kreditkortsnummer eller ogiltig pinkod", + "UsedPayment": "Denna betalning har redan använts", + "ManageLicense": "Hantera licens", + "AbpPlatformLeptonXTheme": "LeptonX Theme för din administrativa instrumentpanel av ABP Platform", + "NoActiveLicence": "Du är inte berättigad till denna åtgärd! Du har ingen aktiv licens.", + "ABPStudioBetaTester": "För att kunna skicka in din begäran måste du logga in", + "ABPStudioBetaAccess": "ABP Studio Beta Access", + "VisitABPStudio": "Besök ABP Studio", + "EditBillingInformation": "Redigera faktureringsinformation", + "Organization": "Organisation", + "E-Book": "E-bok", + "CreditCards": "Kreditkort", + "BillingInformation": "Faktureringsinformation", + "AddNewCreditCard": "Lägg till nytt kreditkort", + "MyOrganizations_LearnMorePlan": "Läs mer om planer på prissättningssidan", + "AutoLicenseRenewalIsNotEnabled": "Automatisk licensförnyelse är inte aktiverad.", + "SetAsDefaultPaymentMethod": "Ange som standardbetalningsmetod", + "{0}PerAdditionalDeveloper": "${0} per ytterligare utvecklare", + "CardAlias": "Alias för kort (valfritt)", + "AbpDoesNotSaveYourPaymentDetails_Description": "Betalningsuppgifterna kommer att sparas i {2} säkerhetsvalv och du kan ta bort lagrade uppgifter när som helst. Aktivering av automatisk förnyelse säkerställer att din ABP-prenumeration automatiskt förnyas innan den löper ut, förutsatt att du har ett giltigt kreditkort. Om du avaktiverar automatisk förnyelse måste du förnya din prenumeration manuellt. Om du vill fortsätta din projektutveckling utan avbrott föreslår vi att du aktiverar alternativet Automatisk förnyelse.", + "AddBillingInformation": "Lägg till faktureringsinformation", + "YouHaveNoCardsSaved": "Kortet är inte sparat ännu.", + "CreateCreditCardModal_BillingDetails_Description": "Du måste spara dina faktureringsuppgifter för att kunna lägga till ditt kreditkort.", + "TaxNo": "Skatt Nej", + "CardNumber": "Kortnummer", + "NameOnCard": "Namn på kortet", + "BillingDetails": "Faktureringsinformation", + "ThereIsNoDeveloper": "Ingen utvecklare tillagd.", + "CardDetails": "Debit-/Kreditkortsuppgifter", + "YearCantBeNull": "Årsfältet får inte vara tomt.", + "CardHolderName": "Namn på kortet", + "ExpireDate": "Utgångsdatum", + "DisplayName:ExpireDate": "Utgångsdatum", + "DisplayName:CardHolderName": "Namn på kortet", + "CreditCardNumberLengthWarning": "Ogiltigt kortnummer", + "ExpirationWarning": "Ogiltigt utgångsdatum", + "CreateCreditCardModal_Description": "När du sparar ditt betalkort/kreditkort kommer en tillfällig avgift på 1 USD att godkännas för verifiering och återbetalas omedelbart.", + "ReturnOnInvestmentTitle": "Avkastning på investeringar.", + "ReduceYourDevelopmentCostsDescription": "Minska dina utvecklingskostnader med mer än 50 % med ABP Platform.", + "SettingUpTheArchitectureTitle": "Uppsättning av arkitekturen", + "DoingEverythingFromScratch": "Att göra allt från början", + "SettingUpTheArchitecture_Description1": "Organisera kodbas och lösningsstruktur", + "SettingUpTheArchitecture_Description2": "Identifiera, installera och konfigurera viktiga tredjepartsbibliotek", + "SettingUpTheArchitecture_Description3": "Upprätta infrastruktur för automatiserad integration och enhetstest", + "SettingUpTheArchitecture_Description4": "Fastställa och dokumentera kodstandarder, utbilda utvecklingsteamet", + "UsingTheABPFramework": "Använda ABP-plattformen", + "UseABPSettingUpTheArchitecture_Description": "Använd ABP:s mallar för startup-lösningar", + "ReduceCostsWithABP": "Minska kostnaderna med ABP genom att", + "ReduceCostsBy": "80 % till 100 %.", + "DesigningTheUserInterfaceTitle": "Utformning av användargränssnittet", + "DesigningTheUserInterface_Description1": "Skapa eller köp ett UI-tema", + "DesigningTheUserInterface_Description2": "Anpassa användargränssnittets tema till lösningen", + "DesigningTheUserInterface_Description3": "Bygga de viktigaste delarna av användargränssnittet (layout, meny, sidhuvud, sidfot med responsiv design)", + "DesigningTheUserInterface_Description4": "Se till att designen är konsekvent på alla applikationssidor", + "UseABPDesigningTheUserInterface_Description": "Använd ABP:s LeptonX UI Theme", + "DevelopingApplicationFeaturesTitle": "Utveckling av applikationsfunktioner", + "DevelopingApplicationFeatures_Description1": "Utveckla din egen affärslogik", + "DevelopingApplicationFeatures_Description2": "Utveckla varje sida en efter en", + "DevelopingApplicationFeatures_Description3": "Utveckla gemensamma affärsmoduler själv", + "DevelopingApplicationFeatures_Description4": "Utveckla autentiseringssystemet (enkel inloggning, 2-faktor autentisering, sociala inloggningar, återställning av lösenord, e-postaktivering etc...)", + "DevelopingApplicationFeatures_Description5": "Tillämpa övergripande frågor i varje användningsfall (DB-transaktioner, auktorisering, validering, undantagshantering etc.)", + "DevelopingApplicationFeatures_Description6": "Utveckla gemensamma basklasser och nyttotjänster", + "DevelopingApplicationFeatures_Description7": "Utveckla gemensamma icke-affärsmässiga krav (revisionsloggning, soft-delete, bakgrundsjobb, behörighetssystem etc.)", + "UseABPDevelopingApplicationFeatures_Description1": "Utveckla din egen affärslogik", + "UseABPDevelopingApplicationFeatures_Description2": "Använd ABP Suite för att automatiskt generera CRUD-liknande sidor", + "UseABPDevelopingApplicationFeatures_Description3": "Använd direkt ABP:s förbyggda gemensamma applikationsmoduler och anpassa dem utifrån dina unika krav", + "ReduceCostsBy_2": "40-60 procent", + "WhyABPIoPlatform": "Varför ABP Platform?", + "WhyShouldYouUsetheABPIOPlatform": "Varför ska du använda ABP Platform istället för att skapa en ny lösning från grunden?", + "ExploreMore": "Utforska mer", + "DocumentIntroducesDescription": "Om du vill veta mer om varför du ska använda ABP Platform istället för att skapa en ny lösning från grunden kan du läsa följande dokument.", + "ReturnOnInvestmentPageAbout": "På den här sidan beskrivs de grundläggande stegen i utvecklingen av en programvarulösning och hur ABP Platform minskar utvecklingskostnaderna i varje steg.", + "LearnMore": "Lär dig mer", + "ReturnOfInvestment": "Avkastning på investeringar", + "ReturnOnInvestment_Description": "Lär dig hur du kan minska dina utvecklingskostnader med mer än 50 %.", + "PricingDiscount": "Spara", + "PricingTeamTitle": "Team", + "PricingBusinessTitle": "Företag", + "PricingEnterpriseTitle": "Företag", + "SpecialDiscount": "Särskild rabatt", + "YourOrganizationOverview": "Översikt över din organisation", + "TrainingDetailsHeaderInfo_TrainingHourSingular": "{0} timme", + "ContactPageError": "Vänligen skicka ditt meddelande via e-post till info@abp.io
Här är vad du skrev :", + "GoBack": "Gå tillbaka", + "HereWhatYouWrote": "Här är vad du skrev:", + "Sales": "Försäljning", + "LicensingPricing": "Licensiering/prissättning", + "TrialDemo": "Testversion / Demo", + "TrainingOnboarding": "Utbildning / Onboarding", + "Resellers": "Återförsäljare", + "Others": "Övriga", + "Characters": "Karaktärer", + "Topic": "Ämne", + "SendUsEmail": "Skicka e-post till oss", + "ErrorExceptionMessage": "Ett fel inträffade under behandlingen av din begäran", + "WatchTakeCodeGeneration": "Titta på videon \"Utforska potentialen med kodgenerering: ABP Suite\" Video!", + "StartupTemplatesUser": "Användare", + "StartupSingleSignOn": "Enkel inloggning", + "Application{0}": "Tillämpning {0}", + "PreBuiltApplicationModulesTitle": "Färdigbyggda applikationer Moduler.", + "RegisterDemo": "Registrera", + "TrainingDescription": "Anmäl dig till ABP:s utbildningar för att förbättra dina färdigheter och kunskaper och hålla dig uppdaterad med den senaste utvecklingen.", + "PurchaseDevelopers": "Utvecklare", + "LinkExpiredMessage": "Betalningslänken har löpt ut! Kontakta oss på sales@volosoft.com för att uppdatera länken eller klicka här för att navigera till kontaktsidan.", + "YourAccountDisabled": "Ditt användarkonto är inaktiverat!", + "WhyChooseAbpTitle": "Varför välja ABP? | ABP.IO", + "WhyChooseAbpDescription": "Upptäck fördelarna med ABP Commercial: modulär arkitektur, moduler redo för mikrotjänster, produktivitetsverktyg och robusta funktioner för moderna webbappar för affärsområden.", + "AbpIo_Modern_Title": "ABP.IO - Modern ASP.NET Core plattform för webbapplikationer", + "AbpIo_Modern_Description": "ABP Platform tillhandahåller ett ramverk med öppen källkod ovanpå ASP.NET Core med Angular-, Blazor- och MVC-gränssnittsalternativ för att skapa skalbara webbappar för företag.", + "My_Organizations_Page_Title": "Mina organisationer", + "My_Organizations_Page_Description": "Se dina ABP Platform-organisationer för att hantera dina utvecklare, licensförnyelser och uppgraderingar.", + "Members_Page_Title": "{0} - Medlem i gemenskapen | ABP.IO", + "Members_Page_Description": "{0} är medlem i ABP-communityn. Kolla in bidragen och dra nytta av denna erfarenhet.", + "Framework_Page_Title": "ABP-ramverk", + "Framework_Page_Description": "ABP Framework är det mest okomplicerade sättet att kickstarta ditt projekt! Lär dig mer om ABP Framework's robusta funktioner.", + "CLI_Page_Title": "ABP CLI", + "CLI_Page_Description": "Använd det globala verktyget ABP CLI dotnet för att skapa ett nytt ABP-projekt, uppdatera det, hantera paket och få tillgång till källkoden för ABP-moduler.", + "Mobile_Page_Title": "ABP:s mobila klient", + "Mobile_Page_Description": "Utveckla kraftfulla mobila applikationer med ABP:s funktioner för mobil utveckling, vilket säkerställer kompatibilitet mellan plattformar.", + "ReleasesPageTitle": "ABP Kommersiella meddelanden", + "ReleasesPageDescription": "Håll dig uppdaterad med de senaste funktionerna och uppdateringarna i ABP Commercial Releases, så att dina applikationer är toppmoderna.", + "GetStartedPageTitle": "Kom snabbt igång med ABP Framework med hjälp av vår omfattande guide som är utformad för nya användare.", + "Community_Page_Title": "ABP Gemenskap", + "Community_Page_Description": "Anslut och samarbeta med andra utvecklare i ABP Community, dela kunskap och resurser.", + "Services_Page_Title": "Ytterligare tjänster", + "Services_Page_Description": "Få professionell utveckling och supporttjänster från ABP-teamet eller dess lösningspartners, vilket säkerställer att ditt projekt blir framgångsrikt.", + "Contributors_Page_Title": "Bidragsgivare till ABP", + "Contributors_Page_Description": "Möt bidragsgivarna i ABP Community och lär dig mer om deras roller och bidrag till ramverket.", + "PackagesDetailTitle": "{0} - Paketdetaljer | ABP Framework", + "PackagesDetailDescription": "Få detaljerad information om paketet {0}, inklusive funktioner och användning.", + "Raffle_Page_Title": "Utlottning - {0}", + "Raffle_Page_Description": "Delta i ABP:s utlottningar och ha chansen att vinna spännande priser genom att engagera dig i ABP:s community.", + "Docs_Page_Title": "ABP-dokumentation", + "Docs_Page_Description": "Få tillgång till omfattande guider och API-referenser i ABP Documentation, vilket underlättar utveckling och felsökning.", + "Videos_Page_Title": "{0} - Videoinlägg | ABP.IO", + "AskQuestionsOnSupport": "Du kan ställa frågor på ABP Support.", + "MicroserviceApplicationExplanation1": "Skapar en distribuerad lösning.", + "MicroserviceApplicationExplanation2": "Rekommenderas för stora team för att skapa komplexa och skalbara system.", + "CancellationSupport": "Stöd för avbokning", + "CancellationSupportExplanation": "ABP möjliggör en elegant avslutning av asynkrona operationer i applikationer, vilket säkerställer korrekt resursrensning och en responsiv användarupplevelse.", + "DistributedLocking": "Distribuerad låsning", + "DistributedLockingExplanation": "ABP:s distribuerade låssystem säkerställer att resurser nås på ett ömsesidigt exklusivt sätt över olika noder i en distribuerad miljö, vilket förhindrar samtidiga konflikter och säkerställer datakonsistens.", + "EncryptionDecryptionServices": "Tjänster för kryptering och dekryptering", + "EncryptionDecryptionServicesExplanation": "ABP tillhandahåller strängkrypteringsfunktion som gör det möjligt att Encrypt och Decrypt strängar.", + "BackgroundWorkers": "Bakgrund Arbetstagare", + "BackgroundWorkersExplanation": "Definiera operationer som ska köras i en separat, dedikerad tråd. Använd de inbyggda bakgrundsarbetarna eller integrera dina egna. Hangfire och Quartz integrationer är redan tillgängliga.", + "ConcurrencyCheck": "Kontroll av samtidighet", + "ConcurrencyCheckExplanation": "ABP tillhandahåller en optimistisk mekanism för samtidighetskontroll för att säkerställa datakonsistens i din applikation och förhindrar att användare kommer åt eller ändrar samma data i en databas samtidigt." + } +} \ No newline at end of file diff --git a/common.props b/common.props index d01368396b..41f876e0af 100644 --- a/common.props +++ b/common.props @@ -1,8 +1,8 @@ latest - 8.3.1 - 3.3.1 + 8.3.4 + 3.3.4 $(NoWarn);CS1591;CS0436 https://abp.io/assets/abp_nupkg.png https://abp.io/ diff --git a/docs/en/Community-Articles/2020-08-18-Using-DevExtreme-Components-With-The-ABP-Framework/Using-DevExtreme-Components-With-The-ABP-Framework.md b/docs/en/Community-Articles/2020-08-18-Using-DevExtreme-Components-With-The-ABP-Framework/Using-DevExtreme-Components-With-The-ABP-Framework.md index fdaaefbea1..a6e50ab50a 100644 --- a/docs/en/Community-Articles/2020-08-18-Using-DevExtreme-Components-With-The-ABP-Framework/Using-DevExtreme-Components-With-The-ABP-Framework.md +++ b/docs/en/Community-Articles/2020-08-18-Using-DevExtreme-Components-With-The-ABP-Framework/Using-DevExtreme-Components-With-The-ABP-Framework.md @@ -1,4 +1,4 @@ -## Using DevExtreme Components With the ABP Framework +# Using DevExtreme Components With the ABP Framework Hi, in this step by step article, I will show you how to integrate [DevExtreme](https://js.devexpress.com/) components into ABP Framework-based applications. diff --git a/docs/en/Community-Articles/2020-12-10-How-to-Integrate-the-DevExpress-Blazor-Component/POST.md b/docs/en/Community-Articles/2020-12-10-How-to-Integrate-the-DevExpress-Blazor-Component/POST.md index 4f2f5556eb..4b618b81b8 100644 --- a/docs/en/Community-Articles/2020-12-10-How-to-Integrate-the-DevExpress-Blazor-Component/POST.md +++ b/docs/en/Community-Articles/2020-12-10-How-to-Integrate-the-DevExpress-Blazor-Component/POST.md @@ -1,4 +1,4 @@ -## Using DevExpress Blazor UI Components With the ABP Framework +# Using DevExpress Blazor UI Components With the ABP Framework Hi, in this step by step article, I will show you how to integrate [DevExpress](https://demos.devexpress.com/blazor/) blazor UI components into ABP Framework-based applications. diff --git a/docs/en/Community-Articles/2021-01-20-How-to-Integrate-the-MatBlazor-Blazor-Component/POST.md b/docs/en/Community-Articles/2021-01-20-How-to-Integrate-the-MatBlazor-Blazor-Component/POST.md index f30f31d541..551166bdf3 100644 --- a/docs/en/Community-Articles/2021-01-20-How-to-Integrate-the-MatBlazor-Blazor-Component/POST.md +++ b/docs/en/Community-Articles/2021-01-20-How-to-Integrate-the-MatBlazor-Blazor-Component/POST.md @@ -1,4 +1,4 @@ -## Using MatBlazor UI Components With the ABP Framework +# Using MatBlazor UI Components With the ABP Framework Hi, in this step by step article, I will show you how to integrate [MatBlazor](https://www.matblazor.com/), a blazor UI components into ABP Framework-based applications. diff --git a/docs/en/Community-Articles/2021-04-22-How-to-Integrate-the-Syncfusion-Blazor-Component/POST.md b/docs/en/Community-Articles/2021-04-22-How-to-Integrate-the-Syncfusion-Blazor-Component/POST.md index 2e8fa867fb..ae7ee76cd0 100644 --- a/docs/en/Community-Articles/2021-04-22-How-to-Integrate-the-Syncfusion-Blazor-Component/POST.md +++ b/docs/en/Community-Articles/2021-04-22-How-to-Integrate-the-Syncfusion-Blazor-Component/POST.md @@ -1,4 +1,4 @@ -## Integrating SyncFusion UI with ABP Framework Blazor UI +# Integrating SyncFusion UI with ABP Framework Blazor UI Hi, in this step by step article, I will show you how to integrate [Syncfusion](https://www.syncfusion.com/blazor-components), a blazor UI components into ABP Framework-based applications. diff --git a/docs/en/Community-Articles/2023-02-22-Streamline-Localization-In-Your-ABP-Project/POST.md b/docs/en/Community-Articles/2023-02-22-Streamline-Localization-In-Your-ABP-Project/POST.md index 63936521c6..f5380e0f39 100644 --- a/docs/en/Community-Articles/2023-02-22-Streamline-Localization-In-Your-ABP-Project/POST.md +++ b/docs/en/Community-Articles/2023-02-22-Streamline-Localization-In-Your-ABP-Project/POST.md @@ -1,4 +1,4 @@ -## Streamline Localization in Your ABP Project +# Streamline Localization in Your ABP Project Making localization changes to an ABP project can be a daunting task, especially if you're dealing with multiple languages and translations. During development, it's easy to overlook some changes and that leads to inconsistencies across different languages. Fortunately, I have developed a tool that can help streamline the localization process and ensure consistency across different languages. diff --git a/docs/en/Community-Articles/2023-03-20- IdentityUser-Relationships/Post.md b/docs/en/Community-Articles/2023-03-20- IdentityUser-Relationships/Post.md index 48db4e9557..ba01acce81 100644 --- a/docs/en/Community-Articles/2023-03-20- IdentityUser-Relationships/Post.md +++ b/docs/en/Community-Articles/2023-03-20- IdentityUser-Relationships/Post.md @@ -1,4 +1,4 @@ -## Introduction +# Introduction In this article, I will talk about the relationships of IdentityUser in every web application that can be created with the ABP framework. When you read this article, you will learn how to extend the user entity in the applications you develop using the ABP framework with a primitive type, extending the user by associating the user with another entity (User-many-to-one-X). diff --git a/docs/en/cli/index.md b/docs/en/cli/index.md index ba3e6aabf8..5ce500fe25 100644 --- a/docs/en/cli/index.md +++ b/docs/en/cli/index.md @@ -2,7 +2,7 @@ ABP CLI (Command Line Interface) is a command line tool to perform some common operations for ABP based solutions or ABP Studio features. -> 🛈 With **v8.2+**, the old/legacy ABP CLI has been replaced with a new CLI system to align with the new templating system and [ABP Studio](../studio/index.md). The new ABP CLI commands are explained in this documentation. However, if you want to learn more about the differences between the old and new CLIs, want to learn the reason for the change, or need guidance to use the old ABP CLI, please refer to the [Old vs New CLI](differences-between-old-and-new-cli.md) documentation. +> With **v8.2+**, the old/legacy ABP CLI has been replaced with a new CLI system to align with the new templating system and [ABP Studio](../studio/index.md). The new ABP CLI commands are explained in this documentation. However, if you want to learn more about the differences between the old and new CLIs, want to learn the reason for the change, or need guidance to use the old ABP CLI, please refer to the [Old vs New CLI](differences-between-old-and-new-cli.md) documentation. > > You may need to remove the Old CLI before installing the New CLI, by running the following command: `dotnet tool uninstall -g Volo.Abp.Cli` @@ -141,6 +141,9 @@ For more samples, go to [ABP CLI Create Solution Samples](new-command-samples.md * `angular`: Angular UI. There are some additional options for this template: * `--tiered`: The Auth Server project comes as a separate project and runs at a different endpoint. It separates the Auth Server from the API Host application. If not specified, you will have a single endpoint in the server side. (*Available for* ***Team*** *or higher licenses*) * `--progressive-web-app` or `-pwa`: Specifies the project as Progressive Web Application. + * `blazor-webapp`: Blazor Web App UI. There are some additional options for this template: + * `--tiered`: The Auth Server and the API Host project comes as separate projects and run at different endpoints. It has 3 startup projects: *HttpApi.Host*, *AuthServer* and *Blazor* and and each runs on different endpoints. If not specified, you will have a single endpoint for your web project. + * `--progressive-web-app` or `-pwa`: Specifies the project as Progressive Web Application. * `blazor`: Blazor UI. There are some additional options for this template: * `--tiered`The Auth Server project comes as a separate project and runs at a different endpoint. It separates the Auth Server from the API Host application. If not specified, you will have a single endpoint in the server side. (*Available for* ***Team*** *or higher licenses*) * `--progressive-web-app` or `-pwa`: Specifies the project as Progressive Web Application. diff --git a/docs/en/deployment/clustered-environment.md b/docs/en/deployment/clustered-environment.md index ee611fc988..0c4aa3daca 100644 --- a/docs/en/deployment/clustered-environment.md +++ b/docs/en/deployment/clustered-environment.md @@ -1,14 +1,15 @@ # Deploying to a Clustered Environment -This document introduces the topics that you should consider when you are deploying your application to a clustered environment where **multiple instances of your application run concurrently**, and explains how you can deal with these topics in your ABP based application. +This document explains the topics that you should consider when deploying your application to a clustered environment where multiple instances of your application run concurrently. +It explains how you can deal with these topics in your ABP application. -> This document is valid regardless you have a monolith application or a microservice solution. The Application term is used for a process. An application can be a monolith web application, a service in a microservice solution, a console application, or another kind of an executable process. -> -> For example, if you are deploying your application to Kubernetes and configure your application or service to run in multiple pods, then your application or service runs in a clustered environment. +> This document is eligible for both monolith and microservice solutions. +> The Application term is used for a process. An application can be a monolith web application, a service in a microservice solution, a console application, or another executable process. +> For example, if you are deploying your application to Kubernetes and configuring your application or service to run in multiple pods, then your application or service runs in a clustered environment. ## Understanding the Clustered Environment -> You can skip this section if you are already familiar with clustered deployment and load balancers. +> You can skip this section if you are familiar with clustered deployment and load balancers. ### Single Instance Deployment @@ -16,11 +17,15 @@ Consider an application deployed as a **single instance**, as illustrated in the ![deployment-single-instance](../images/deployment-single-instance.png) -Browsers and other client applications can directly make HTTP requests to your application. You can put a web server (e.g. IIS or NGINX) between the clients and your application, but you still have a single application instance running in a single server or container. Single-instance configuration is **limited to scale** since it runs in a single server and you are limited with the server's capacity. +Browsers and other client applications can directly make HTTP requests to your application. +You can locate a web server (e.g. IIS or NGINX) between the clients and your application, but you still have a single application instance running in a single server or container. +A single instance configuration is **limited by scale** because it runs on a single server, and the capacity of the server may limit the application's performance. ### Clustered Deployment -**Clustered deployment** is the way of running **multiple instances** of your application **concurrently** in a single or multiple servers. In this way, different instances can serve different requests and you can scale by adding new servers to the system. The following figure shows a typical implementation of clustering using a **load balancer**: +**Clustered deployment** is the way of running **multiple instances** of your application **concurrently** in a single or multiple servers. +In this architecture, different instances can serve different requests, and you can scale them by adding new servers to the system. +The following figure shows a typical implementation of clustering using a **load balancer**: ![deployment-clustered](../images/deployment-clustered.png) @@ -28,53 +33,56 @@ Browsers and other client applications can directly make HTTP requests to your a [Load balancers](https://en.wikipedia.org/wiki/Load_balancing_(computing)) have a lot of features, but they fundamentally **forward an incoming HTTP request** to an instance of your application and return your response back to the client application. -Load balancers can use different algorithms for selecting the application instance while determining the application instance that is used to deliver the incoming request. **Round Robin** is one of the simplest and most used algorithms. Requests are delivered to the application instances in rotation. First instance gets the first request, second instance gets the second, and so on. It returns to the first instance after all the instances are used, and the algorithm goes like that for the next requests. +Load balancers can use different algorithms to route the requests to an application instance. [Round Robin](https://en.wikipedia.org/wiki/Round-robin_scheduling) is one of the simplest and most used algorithms. Requests are delivered to the application instances in rotation. The first instance gets the first request; the second instance gets the second, and so on. It returns to the first instance after all the instances are used, and the algorithm iterates like this until the next request. ### Potential Problems Once multiple instances of your application run in parallel, you should carefully consider the following topics: -* Any **state (data) stored in memory** of your application will become a problem when you have multiple instances. A state stored in memory of an application instance may not be available in the next request since the next request will be handled by a different application instance. While there are some solutions (like sticky sessions) to overcome this problem user-basis, it is a **best practice to design your application as stateless** if you want to run it in a cluster, container or/and cloud. +* Any **state (data) stored in memory** of your application will become a problem when you have multiple instances. A state stored in the memory of an application instance may not be available in the next request since the next request will be handled by a different application instance. While there are some solutions (like sticky sessions) to overcome this problem on a user basis, it is a **best practice to design your application as stateless** if you want to run it in a cluster, container or/and cloud. * **In-memory caching** is a kind of in-memory state and should not be used in a clustered application. You should use **distributed caching** instead. * You shouldn't store data in the **local file system**. It should be available to all instances of your application. Different application instance may run in different containers or servers and they may not be able to have access to the same file system. You can use a **cloud or external storage provider** as a solution. -* If you have **background workers** or **job queue managers**, you should be careful since multiple instances may try to execute the same job or perform the same work concurrently. As a result, you may have the same work done multiple times or you may get a lot of errors while trying to access and change the same resources. +* If you have **background workers** or **job queue managers**, you should be careful since multiple instances may try to execute the same job or perform the same work concurrently. As a result, you may have the same work done multiple times, or you may get a lot of errors while trying to access and change the same resources. You may have more problems with clustered deployment, but these are the most common ones. ABP has been designed to be compatible with the clustered deployment scenario. The following sections explain what you should do when you are deploying your ABP based application to a clustered environment. ## Switching to a Distributed Cache -ASP.NET Core provides different kind of caching features. [In-memory cache](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/memory) stores your objects in the memory of the local server and is only available to the application that stored the object. Non-sticky sessions in a clustered environment should use the [distributed caching](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/distributed) except some specific scenarios (for example, you can cache a local CSS file into memory. It is read-only data and it is the same in all application instances. You can cache it in memory for performance reasons without any problem). +ASP.NET Core provides different kinds of caching features. [In-memory cache](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/memory) stores your objects in the memory of the local server and is only available to the application that stores the object. Non-sticky sessions in a clustered environment should use the [distributed caching](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/distributed) except for some specific scenarios (for example, you can cache a local CSS file into memory. It is read-only data and it is the same in all application instances. You can cache it in memory for performance reasons without any problem). -[ABP's Distributed Cache](../framework/fundamentals/caching.md) extends [ASP.NET Core's distributed cache](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/distributed) infrastructure. It works in-memory by default. You should configure an actual distributed cache provider when you want to deploy your application to a clustered environment. +[ABP's Distributed Cache](../framework/fundamentals/caching.md) extends [ASP.NET Core's distributed cache](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/distributed) infrastructure. It works in memory by default. You should configure an actual distributed cache provider when you want to deploy your application to a clustered environment. -> You should configure the cache provider for clustered deployment, even if your application doesn't directly use `IDistributedCache`. Because the ABP and the pre-built [application modules](../modules) are using distributed cache. +> You should configure the cache provider for clustered deployment, even if your application doesn't directly use `IDistributedCache`. +> The ABP and the pre-built [application modules](../modules) use distributed cache. ASP.NET Core provides multiple integrations to use as your distributed cache provider, like [Redis](https://redis.io/) and [NCache](https://www.alachisoft.com/ncache/). You can follow [Microsoft's documentation](https://docs.microsoft.com/en-us/aspnet/core/performance/caching/distributed) to learn how to use them in your applications. If you decided to use Redis as your distributed cache provider, **follow [ABP's Redis Cache Integration document](../framework/fundamentals/redis-cache.md)** for the steps you need to follow to install it into your application and setup your Redis configuration. -> Based on your preferences while creating a new ABP solution, Redis cache might be pre-installed in your solution. For example, if you have selected the *Tiered* option with the MVC UI, Redis cache comes as pre-installed. Because, in this case, you have two applications in your solution and they should use the same cache source to be consistent. +> Depending on your preferences when creating a new ABP solution, Redis cache might be pre-installed. +> For example, if you select the *Tiered* option with the MVC UI, the Redis cache will be pre-installed by default. +> Because, in this case, you have two applications in your solution that should use the same cache source to be consistent. ## Using a Proper BLOB Storage Provider -If you have used ABP's [BLOB Storing](../framework/infrastructure/blob-storing) feature with the [File System provider](../framework/infrastructure/blob-storing/file-system.md), you should use another provider in your clustered environment since the File System provider uses the application's local file system. +If you use ABP's [BLOB Storing](../framework/infrastructure/blob-storing) feature with the [File System provider](../framework/infrastructure/blob-storing/file-system.md), you should use another provider in your clustered environment since the File System provider uses the application's local file system. -The [Database BLOB provider](../framework/infrastructure/blob-storing/database.md) is the easiest way since it uses your application's main database (or another database if you configure) to store BLOBs. However, you should remember that BLOBs are large objects and may quickly increase your database's size. +The [Database BLOB provider](../framework/infrastructure/blob-storing/database.md) is the easiest way since it uses your application's main database (or another database if you configure it) to store BLOBs. However, you should remember that BLOBs are large objects and may quickly increase your database's size. -> [ABP](https://abp.io/) startup solution templates come with the database BLOB provider as pre-installed, and stores BLOBs in the application's database. +> [ABP](https://abp.io/) startup solution templates come with the database BLOB provider as pre-installed and store BLOBs in the application's database. Check the [BLOB Storing](../framework/infrastructure/blob-storing) document to see all the available BLOB storage providers. ## Configuring Background Jobs -ABP's [background job system](../framework/infrastructure/background-jobs) is used to queue tasks to be executed in the background. Background job queue is persistent and a queued task is guaranteed to be executed (it is re-tried if it fails). +ABP's [background job system](../framework/infrastructure/background-jobs) queues tasks to be executed in the background. The background job queue is persistent, and a queued task is guaranteed to be executed (it will retry if it fails). -ABP's default background job manager is compatible with clustered environments. It uses a [distributed lock](../framework/infrastructure/distributed-locking.md) to ensure that the jobs are executed only in a single application instance at a time. See the *Configuring a Distributed Lock Provider* section below to learn how to configure a distributed lock provider for your application, so the default background job manager properly works in a clustered environment. +ABP's default background job manager is compatible with clustered environments. It uses a [distributed lock](../framework/infrastructure/distributed-locking.md) to ensure that the jobs are executed only in a single application instance at a time. See the *Configuring a Distributed Lock Provider* section below to learn how to configure a distributed lock provider for your application. Hence, the default background job manager properly works in a clustered environment. If you don't want to use a distributed lock provider, you may go with the following options: * Stop the background job manager (set `AbpBackgroundJobOptions.IsJobExecutionEnabled` to `false`) in all application instances except one of them, so only the single instance executes the jobs (while other application instances can still queue jobs). -* Stop the background job manager (set `AbpBackgroundJobOptions.IsJobExecutionEnabled` to `false`) in all application instances and create a dedicated application (maybe a console application running in its own container or a Windows Service running in the background) to execute all the background jobs. This can be a good option if your background jobs consume high system resources (CPU, RAM or Disk), so you can deploy that background application to a dedicated server and your background jobs don't affect your application's performance. +* Stop the background job manager (set `AbpBackgroundJobOptions.IsJobExecutionEnabled` to `false`) in all application instances and create a dedicated application (maybe a console application running in its own container or a Windows Service running in the background) to execute all the background jobs. This can be a good option if your background jobs consume high system resources (CPU, RAM, disk), you can deploy that background application to a dedicated server and your background jobs don't affect your application's performance. > If you are using an external background job integration (e.g. [Hangfire](../framework//infrastructure/background-workers/hangfire.md) or [Quartz](../framework//infrastructure/background-workers/quartz.md)) instead of the default background job manager, then please refer to your provider's documentation to learn how it should be configured for a clustered environment. @@ -82,13 +90,13 @@ If you don't want to use a distributed lock provider, you may go with the follow ABP provides a distributed locking abstraction with an implementation made with the [DistributedLock](https://github.com/madelson/DistributedLock) library. A distributed lock is used to control concurrent access to a shared resource by multiple applications to prevent corruption of the resource because of concurrent writes. The ABP and some pre-built [application modules](../modules) are using distributed locking for several reasons. -However, the distributed lock system works in-process by default. That means it is not distributed actually, unless you configure a distributed lock provider. So, please follow the [distributed lock](../framework/infrastructure/distributed-locking.md) document to configure a provider for your application, if it is not already configured. +However, the distributed lock system works in-process by default. That means it is not actually distributed unless you configure a distributed lock provider. So, please follow the [distributed lock](../framework/infrastructure/distributed-locking.md) document to configure a provider for your application if it is not already configured. ## Configuring SignalR ABP provides [SignalR](../framework/real-time/signalr.md) integration packages to simplify integration and usage. SignalR can be used whenever you need to add real-time web functionality (real-time messaging, real-time notification etc.) into your application. -SignalR requires that all HTTP requests for a specific connection be handled (needs to keep track of all its connections) by the same server process. So, when SignalR is running on a clustered environment (with multiple servers) **"sticky sessions"** must be used. +SignalR requires that all HTTP requests for a specific connection be handled (needs to keep track of all its connections) using the same server process. So, when SignalR is running on a clustered environment (with multiple servers), **"sticky sessions"** must be used. If you are considering [scaling out](https://learn.microsoft.com/en-us/aspnet/core/signalr/scale?view=aspnetcore-6.0#scale-out) your servers and don't want to have inconsistency with the active socket connections, you can use [Azure SignalR Service](https://learn.microsoft.com/en-us/aspnet/core/signalr/scale?view=aspnetcore-6.0#azure-signalr-service) or [Redis backplane](https://learn.microsoft.com/en-us/aspnet/core/signalr/scale?view=aspnetcore-6.0#redis-backplane). @@ -100,10 +108,10 @@ ASP.NET Core provides [hosted services](https://docs.microsoft.com/en-us/aspnet/ If your application has tasks running in the background, you should consider how they will behave in a clustered environment, especially if your background tasks are using the same resources. You should design your background tasks so that they continue to work properly in the clustered environment. -Assume that your background worker in your SaaS application checks user subscriptions and sends emails if their subscription renewal date approaches. If the background task runs in multiple application instances, it is probable to send the same email many times to some users, which will disturb them. +Suppose your SaaS application checks user subscriptions in the background and sends emails to those whose subscription renewal dates are approaching. If the background task runs on multiple application instances, users may get duplicate e-mails. -We suggest you to use one of the following approaches to overcome the problem: +Use one of the following approaches to overcome the **multiple workers same pool problem**: -* Implement your background workers so that they work in a clustered environment without any problem. Using the [distributed lock](../framework/infrastructure/distributed-locking.md) to ensure concurrency control is a way of doing that. A background worker in an application instance may handle a distributed lock, so the workers in other application instances will wait for the lock. In this way, only one worker does the actual work, while others wait in idle. If you implement this, your workers run safely without caring about how the application is deployed. +* Implement your background workers so that they work in a clustered environment without any problems. Using the [distributed lock](../framework/infrastructure/distributed-locking.md) to ensure concurrency control is a way of doing that. A background worker in an application instance may handle a distributed lock, so the workers in other application instances will wait for the lock. In this way, only one worker does the actual work while others wait in an idle state. If you implement this, your workers run safely without caring about how the application is deployed. * Stop the background workers (set `AbpBackgroundWorkerOptions.IsEnabled` to `false`) in all application instances except one of them, so only the single instance runs the workers. -* Stop the background workers (set `AbpBackgroundWorkerOptions.IsEnabled` to `false`) in all application instances and create a dedicated application (maybe a console application running in its own container or a Windows Service running in the background) to execute all the background tasks. This can be a good option if your background workers consume high system resources (CPU, RAM or Disk), so you can deploy that background application to a dedicated server and your background tasks don't affect your application's performance. +* Stop the background workers (set `AbpBackgroundWorkerOptions.IsEnabled` to `false`) in all application instances and create a dedicated application (maybe a console application running in its own container or a Windows Service running in the background) to execute all the background tasks. This can be a good option if your background workers consume high system resources (CPU, RAM, disk), so you can deploy that background application to a dedicated server and your background tasks don't affect your application's performance. diff --git a/docs/en/deployment/configuring-openIddict.md b/docs/en/deployment/configuring-openIddict.md index b044bcb275..30b8078098 100644 --- a/docs/en/deployment/configuring-openIddict.md +++ b/docs/en/deployment/configuring-openIddict.md @@ -26,7 +26,7 @@ public override void PreConfigureServices(ServiceConfigurationContext context) ## Development Environment -We've enabled `AddDevelopmentEncryptionAndSigningCertificate` by default on the development environment. It registers (and generates if necessary) a user-specific development encryption/development signing certificate. This is a certificate used for signing and encrypting the tokens and for **development environment only**. +`AddDevelopmentEncryptionAndSigningCertificate` is enabled by default on the development environment. It registers (and also generates, if necessary, a user-specific development encryption/development signing certificate. This is a certificate used for signing and encrypting the tokens and for **development environment only**. `AddDevelopmentEncryptionAndSigningCertificate` cannot be used in applications deployed on IIS or Azure App Service: trying to use them on IIS or Azure App Service will result in an exception being thrown at runtime (unless the application pool is configured to [load a user profile](https://learn.microsoft.com/en-us/iis/manage/configuring-security/application-pool-identities#user-profile)). @@ -34,9 +34,9 @@ To avoid that, consider creating self-signed certificates and storing them in th ## Production Environment -We've disabled `AddDevelopmentEncryptionAndSigningCertificate` in the production environment and tried to setup signing and encrypting certificates using `openiddict.pfx` file. +`AddDevelopmentEncryptionAndSigningCertificate` is disabled in production environment. Signing and encryption of certificates is done using `openiddict.pfx` file in production environment. -You can use the `dotnet dev-certs https -v -ep openiddict.pfx -p 00000000-0000-0000-0000-000000000000` command to generate the `authserver.pfx` certificate. +You can use the `dotnet dev-certs https -v -ep openiddict.pfx -p 00000000-0000-0000-0000-000000000000` command to generate the `openiddict.pfx` certificate. > `00000000-0000-0000-0000-000000000000` is the password of the certificate, you can change it to any password you want. diff --git a/docs/en/deployment/configuring-production.md b/docs/en/deployment/configuring-production.md index 0eb9b0ba81..1480f933fe 100644 --- a/docs/en/deployment/configuring-production.md +++ b/docs/en/deployment/configuring-production.md @@ -1,10 +1,13 @@ # Configuring Your Application for Production Environments -ABP has a lot of options to configure and fine-tune its features. They are all explained in their own documents. Default values for these options are pretty well for most of the deployment environments. However, you may need to care about some options based on how you've structured your deployment environment. In this document, we will highlight these kind of options. So, it is highly recommended to read this document in order to not have unexpected behaviors in your system in production. +ABP predefines the configurations for the best performance for common deployment scenarios. +However, depending on how you have structured your deployment environment, you may need to consider some extra options. This document highlights these options. +It is highly recommended that you read it to prevent unexpected behaviors in your production environment. ## Distributed Cache Prefix -ABP's [distributed cache infrastructure](../framework/fundamentals/caching.md) provides an option to set a key prefix for all of your data that is saved into your distributed cache provider. The default value of this option is not set (it is `null`). If you are using a distributed cache server that is shared by different applications, then you can set a prefix value to isolate an application's cache data from others. +ABP's [distributed cache infrastructure](../framework/fundamentals/caching.md) provides an option to set a key prefix for all your data saved into your distributed cache provider. +The default value of this option is not set (it is `null`). If you are using a distributed cache server that is shared by different applications, then you can set a prefix value to isolate an application's cache data from others. ````csharp Configure(options => @@ -13,19 +16,21 @@ Configure(options => }); ```` -That's all. ABP, then will add this prefix to all of your cache keys in your application as along as you use ABP's `IDistributedCache` or `IDistributedCache` services. See the [Caching documentation](../framework/fundamentals/caching.md) if you are new to distributed caching. +That's all! This prefix will be added to all cache keys in your application, as long as you use ABP's `IDistributedCache` or `IDistributedCache` services. +If you are new to distributed caching, check out the [caching documentation](../framework/fundamentals/caching.md). -> **Warning**: If you use ASP.NET Core's standard `IDistributedCache` service, it's your responsibility to add the key prefix (you can get the value by injecting `IOptions`). ABP can not do it. + +> **Warning**: If you use ASP.NET Core's standard `IDistributedCache` [service](https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.caching.distributed.idistributedcache), it is your responsibility to add the key prefix (you can get the value by injecting `IOptions`). ABP can not do it anymore. > **Warning**: Even if you have never used distributed caching in your own codebase, ABP still uses it for some features. So, you should always configure this prefix if your caching server is shared among multiple systems. -> **Warning**: If you are building a microservice system, then you will have multiple applications that share the same distributed cache server. In such systems, all applications (or services) should normally use the same cache prefix, because you want all the applications to use the same cache data to have consistency between them. +> **Warning**: If you are building a microservice architecture, then you will have multiple applications that share the same distributed cache server. All applications (sub-services) in these systems should use the same cache prefix and cache values to have application-wide consistency. -> **Warning**: Some of ABP's startup templates are pre-configured to set a prefix value for the distributed cache. So, please check your application code if it is already configured. +> **Warning**: Some of ABP's startup templates are pre-configured to set a prefix value for the distributed cache. If your application code is already configured, please check it. ## Distributed Lock Prefix -ABP's [distributed locking infrastructure](../framework/infrastructure/distributed-locking.md) provides an option to set a prefix for all the keys you are using in the distributed lock server. The default value of this option is not set (it is `null`). If you are using a distributed lock server that is shared by different applications, then you can set a prefix value to isolate an application's lock from others. +ABP's [distributed locking infrastructure](../framework/infrastructure/distributed-locking.md) provides an option to set a prefix for all the keys you use in the distributed lock server. The default value of this option is not set (it is `null`). If you use a distributed lock server shared by different applications, you can set a prefix value to isolate an application's lock from others. ````csharp Configure(options => @@ -34,29 +39,31 @@ Configure(options => }); ```` -That's all. ABP, then will add this prefix to all of your keys in your application. See the [Distributed Locking documentation](../framework/infrastructure/distributed-locking.md) if you are new to distributed locking. +That's all! ABP will add this prefix to all of your keys in your application. See the [Distributed Locking documentation](../framework/infrastructure/distributed-locking.md) if you are new to distributed locking. > **Warning**: Even if you have never used distributed locking in your own codebase, ABP still uses it for some features. So, you should always configure this prefix if your distributed lock server is shared among multiple systems. > **Warning**: If you are building a microservice system, then you will have multiple applications that share the same distributed locking server. In such systems, all applications (or services) should normally use the same lock prefix, because you want to globally lock your resources in your system. -> **Warning**: Some of ABP's startup templates are pre-configured to set a prefix value for distributed locking. So, please check your application code if it is already configured. +> **Warning**: Some of ABP's startup templates are pre-configured to set a prefix value for distributed locking. Please check your application code to see if it has already been configured. ## Email Sender ABP's [Email Sending](../framework/infrastructure/emailing.md) system abstracts sending emails from your application and module code and allows you to configure the email provider and settings in a single place. -Email service is configured to write email contents to the standard [application log](../framework/fundamentals/logging.md) in development environment. You should configure the email settings to be able to send emails to users in your production environment. +For the development environment, ABP will not send real emails. The email service is configured to write email contents in the development environment's standard [application log](../framework/fundamentals/logging.md). By default, it will write to the `Logs.txt` in your host project's `Logs` folder. You should configure the email settings to be able to send emails to users in your production environment. -Please see the [Email Sending](../framework/infrastructure/emailing.md) document to learn how to configure its settings to really send emails. +See the [Sending Email](../framework/infrastructure/emailing.md) document to learn what settings to configure to send actual email without writing to the logs. > **Warning**: If you don't configure the email settings, you will get errors while trying to send emails. For example, the [Account module](../modules/account.md)'s *Password Reset* feature sends email to the users to reset their passwords if they forget it. ## SMS Sender -ABP's [SMS Sending abstraction](../framework/infrastructure/sms-sending.md) provides a unified interface to send SMS to users. However, its implementation is left to you. Because, typically a paid SMS service is used to send SMS, and ABP doesn't depend on a specific SMS provider. +ABP's [SMS Sending abstraction](../framework/infrastructure/sms-sending.md) provides a unified interface for sending SMS to users. +However, its implementation is left to you. Typically, a paid SMS service is used to send SMS, and ABP doesn't depend on a specific SMS provider. +> PRO users can use the [Twilio SMS module](../modules/twilio-sms.md) to send SMS. -So, if you are using the `ISmsSender` service, you must implement it yourself, as shown in the following code block: +In the following code-block you can see where to implement the `ISmsSender` service: ````csharp public class MySmsSender : ISmsSender, ITransientDependency @@ -89,11 +96,11 @@ Configure(options => }); ```` -Note that ABP CLI automatically sets the password to a random value on a new project creation. However, it is stored in the `appsettings.json` file and is generally added to your source control. It is suggested to use [User Secrets](https://learn.microsoft.com/en-us/aspnet/core/security/app-secrets) or [Environment Variables](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/configuration) to set that value. +Note that ABP CLI automatically sets the password to a random value on new project creation. However, it is stored in the `appsettings.json` file and is generally added to your source control. It is suggested to use [User Secrets](https://learn.microsoft.com/en-us/aspnet/core/security/app-secrets) or [Environment Variables](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/configuration) to set that value. ## Logging -ABP uses .NET's standard [Logging services](../framework/fundamentals/logging.md). So, it is compatible with any logging provider that works with .NET. ABP's startup solution templates come with [Serilog](https://serilog.net/) pre-installed and configured for you. It writes logs to file system and console with the initial configuration. File system is useful for development environment, but it is suggested you to use a different provider for your production environment, like Elasticsearch, database or any other provider that can properly work. +ABP uses .NET's standard [Logging services](../framework/fundamentals/logging.md). So, it is compatible with any logging provider that works with .NET. ABP's startup solution templates come with [Serilog](https://serilog.net/) pre-installed and configured for you. It writes logs to the file system and console with the initial configuration. The file system is useful for the development environment, but it is suggested you use a different provider for your production environment, like Elasticsearch, database or any other provider that can properly work. ## The Swagger UI diff --git a/docs/en/deployment/distributed-microservice.md b/docs/en/deployment/distributed-microservice.md index 933edf61cd..1a020b1e1b 100644 --- a/docs/en/deployment/distributed-microservice.md +++ b/docs/en/deployment/distributed-microservice.md @@ -1,6 +1,6 @@ # Deploying Distributed / Microservice Solutions -The ABP is designed to consider distributed and microservice systems, where you have multiple applications and/or services communicating internally. All of its features are compatible with distributed scenarios. This document highlights some points you should care about when you deploy your distributed or microservice solution. +ABP is designed for distributed and microservice systems, where multiple applications and/or services communicate internally. All of its features are compatible with distributed scenarios. This document highlights some points you should consider when deploying your distributed or microservice solution. ## Application Name & Instance Id @@ -9,7 +9,7 @@ ABP provides the `IApplicationInfoAccessor` service that provides the following * `ApplicationName`: A human-readable name for an application. It is a unique value for an application. * `InstanceId`: A random (GUID) value generated by the ABP each time you start the application. -These values are used by the ABP in several places to distinguish the application and the application instance (process) in the system. For example, the [audit logging](../framework/infrastructure/audit-logging.md) system saves the `ApplicationName` in each audit log record written by the related application, so you can understand which application has created the audit log entry. So, if your system consists of multiple applications saving audit logs to a single point, you should be sure that each application has a different `ApplicationName`. +ABP uses these values in several places to distinguish the application and the application instance (process) in the system. For example, the [audit logging](../framework/infrastructure/audit-logging.md) system saves the `ApplicationName` in each audit log record written by the related application so you can understand which application has created the audit log entry. So, if your system consists of multiple applications saving audit logs to a single point, you should be sure that each application has a different `ApplicationName`. The `ApplicationName` property's value is set automatically from the **entry assembly's name** (generally, the project name in a .NET solution) by default, which is proper for most cases, since each application typically has a unique entry assembly name. @@ -32,13 +32,13 @@ await builder.AddApplicationAsync(options => ## Using a Distributed Event Bus -ABP's [Distributed Event Bus](../framework/infrastructure/event-bus/distributed) system provides a standard interface to communicate with other applications and services. While the name is "distributed", the default implementation is in-process. That means, your applications / services can not communicate with each other unless you explicitly configure a distributed event bus provider. +ABP's [Distributed Event Bus](../framework/infrastructure/event-bus/distributed) system provides a standard interface for communicating with other applications and services. While the name is "distributed," the default implementation is in process. That means your applications/services can not communicate with each other unless you explicitly configure a distributed event bus provider. -If you are building a distributed system, then the applications should communicate through an external distributed messaging server. Please follow the [Distributed Event Bus](../framework/infrastructure/event-bus/distributed) document to learn how to install and configure your distributed event bus provider. +The applications should communicate through an external distributed messaging server if you are building a distributed system. Please follow the [Distributed Event Bus](../framework/infrastructure/event-bus/distributed) document to learn how to install and configure your distributed event bus provider. -> **Warning**: Even if you don't use the distributed event bus directly in your application code, the ABP and some of the modules you are using may use it. So, if you are building a distributed system, always configure a distributed event bus provider. +> **Warning**: Even if you do not use the distributed event bus directly in your application code, ABP and some of the modules you are using may use it. So, if you are building a distributed system, always configure a distributed event bus provider. -> **Info**: [Clustered deployment](./clustered-environment.md) of a single application is not considered as a distributed system. So, if you only have a single application with multiple instances serving behind a load balancer, a real distributed messaging server may not be needed. +> **Info**: [Clustered deployment](./clustered-environment.md) of a single application is not considered as distributed system. So, a real distributed messaging server may not be needed if you only have a single application with multiple instances serving behind a load balancer. ## See Also diff --git a/docs/en/deployment/index.md b/docs/en/deployment/index.md index 50b6fd0938..3537e4593e 100644 --- a/docs/en/deployment/index.md +++ b/docs/en/deployment/index.md @@ -1,6 +1,6 @@ # Deployment -Deploying an ABP application is not different than deploying any .NET or ASP.NET Core application. You can deploy it to a cloud provider (e.g. Azure, AWS, Google Could) or on-premise server, IIS or any other web server. ABP's documentation doesn't contain much information on deployment. You can refer to your provider's documentation. +Deploying an ABP application is not different than deploying any .NET or ASP.NET Core application. You can deploy it to a cloud provider (e.g., Azure, AWS, Google Could) or an on-premise server, IIS or any other web server. ABP's documentation doesn't contain much information on deployment. You can refer to your provider's documentation. However, there are some topics that you should care about when you are deploying your applications. Most of them are general software deployment considerations, but you should understand how to handle them within your ABP based applications. We've prepared guides for this purpose and we suggest you to read these guides carefully before designing your deployment configuration. @@ -9,6 +9,6 @@ However, there are some topics that you should care about when you are deploying * [Configuring SSL certificate(HTTPS)](./ssl.md): Explains how to configure SSL certificate(HTTPS) for your application. * [Configuring OpenIddict](./configuring-openIddict.md): Notes for some essential configurations for OpenIddict. * [Configuring for Production](./configuring-production.md): Notes for some essential configurations for production environments. -* [Optimization for Production](./optimizing-production.md): Tips and suggestions for optimizing your application on production environments. +* [Optimization for Production](./optimizing-production.md): Tips and suggestions for optimizing your application in production environments. * [Deploying to a Clustered Environment](./clustered-environment.md): Explains how to configure your application when you want to run multiple instances of your application concurrently. * [Deploying Distributed / Microservice Solutions](./distributed-microservice.md): Deployment notes for solutions consisting of multiple applications and/or services. diff --git a/docs/en/deployment/optimizing-production.md b/docs/en/deployment/optimizing-production.md index 3803493be7..d6689b77fe 100644 --- a/docs/en/deployment/optimizing-production.md +++ b/docs/en/deployment/optimizing-production.md @@ -1,22 +1,26 @@ # Optimizing Your Application for Production Environments -ABP and the startup solution templates are configured well to get the maximum performance on production environments. However, there are still some points you need to pay attention to in order to optimize your system in production. In this document, we will mention some of these topics. +ABP and the startup solution templates are configured well to get the maximum performance on production environments. +However, you still need to pay attention to some points to optimize your system in production. +This document will explain optimization points for the production environment. ## Caching Static Contents -The following items are contents that can be cached in the client side (typically in the Browser) or in a CDN server: +The following items are contents that can be cached on the client side (typically in the Browser) or in a CDN server: -* **Static images** can always be cached. Here, you should be careful that if you change an image, use a different file name, or use a versioning query-string parameter, so the browser (or CDN) understands it's been changed. -* **CSS and JavaScript files**. ABP's [bundling & minification](../framework/ui/mvc-razor-pages/bundling-minification.md) system always uses a query-string versioning parameter and a hash value in the files names of the CSS & JavaScript files for the [MVC (Razor Pages)](../framework/ui/mvc-razor-pages/overall.md) UI. So, you can safely cache these files in the client side or in a CDN server. +* **Static images** can always be cached. Here, you should be careful that if you change an image, use a different file name, or use a versioning query-string parameter so the browser (or CDN) understands it's been changed. +* **CSS and JavaScript files**. ABP's [bundling & minification](../framework/ui/mvc-razor-pages/bundling-minification.md) system always uses a query-string versioning parameter and a hash value in the files names of the CSS & JavaScript files for the [MVC (Razor Pages)](../framework/ui/mvc-razor-pages/overall.md) UI. So you can safely cache these files on the client side or on a CDN server. * **Application bundle files** of an [Angular UI](../framework/ui/angular/quick-start.md) application. -* **[Application Localization Endpoint](../framework/api-development/standard-apis/localization.md)** can be cached per culture (it already has a `cultureName` query string parameter) if you don't use dynamic localization on the server-side. ABP's [Language Management](https://abp.io/modules/Volo.LanguageManagement) module provides dynamic localization. If you're using it, you can't cache that endpoint forever. However, you can still cache it for a while. Applying dynamic localization text changes to the application can delay for a few minutes, even for a few hours in a real life scenario. +* **[Application Localization Endpoint](../framework/api-development/standard-apis/localization.md)** can be cached per culture (it already has a `cultureName` query string parameter) if you don't use dynamic localization on the server-side. ABP's [Language Management](https://abp.io/modules/Volo.LanguageManagement) module provides dynamic localization. If you're using it, you can't cache that endpoint forever. However, you can still cache it for a while. Applying dynamic localization text changes to the application can delay a few minutes, even a few hours, in a real-life scenario. -There may be more ways based on your solution structure and deployment environment, but these are the essential points you should consider to client-side cache in a production environment. +There may be more ways based on your solution structure and deployment environment, but these are the essential points you should consider for client-side cache in a production environment. ## Bundling & Minification for MVC (Razor Pages) UI -ABP's [bundling & minification](../framework/ui/mvc-razor-pages/bundling-minification.md) system automatically bundles, minifies and versions your CSS and JavaScript files in production environment. Normally, you don't need to do anything, if you haven't disabled it yourself in your application code. It is important to follow the [bundling & minification](../framework/ui/mvc-razor-pages/bundling-minification.md) document and truly use the system to get the maximum optimization. +ABP's [bundling & minification](../framework/ui/mvc-razor-pages/bundling-minification.md) system automatically bundles, minifies and versions your CSS and JavaScript files in the production environment. +Normally, you don't need to do anything if you have not disabled it yourself in your application code. +It is important to follow the [bundling & minification](../framework/ui/mvc-razor-pages/bundling-minification.md) document and truly use the system to get the maximum optimization. ## Background Jobs -ABP's [Background Jobs](../framework/infrastructure/background-jobs) system provides an abstraction with a basic implementation to enqueue jobs and execute them in a background thread. ABP's Default Background Job Manager may not be enough if you are adding too many jobs to the queue and want them to be executed in parallel by multiple servers with a high performance. If you need these, you should consider to configure a dedicated background job software, like [Hangfire](https://www.hangfire.io/). ABP has a pre-built [Hangfire integration](../framework/infrastructure/background-jobs/hangfire.md), so you can switch to Hangfire without changing your application code. +ABP's [Background Jobs](../framework/infrastructure/background-jobs) system provides an abstraction with a basic implementation to enqueue jobs and execute them in a background thread. ABP's Default Background Job Manager may not be enough if you are adding too many jobs to the queue and want them to be executed in parallel by multiple servers with a high performance. If you need these, you should consider configuring a dedicated background job software, like [Hangfire](https://www.hangfire.io/). ABP has a pre-built [Hangfire integration](../framework/infrastructure/background-jobs/hangfire.md), so you can switch to Hangfire without changing your application code. diff --git a/docs/en/deployment/ssl.md b/docs/en/deployment/ssl.md index e1f463dba8..8ad1bc177a 100644 --- a/docs/en/deployment/ssl.md +++ b/docs/en/deployment/ssl.md @@ -1,10 +1,10 @@ -# Configuring Configuring SSL certificate(HTTPS) +# Configuring SSL certificate(HTTPS) -A website needs an SSL certificate in order to keep user data secure, verify ownership of the website, prevent attackers from creating a fake version of the site, and gain user trust. +A website needs an SSL certificate to keep user data secure, verify ownership, prevent attackers from creating a fake version of the site, and gain user trust. -This document introduces how to get and use SSL certificate(HTTPS) for your application. +This document introduces how to get and use an SSL certificate (HTTPS) for your application. -## Get a SSL Certificate from a Certificate Authority +## Get an SSL Certificate from a Certificate Authority You can get a SSL certificate from a certificate authority (CA) such as [Let's Encrypt](https://letsencrypt.org/) or [Cloudflare](https://www.cloudflare.com/learning/ssl/what-is-an-ssl-certificate/) and so on. @@ -18,7 +18,7 @@ Once you have a certificate, you need to configure your web server to use it. Th You can create a self-signed certificate for testing purposes or internal use. -There is an article about [how to create a self-signed certificate](https://learn.microsoft.com/en-us/dotnet/core/additional-tools/self-signed-certificates-guide), If you are using IIS, you can use the following this document to [obtain a Certificate](https://learn.microsoft.com/en-us/iis/manage/configuring-security/how-to-set-up-ssl-on-iis#obtain-a-certificate) +There is an article about [how to create a self-signed certificate](https://learn.microsoft.com/en-us/dotnet/core/additional-tools/self-signed-certificates-guide); if you are using IIS, you can use the following document to [obtain a Certificate](https://learn.microsoft.com/en-us/iis/manage/configuring-security/how-to-set-up-ssl-on-iis#obtain-a-certificate) ## Common Problems @@ -31,4 +31,4 @@ This error may occur when using IIS. You need to trust your certificate by `Mana * [ABP IIS Deployment](./index.md) * [HTTPS in ASP.NET Core](https://learn.microsoft.com/en-us/aspnet/core/security/enforcing-ssl) * [Let's Encrypt](https://letsencrypt.org/getting-started) -* [Cloudflare's Free SSL / TLS](https://www.cloudflare.com/application-services/products/ssl/) \ No newline at end of file +* [Cloudflare's Free SSL / TLS](https://www.cloudflare.com/application-services/products/ssl/) diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index c47a12d754..596b961c50 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -1,41 +1,41 @@ { "items": [ { - "text": "Get started", + "text": "Get Started", "items": [ { "text": "Overview", "path": "get-started" }, { - "text": "Single-layer solution", + "text": "Single Layer Web Application", "path": "get-started/single-layer-web-application.md" }, { - "text": "Layered solution", + "text": "Layered Web Application", "path": "get-started/layered-web-application.md" }, { - "text": "Microservice solution", + "text": "Microservice Solution", "path": "get-started/microservice.md" }, { "text": "Others", "items": [ { - "text": "Empty ASP.NET Core application", + "text": "Empty ASP.NET Core Application", "path": "get-started/empty-aspnet-core-application.md" }, { - "text": "MAUI application", + "text": "MAUI Application", "path": "get-started/maui.md" }, { - "text": "WPF application", + "text": "WPF Application", "path": "get-started/wpf.md" }, { - "text": "Console application", + "text": "Console Application", "path": "get-started/console.md" } ] @@ -57,11 +57,11 @@ "path": "tutorials/todo" }, { - "text": "Single-layer solution", + "text": "Single-Layer Solution", "path": "tutorials/todo/single-layer" }, { - "text": "Layered solution", + "text": "Layered Solution", "path": "tutorials/todo/layered" } ] @@ -74,19 +74,19 @@ "path": "tutorials/book-store" }, { - "text": "1: Creating the server side", + "text": "1: Creating the Server Side", "path": "tutorials/book-store/part-01.md" }, { - "text": "2: The Book List page", + "text": "2: The Book List Page", "path": "tutorials/book-store/part-02.md" }, { - "text": "3: Creating, updating and deleting books", + "text": "3: Creating, Updating and Deleting Books", "path": "tutorials/book-store/part-03.md" }, { - "text": "4: Integration tests", + "text": "4: Integration Tests", "path": "tutorials/book-store/part-04.md" }, { @@ -94,23 +94,23 @@ "path": "tutorials/book-store/part-05.md" }, { - "text": "6: Authors: Domain layer", + "text": "6: Authors: Domain Layer", "path": "tutorials/book-store/part-06.md" }, { - "text": "7: Authors: Database integration", + "text": "7: Authors: Database Integration", "path": "tutorials/book-store/part-07.md" }, { - "text": "8: Authors: Application layer", + "text": "8: Authors: Application Layer", "path": "tutorials/book-store/part-08.md" }, { - "text": "9: Authors: User interface", + "text": "9: Authors: User Interface", "path": "tutorials/book-store/part-09.md" }, { - "text": "10: Book to author relation", + "text": "10: Book to Author Relation", "path": "tutorials/book-store/part-10.md" } ] @@ -123,35 +123,35 @@ "path": "tutorials/modular-crm/index.md" }, { - "text": "1: Creating the initial solution", + "text": "1: Creating the Initial Solution", "path": "tutorials/modular-crm/part-01.md" }, { - "text": "2: Creating the initial Products module", + "text": "2: Creating the Initial Products Module", "path": "tutorials/modular-crm/part-02.md" }, { - "text": "3: Building the Products module", + "text": "3: Building the Products Module", "path": "tutorials/modular-crm/part-03.md" }, { - "text": "4: Creating the initial Ordering module", + "text": "4: Creating the Initial Ordering Module", "path": "tutorials/modular-crm/part-04.md" }, { - "text": "5: Building the Ordering module", + "text": "5: Building the Ordering Module", "path": "tutorials/modular-crm/part-05.md" }, { - "text": "6: Integrating the modules: Implementing Integration Services", + "text": "6: Integrating the Modules: Implementing Integration Services", "path": "tutorials/modular-crm/part-06.md" }, { - "text": "7: Integrating the modules: Communication via Messages (Events)", + "text": "7: Integrating the Modules: Communication via Messages (Events)", "path": "tutorials/modular-crm/part-07.md" }, { - "text": "8: Integrating the modules: Joining the Products and Orders Data", + "text": "8: Integrating the Modules: Joining the Products and Orders Data", "path": "tutorials/modular-crm/part-08.md" } ] @@ -214,7 +214,7 @@ "path": "cli" }, { - "text": "Examples for the new command", + "text": "New Solution Sample Commands", "path": "cli/new-command-samples.md" } ] @@ -264,8 +264,8 @@ "path": "studio/concepts.md" }, { - "text": "Version Compatibility", - "path": "studio/version-compatibility.md" + "text": "Version Mapping", + "path": "studio/version-mapping.md" }, { "text": "Release Notes", @@ -293,7 +293,7 @@ "path": "suite/add-solution.md" }, { - "text": "Creating new ABP solution", + "text": "Creating New ABP Solution", "path": "suite/create-solution.md" }, { @@ -308,7 +308,7 @@ "path": "suite/creating-many-to-many-relationship.md" }, { - "text": "Generating from an Existing Database", + "text": "Generating From an Existing Database", "path": "suite/generating-entities-from-an-existing-database-table.md" }, { @@ -338,7 +338,7 @@ "path": "suite/editing-templates.md" }, { - "text": "How to uninstall", + "text": "How to Uninstall", "path": "suite/how-to-uninstall.md" } ] @@ -373,7 +373,7 @@ ] }, { - "text": "Caching", + "text": "Distributed Caching", "items": [ { "text": "Overview", @@ -690,7 +690,7 @@ "path": "framework/architecture" }, { - "text": "Best Practices", + "text": "Module Development Best Practices", "items": [ { "text": "Overview", @@ -926,7 +926,7 @@ "items": [ { "text": "Overview", - "path": "framework/ui/mvc-razor-pages/overall" + "path": "framework/ui/mvc-razor-pages/overall.md" }, { "text": "Navigation / Menus", @@ -1221,7 +1221,7 @@ "text": "Other Components", "items": [ { - "text": "SubmitButton", + "text": "SubmitButton Component", "path": "framework/ui/blazor/components/submit-button.md" } ] @@ -1263,6 +1263,10 @@ { "text": "Angular", "items": [ + { + "text": "Overview", + "path": "framework/ui/angular/overview.md" + }, { "text": "Quick Start", "path": "framework/ui/angular/quick-start.md" @@ -1315,7 +1319,7 @@ "path": "framework/ui/angular/http-requests.md" }, { - "text": "Customize Error Handling", + "text": "Error Handling", "path": "framework/ui/angular/http-error-handling.md" } ] @@ -1475,6 +1479,10 @@ "text": "Modifying the Menu", "path": "framework/ui/angular/modifying-the-menu.md" }, + { + "text": "Manage Profile Page Tabs", + "path": "framework/ui/angular/manage-profile-page-tabs.md" + }, { "text": "Sorting Navigation Elements", "path": "framework/ui/angular/sorting-navigation-elements.md" @@ -1528,6 +1536,18 @@ { "text": "Card", "path": "framework/ui/angular/card-component.md" + }, + { + "text": "Password Complexity Indicator", + "path": "framework/ui/angular/password-complexity-indicator-component.md" + }, + { + "text": "Lookup Components(Pro)", + "path": "framework/ui/angular/lookup-components.md" + }, + { + "text": "Entity Filters(Pro)", + "path": "framework/ui/angular/entity-filters.md" } ] } @@ -1655,13 +1675,62 @@ "text": "Overview", "path": "solution-templates" }, + { + "text": "Template Guide", + "path": "solution-templates/guide.md" + }, { "text": "Single-Layer Solution", "path": "solution-templates/single-layer-web-application" }, { "text": "Layered Solution", - "path": "solution-templates/layered-web-application" + "path": "solution-templates/layered-web-application", + "items": [ + { + "text": "Deployment", + "path": "solution-templates/layered-web-application/deployment", + "items": [ + { + "text": "Docker Deployment", + "path": "solution-templates/layered-web-application/deployment/deployment-docker-compose.md" + }, + { + "text": "Azure Deployment", + "items": [ + { + "text": "Deploy to Azure Web App Service", + "path": "solution-templates/layered-web-application/deployment/azure-deployment/azure-deployment.md" + }, + { + "text": "Creating an Azure Web App Service Environment", + "path": "solution-templates/layered-web-application/deployment/azure-deployment/step1-create-azure-resources.md" + }, + { + "text": "Customizing the Configuration of Your ABP Application", + "path": "solution-templates/layered-web-application/deployment/azure-deployment/step2-configuration-application.md" + }, + { + "text": "Deploying Application With GitHub Actions", + "path": "solution-templates/layered-web-application/deployment/azure-deployment/step3-deployment-github-action.md" + } + ] + }, + { + "text": "IIS Deployment", + "path": "solution-templates/layered-web-application/deployment/deployment-iis.md" + }, + { + "text": "IdentityServer Deployment", + "path": "solution-templates/layered-web-application/deployment/identityserver-deployment.md" + }, + { + "text": "OpenIddict Deployment", + "path": "solution-templates/layered-web-application/deployment/openiddict-deployment.md" + } + ] + } + ] }, { "text": "Microservice Solution", @@ -1686,7 +1755,16 @@ }, { "text": "Account (Pro)", - "path": "modules/account-pro.md" + "items": [ + { + "text": "Overview", + "path": "modules/account-pro.md" + }, + { + "text": "Tenant impersonation & User impersonation", + "path": "modules/account/impersonation.md" + } + ] }, { "text": "Audit Logging", @@ -1899,13 +1977,17 @@ "text": "Overview", "path": "samples" }, + { + "text": "EventHub", + "path": "https://github.com/abpframework/eventhub" + }, { "text": "eShopOnAbp", "path": "https://github.com/abpframework/eShopOnAbp" }, { - "text": "EventHub", - "path": "https://github.com/abpframework/eventhub" + "text": "CMS Kit Demo", + "path": "https://github.com/abpframework/cms-kit-demo" }, { "text": "Easy CRM", @@ -1983,7 +2065,7 @@ "path": "others/why-abp-platform.md" }, { - "text": "Free license vs Pro licenses?", + "text": "Free (Open Source) License vs Commercial (Pro) Licenses", "path": "others/free-licenses-vs-pro-licenses.md" }, { @@ -1991,7 +2073,7 @@ "path": "others/penetration-test-report.md" }, { - "text": "ASP.NET Zero vs ABP", + "text": "ABP vs ASP.NET Zero", "path": "others/aspnet-zero-vs-abp.md" }, { diff --git a/docs/en/docs-params.json b/docs/en/docs-params.json index 46e496f248..e108f1b554 100644 --- a/docs/en/docs-params.json +++ b/docs/en/docs-params.json @@ -7,6 +7,7 @@ "MVC": "MVC / Razor Pages", "Blazor": "Blazor WebAssembly", "BlazorServer": "Blazor Server", + "BlazorWebApp": "Blazor WebApp", "NG": "Angular" } }, diff --git a/docs/en/framework/api-development/index.md b/docs/en/framework/api-development/index.md index 2f55487b1c..1d9736388f 100644 --- a/docs/en/framework/api-development/index.md +++ b/docs/en/framework/api-development/index.md @@ -1,4 +1,4 @@ -## API Development +# API Development The following documents explain the concepts, infrastructure and integrations to build HTTP APIs with ABP: diff --git a/docs/en/framework/api-development/standard-apis/index.md b/docs/en/framework/api-development/standard-apis/index.md index 3dd4a284f5..531d76bbd9 100644 --- a/docs/en/framework/api-development/standard-apis/index.md +++ b/docs/en/framework/api-development/standard-apis/index.md @@ -1,4 +1,4 @@ -## Standard HTTP API Endpoints +# Standard HTTP API Endpoints ABP provides some pre-built and standard endpoints that contains useful information about the application or service, such as localization entries and settings. Here, is the list of the pre-built endpoints: diff --git a/docs/en/framework/architecture/best-practices/application-layer-overview.md b/docs/en/framework/architecture/best-practices/application-layer-overview.md index 10afeeb9ca..f834d02615 100644 --- a/docs/en/framework/architecture/best-practices/application-layer-overview.md +++ b/docs/en/framework/architecture/best-practices/application-layer-overview.md @@ -1,4 +1,4 @@ -## Best Practices: Application Layer +# Best Practices: Application Layer The following documents suggest some best-practices that you can use while implementing the application layer of your solution by following the Domain Driven Design principles: diff --git a/docs/en/framework/architecture/best-practices/data-access-overview.md b/docs/en/framework/architecture/best-practices/data-access-overview.md index 1369a21e32..28dd6b274d 100644 --- a/docs/en/framework/architecture/best-practices/data-access-overview.md +++ b/docs/en/framework/architecture/best-practices/data-access-overview.md @@ -1,4 +1,4 @@ -## Best Practices: Data Access +# Best Practices: Data Access The following documents suggest some best-practices that you can use while implementing the database integration layer of your solution by following Domain Driven Design principles: diff --git a/docs/en/framework/architecture/best-practices/domain-layer-overview.md b/docs/en/framework/architecture/best-practices/domain-layer-overview.md index b20ae1b208..bfdd286c28 100644 --- a/docs/en/framework/architecture/best-practices/domain-layer-overview.md +++ b/docs/en/framework/architecture/best-practices/domain-layer-overview.md @@ -1,4 +1,4 @@ -## Best Practices: Domain Layer +# Best Practices: Domain Layer The following documents suggest some best-practices that you can use while implementing the domain layer of your solution by following the Domain Driven Design principles: diff --git a/docs/en/framework/architecture/domain-driven-design/application-layer.md b/docs/en/framework/architecture/domain-driven-design/application-layer.md index 03b83fb038..97b4cc718b 100644 --- a/docs/en/framework/architecture/domain-driven-design/application-layer.md +++ b/docs/en/framework/architecture/domain-driven-design/application-layer.md @@ -1,4 +1,4 @@ -## Domain Driven Design: Application Layer +# Domain Driven Design: Application Layer Application Layer mediates between the Presentation and Domain Layers. Orchestrates business objects to perform specific application tasks and implements use cases as the application logic. Here, is the list of the building blocks of the Application Layer: diff --git a/docs/en/framework/architecture/domain-driven-design/domain-layer.md b/docs/en/framework/architecture/domain-driven-design/domain-layer.md index 9ce7519810..7a83b634b8 100644 --- a/docs/en/framework/architecture/domain-driven-design/domain-layer.md +++ b/docs/en/framework/architecture/domain-driven-design/domain-layer.md @@ -1,4 +1,4 @@ -## Domain Driven Design: Domain Layer +# Domain Driven Design: Domain Layer Domain Layer contains business objects and the core (domain) business rules of the application and it's the heart of the application. Here, is the list of building blocks of the Domain Layer: diff --git a/docs/en/framework/architecture/modularity/basics.md b/docs/en/framework/architecture/modularity/basics.md index 481c1e192a..f92e6edc3b 100644 --- a/docs/en/framework/architecture/modularity/basics.md +++ b/docs/en/framework/architecture/modularity/basics.md @@ -7,7 +7,7 @@ ABP was designed to support to build fully modular applications and systems wher * This document introduces the basics of the module system. * [Module development best practice guide](../best-practices) explains some **best practices** to develop **re-usable application modules** based on **DDD** principles and layers. A module designed based on this guide will be **database independent** and can be deployed as a **microservice** if needed. * [Pre-built application modules](../../../modules) are **ready to use** in any kind of application. -* [Module startup template](../../../solution-templates/layered-web-application) is a jump start way to **create a new module**. +* [Module startup template](../../../solution-templates/application-module) is a jump start way to **create a new module**. * [ABP CLI](../../../cli/index.md) has commands to support modular development. * All other framework features are compatible to the modularity system. diff --git a/docs/en/framework/architecture/modularity/extending/module-entity-extensions.md b/docs/en/framework/architecture/modularity/extending/module-entity-extensions.md index 7cb7b8e421..8a5b50652e 100644 --- a/docs/en/framework/architecture/modularity/extending/module-entity-extensions.md +++ b/docs/en/framework/architecture/modularity/extending/module-entity-extensions.md @@ -48,7 +48,7 @@ public static void ConfigureExtraProperties() * `AddOrUpdateProperty` gets a second argument (the `property =>` lambda expression) to configure additional options for the new property. * We can add data annotation attributes like shown here, just like adding a data annotation attribute to a class property. -#### Create & Update Forms +### Create & Update Forms Once you define a property, it appears in the create and update forms of the related entity: diff --git a/docs/en/framework/data/entity-framework-core/migrations.md b/docs/en/framework/data/entity-framework-core/migrations.md index 5528b34291..93a5e3905f 100644 --- a/docs/en/framework/data/entity-framework-core/migrations.md +++ b/docs/en/framework/data/entity-framework-core/migrations.md @@ -4,7 +4,7 @@ This document begins by **introducing the default structure** provided by [the a > This document is for who want to fully understand and customize the database structure comes with [the application startup template](../../../solution-templates/layered-web-application). If you simply want to create entities and manage your code first migrations, just follow [the startup tutorials](../../../tutorials/book-store/part-01.md). -### Source Code +## Source Code You can find the source code of the example project referenced by this document [here](https://github.com/abpframework/abp-samples/tree/master/EfCoreMigrationDemo). However, you need to read and understand this document in order to understand the example project's source code. @@ -554,4 +554,4 @@ This document explains how to split your databases and manage your database migr ## Source Code -You can find the source code of the example project referenced by this document [here](https://github.com/abpframework/abp-samples/tree/master/EfCoreMigrationDemo). You can also find the changes explained in this document as a [single commit](https://github.com/abpframework/abp-samples/pull/95/commits/c2ffd76175e0a6fdfcf6477bbaea23dc2793fedd). \ No newline at end of file +You can find the source code of the example project referenced by this document [here](https://github.com/abpframework/abp-samples/tree/master/EfCoreMigrationDemo). You can also find the changes explained in this document as a [single commit](https://github.com/abpframework/abp-samples/pull/95/commits/c2ffd76175e0a6fdfcf6477bbaea23dc2793fedd). diff --git a/docs/en/framework/fundamentals/dynamic-claims.md b/docs/en/framework/fundamentals/dynamic-claims.md index 44bebd2aea..f326ac444d 100644 --- a/docs/en/framework/fundamentals/dynamic-claims.md +++ b/docs/en/framework/fundamentals/dynamic-claims.md @@ -1,8 +1,8 @@ # Dynamic Claims -When a client authenticates and obtains an access token or an authentication cookie, the claims in that token or cookie are not changed unless it re-authenticates. For most of the claims, that may not be a problem since claims are not frequently changing values. However, some claims may be changed and these changes should be reflected to the current session immediately. For example, we can revoke a role from a user and that should be immediately effective, otherwise user will continue to use that role's permissions until re-login to the application. +When a client authenticates and obtains an access token or an authentication cookie, the claims in that token or cookie are not changed unless it re-authenticates. That is not a problem for most claims since the claim values do not frequently change. However, for some claims, it may be required to immediately see the impact after the claim values change in the current session. For example, if a role is revoked from a user, you want to see its effect in the next request. Otherwise, the user will continue to use that role's permissions until re-login to the application. -ABP's dynamic claims feature is used to automatically and dynamically override the configured claim values in the client's authentication token/cookie by the latest values of these claims. +ABP's dynamic claims feature dynamically overrides the configured claim values in the client's authentication token/cookie with the latest values of these claims. ## How to Use @@ -10,7 +10,7 @@ This feature is disabled by default. You should enable it for your application a > **Beginning from the v8.0, all the [startup templates](../../solution-templates) are pre-configured and the dynamic claims feature is enabled by default. So, if you have created a solution with v8.0 and above, you don't need to make any configuration. Follow the instructions only if you've upgraded from a version lower than 8.0.** -### Enabling the Dynamic Claims +### Enabling / Disabling the Dynamic Claims You can enable it by the following code: @@ -19,7 +19,7 @@ public override void ConfigureServices(ServiceConfigurationContext context) { context.Services.Configure(options => { - options.IsDynamicClaimsEnabled = true; + options.IsDynamicClaimsEnabled = true; //set it "true" to enable "Dynamic Claims" or "false" to disable it. }); } ```` diff --git a/docs/en/framework/fundamentals/exception-handling.md b/docs/en/framework/fundamentals/exception-handling.md index 44692e8e68..a85ae58e24 100644 --- a/docs/en/framework/fundamentals/exception-handling.md +++ b/docs/en/framework/fundamentals/exception-handling.md @@ -31,7 +31,7 @@ Error Message is an instance of the `RemoteServiceErrorResponse` class. The simp There are **optional fields** those can be filled based upon the exception that has occurred. -##### Error Code +#### Error Code Error **code** is an optional and unique string value for the exception. Thrown `Exception` should implement the `IHasErrorCode` interface to fill this field. Example JSON value: @@ -46,7 +46,7 @@ Error **code** is an optional and unique string value for the exception. Thrown Error code can also be used to localize the exception and customize the HTTP status code (see the related sections below). -##### Error Details +#### Error Details Error **details** in an optional field of the JSON error message. Thrown `Exception` should implement the `IHasErrorDetails` interface to fill this field. Example JSON value: @@ -60,7 +60,7 @@ Error **details** in an optional field of the JSON error message. Thrown `Except } ``` -##### Validation Errors +#### Validation Errors **validationErrors** is a standard field that is filled if the thrown exception implements the `IHasValidationErrors` interface. @@ -340,4 +340,4 @@ Here, a list of the options you can configure: ## See Also -* [Video tutorial](https://abp.io/video-courses/essentials/exception-handling) \ No newline at end of file +* [Video tutorial](https://abp.io/video-courses/essentials/exception-handling) diff --git a/docs/en/framework/fundamentals/index.md b/docs/en/framework/fundamentals/index.md index 7ce2c59f7b..8d35df9631 100644 --- a/docs/en/framework/fundamentals/index.md +++ b/docs/en/framework/fundamentals/index.md @@ -1,4 +1,4 @@ -## ABP Fundamentals: Overview +# ABP Fundamentals: Overview The following documents explains the fundamental building blocks to create ABP solutions: diff --git a/docs/en/framework/fundamentals/localization.md b/docs/en/framework/fundamentals/localization.md index 61f8e58691..61118fd742 100644 --- a/docs/en/framework/fundamentals/localization.md +++ b/docs/en/framework/fundamentals/localization.md @@ -183,7 +183,7 @@ public class MyService : ITransientDependency } ```` -##### Format Arguments +### Format Arguments Format arguments can be passed after the localization key. If your message is `Hello {0}, welcome!`, then you can pass the `{0}` argument to the localizer like `_localizer["HelloMessage", "John"]`. @@ -255,4 +255,4 @@ See the following documents to learn how to reuse the same localization texts in * [Localization for the MVC / Razor Pages UI](../ui/mvc-razor-pages/javascript-api/localization) * [Localization for the Blazor UI](../ui/blazor/localization.md) * [Localization for the Angular UI](../ui/angular/localization.md) -* [Video tutorial](https://abp.io/video-courses/essentials/localization) \ No newline at end of file +* [Video tutorial](https://abp.io/video-courses/essentials/localization) diff --git a/docs/en/framework/infrastructure/audit-logging.md b/docs/en/framework/infrastructure/audit-logging.md index f14d522d25..f04bfafbe5 100644 --- a/docs/en/framework/infrastructure/audit-logging.md +++ b/docs/en/framework/infrastructure/audit-logging.md @@ -14,7 +14,7 @@ An **audit log object** (see the Audit Log Object section below) is typically cr > [Startup templates](../../solution-templates) are configured for the audit logging system which is suitable for most of the applications. Use this document for a detailed control over the audit log system. -### Database Provider Support +## Database Provider Support * Fully supported by the [Entity Framework Core](../data/entity-framework-core) provider. * Entity change logging is not supported by the [MongoDB](../data/mongodb) provider. Other features work as expected. diff --git a/docs/en/framework/infrastructure/event-bus/index.md b/docs/en/framework/infrastructure/event-bus/index.md index 982268780a..1c3f59bc4e 100644 --- a/docs/en/framework/infrastructure/event-bus/index.md +++ b/docs/en/framework/infrastructure/event-bus/index.md @@ -6,5 +6,26 @@ An event bus is a mediator that transfers a message from a sender to a receiver. ABP provides two type of event buses; -* **[Local Event Bus](local)** is suitable for in-process messaging. -* **[Distributed Event Bus](distributed)** is suitable for inter-process messaging, like microservices publishing and subscribing to distributed events. \ No newline at end of file +* **[Local Event Bus](local/index.md)** is suitable for in-process messaging. +* **[Distributed Event Bus](distributed/index.md)** is suitable for inter-process messaging, like publishing and subscribing to distributed events in a distributed/microservice system. + +## Event Bus Guiding + +You may confuse which event bus to use in your application. Here, a few example scenarios: + +* If you are building a microservice system, use the distributed event bus for **inter-microservice communication**. If you are publishing an event and always handling it in the same microservice, you can use the local event bus for that event. +* If you are building a modular monolith application, use the distributed event bus for **inter-module communication**. Since the distributed event bus works in-process by default (unless you configure a real distributed event bus provider). In that way, if you migrate to a microservice system later, these inter-module communication can become a inter-microservice communication without any code change (with just installing a distributed event bus provide package). If you are publishing an event and always handling it in the same module, you can use the local event bus for that event. +* If you are building a monolith (non-modular) application, you can always use the local event bus. + +The distributed event bus works in-process by default. Unless you don't configure a real distributed event bus provider, it works just like the local event bus. Once you configure a real distributed event bus provider, all your events become distributed. + +So, you use the local event bus only if you an event should always remain in-process in any scenario. For other type of events, use the distributed event bus. + +### Technical Differences + +There are some technical differences between the local and distributed event bus: + +* You can send entities or other non-serializable objects using the local event bus since these objects are not serialized/deserialized on event publishing. On the other hand, distributed event bus serializes/deserializes objects once you use a real distributed event bus provider. +* The local event bus is always transactional in the database level. For distributed event bus, you should enable inbox/outbox pattern to ensure data consistency once you use a real distributed event bus provider. + +These differences are because of the distributed event bus supports distributed scenarios while the local event bus is only used for in-process messaging. When you don't set up a real distributed event bus provider, these differences are not valid. \ No newline at end of file diff --git a/docs/en/framework/infrastructure/index.md b/docs/en/framework/infrastructure/index.md index f9524216c3..681e593aba 100644 --- a/docs/en/framework/infrastructure/index.md +++ b/docs/en/framework/infrastructure/index.md @@ -1,4 +1,4 @@ -## ABP Infrastructure +# ABP Infrastructure ABP provides a complete infrastructure for creating real world software solutions with modern architectures based on the .NET platform. Each of the following documents explains an infrastructure feature: diff --git a/docs/en/framework/infrastructure/json.md b/docs/en/framework/infrastructure/json.md index d5bdc8c22e..67126edceb 100644 --- a/docs/en/framework/infrastructure/json.md +++ b/docs/en/framework/infrastructure/json.md @@ -63,7 +63,7 @@ Properties: Add [Volo.Abp.Json.Newtonsoft](https://www.nuget.org/packages/Volo.Abp.Json.Newtonsoft) package and depends on `AbpJsonNewtonsoftModule` to replace the `System Text Json`. -#### AbpNewtonsoftJsonSerializerOptions +### AbpNewtonsoftJsonSerializerOptions - **JsonSerializerSettings(`Newtonsoft.Json.JsonSerializerSettings`)**: Global options for Newtonsoft library operations. See [here](https://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_JsonSerializerSettings.htm) for reference. diff --git a/docs/en/framework/ui/angular/account-module.md b/docs/en/framework/ui/angular/account-module.md index dac9771fb7..eb149af61e 100644 --- a/docs/en/framework/ui/angular/account-module.md +++ b/docs/en/framework/ui/angular/account-module.md @@ -7,7 +7,7 @@ If you add the account module to your project; - "My account" link in the current user dropdown on the top bar will redirect the user to a page in the account module. - You can switch the authentication flow to the resource owner password flow. -### Account Module Implementation +## Account Module Implementation Install the `@abp/ng.account` NPM package by running the below command: @@ -49,7 +49,7 @@ const routes: Routes = [ export class AppRoutingModule {} ``` -### Account Public Module Implementation for Commercial Templates +## Account Public Module Implementation for Commercial Templates The pro startup template comes with `@volo/abp.ng.account` package. You should update the package version to v4.3 or higher version. The package can be updated by running the following command: @@ -97,11 +97,11 @@ const routes: Routes = [ export class AppRoutingModule {} ``` -### My Account Page +## My Account Page Before v4.3, the "My account" link in the current user dropdown on the top bar redirected the user to MVC's profile management page. As of v4.3, if you added the account module to your project, the same link will land on a page in the Angular UI account module instead. -### Personal Info Page Confirm Message +## Personal Info Page Confirm Message When the user changes their own data on the personal settings tab in My Account, The data can not update the CurrentUser key of Application-Configuration. The information of the user is stored in claims. The only way to apply this information to the CurrentUser of Application-Configuration is user should log out and log in. When the Refresh-Token feature is implemented, it will be fixed. So We've added a confirmation alert. @@ -119,11 +119,11 @@ const routes: Routes = [ export class AppRoutingModule {} ``` -### Security Logs Page [COMMERCIAL] +## Security Logs Page [COMMERCIAL] Before v4.3, the "Security Logs" link in the current user dropdown on the top bar redirected the user to MVC's security logs page. As of v4.3, if you added the account module to your project, the same link will land on a page in the Angular UI account public module instead. -### Resource Owner Password Flow +## Resource Owner Password Flow OAuth is preconfigured as authorization code flow in Angular application templates by default. If you added the account module to your project, you can switch the flow to resource owner password flow by changing the OAuth configuration in the _environment.ts_ files as shown below: diff --git a/docs/en/framework/ui/angular/current-user.md b/docs/en/framework/ui/angular/current-user.md index c4b5e3db14..8d90b0cfda 100644 --- a/docs/en/framework/ui/angular/current-user.md +++ b/docs/en/framework/ui/angular/current-user.md @@ -2,7 +2,7 @@ The current user information stored in Config State. -### How to Get a Current User Information Configuration +## How to Get a Current User Information Configuration You can use the `getOne` or `getOne$` method of `ConfigStateService` to get a specific configuration property. For that, the property name should be passed to the method as parameter. diff --git a/docs/en/framework/ui/angular/datetime-format-pipe.md b/docs/en/framework/ui/angular/datetime-format-pipe.md index 3a95b25379..88eb9fb604 100644 --- a/docs/en/framework/ui/angular/datetime-format-pipe.md +++ b/docs/en/framework/ui/angular/datetime-format-pipe.md @@ -11,21 +11,21 @@ Example ShortDate, ShortTime and ShortDateTime format data like angular's data pipe but easier. Also the pipes get format from config service by culture. -# ShortDate Pipe +## ShortDate Pipe ```html {{today | shortDate }} ``` -# ShortTime Pipe +## ShortTime Pipe ```html {{today | shortTime }} ``` -# ShortDateTime Pipe +## ShortDateTime Pipe ```html {{today | shortDateTime }} diff --git a/docs/en/framework/ui/angular/entity-filters.md b/docs/en/framework/ui/angular/entity-filters.md new file mode 100644 index 0000000000..75a197b81b --- /dev/null +++ b/docs/en/framework/ui/angular/entity-filters.md @@ -0,0 +1,143 @@ +# Entity Filters + +Every CRUD page includes some sort of inputs to filter the listed data. Some of the inputs are common among all of the entities like the `Search` box. In addition, every entity has its own advanced filters depending on its fields. To reduce the amount of code written on every CRUD page, the Angular UI of ABP Commercial introduces a new type of component called `abp-advanced-entity-filters` + +## Setup + +The components are in the _@volo/abp.commercial.ng.ui_ package, which is included in the ABP templates. So, as long as your project is a product of these templates and unless you delete the package, you have access to the entity filter components. +You can either import the `CommercialUiModule` which contains other components as well as `AdvancedEntityFilters` or you can directly import the `AdvancedEntityFiltersModule` if you do not need other components. Here is how you import them in your Angular module: + +```javascript +import { + CommercialUiModule, + AdvancedEntityFiltersModule, +} from "@volo/abp.commercial.ng.ui"; + +@NgModule({ + imports: [ + // other imports + CommercialUiModule, + + // OR + + AdvancedEntityFiltersModule, + ], + // rest of the module metadata +}) +export class YourModule {} +``` + +## Usage + +Let's take a look at the `Users` page from the `Identity` module. + +![ABP Angular UI Users Page with Advanced Entity Filters](./images/angular-advanced-entity-filters.png) + +As shown in the screenshot, `abp-advanced-entity-filters` usually contain two parts, an entity filter (common among entities), i.e. `abp-entity-filter`, and entity-specific filters which are encapsulated within the `abp-advanced-entity-filters-form` component. + +`users.component.html` + +```html + + +
+
+ + +
+
+
+ +
+
+ +
+
+
+
+
+
+
+``` + +The `abp-advanced-entity-filters` already contains the `abp-entity-filter` component so you do not need to pass it. However, the `abp-entity-filter` component needs an instance of `ListService` which is usually stored in the `list` field of the page. You can also change the placeholder of the component via `entityFilterPlaceholder` input which is passed into the `abpLocalization` pipe so that it uses the translated text. Default is `'AbpUi::PagerSearch'` + +E.g + +```html + + + +``` + +### Inputs + +- `list`: an instance of `ListService` +- `entityFilterPlaceholder`: the placeholder of `abp-entity-filter` component. Default: `'AbpUi::PagerSearch'` +- `localizationSourceName`: the localization source of the current page. E.g: `AbpIdentity` + +### Inner components + +Some entities are simple and do not require any filter other than the `abp-entity-filter`. In this case, you can simply use the `abp-advanced-entity-filters` without anything in between. + +E.g. + +Let's remove `form` from the `Users` page + +```html + + +``` + +![ABP Angular UI Users Page with Advanced Entity Filters without form](./images/angular-advanced-entity-filters-without-form.png) + +If your component needs other filters, you can pass your own `form` within the `abp-advanced-entity-filters-form` component. This will render your form as well as a toggle (`abp-advanced-entity-filters-toggle`) to show and hide the form + +E.g. + +```html + + +
+ +
+
+
+``` + +![ABP Angular UI Users Page with Advanced Entity Filters with form](./images/angular-advanced-entity-filters-with-form.png) + +Last but not least, if you need to render some content above the `abp-entity-filter` component, you can use the `abp-advanced-entity-filters-above-search`. + +E.g. + +```html + + +

Custom Content above entity-filter

+
+ + +
+ +
+
+
+``` + +![ABP Angular UI Users Page with Advanced Entity Filters with custom content above filter](./images/angular-advanced-entity-filters-with-custom-content-above-filter.png) diff --git a/docs/en/framework/ui/angular/environment.md b/docs/en/framework/ui/angular/environment.md index 33f53b7836..7fd1b1273a 100644 --- a/docs/en/framework/ui/angular/environment.md +++ b/docs/en/framework/ui/angular/environment.md @@ -101,6 +101,22 @@ export interface RemoteEnv { - `method`: HTTP method to be used when retrieving environment config. Default: `GET` - `headers`: If extra headers are needed for the request, it can be set through this field. +## Provide Environment Variable to Core Module + +`environment` variable comes from angular host application. + +```js +import { environment } from '../environments/environment'; + +@NgModule({ + imports: [ + //...other imports + CoreModule.forRoot({ + environment + }), + ] +}) +``` ## EnvironmentService ` EnvironmentService` is a singleton service, i.e. provided in root level of your application, and keeps the environment in the internal store. diff --git a/docs/en/framework/ui/angular/http-error-handling.md b/docs/en/framework/ui/angular/http-error-handling.md index 21e13d46e7..14d4589c97 100644 --- a/docs/en/framework/ui/angular/http-error-handling.md +++ b/docs/en/framework/ui/angular/http-error-handling.md @@ -1,6 +1,6 @@ # HTTP Error Handling -### Error Configurations +## Error Configurations ABP offers a configurations for errors handling like below @@ -27,7 +27,7 @@ export class AppModule {} ``` - `ErrorScreenErrorCodes` the error codes that you can pass to `skipHandledErrorCodes` and `forWhichErrors`. -- `skipHandledErrorCodes` the error codes those you don't want to handle it. +- `skipHandledErrorCodes` the error codes those you don't want to handle. - `errorScreen` the screen that you want to show when a route error occurs. - `component` component that you want to show. - `forWhichErrors` same as `ErrorScreenErrorCodes` diff --git a/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-with-custom-content-above-filter.png b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-with-custom-content-above-filter.png new file mode 100644 index 0000000000..ac81a885ec Binary files /dev/null and b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-with-custom-content-above-filter.png differ diff --git a/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-with-form.png b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-with-form.png new file mode 100644 index 0000000000..d0827ed369 Binary files /dev/null and b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-with-form.png differ diff --git a/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-without-form.png b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-without-form.png new file mode 100644 index 0000000000..3c3707a857 Binary files /dev/null and b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters-without-form.png differ diff --git a/docs/en/framework/ui/angular/images/angular-advanced-entity-filters.png b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters.png new file mode 100644 index 0000000000..5ae22b56a4 Binary files /dev/null and b/docs/en/framework/ui/angular/images/angular-advanced-entity-filters.png differ diff --git a/docs/en/framework/ui/angular/images/angular-lookup-select.gif b/docs/en/framework/ui/angular/images/angular-lookup-select.gif new file mode 100644 index 0000000000..4194d362f5 Binary files /dev/null and b/docs/en/framework/ui/angular/images/angular-lookup-select.gif differ diff --git a/docs/en/framework/ui/angular/images/angular-lookup-typeahead.gif b/docs/en/framework/ui/angular/images/angular-lookup-typeahead.gif new file mode 100644 index 0000000000..6f75cc536d Binary files /dev/null and b/docs/en/framework/ui/angular/images/angular-lookup-typeahead.gif differ diff --git a/docs/en/framework/ui/angular/images/grouped-menu-mobile.png b/docs/en/framework/ui/angular/images/grouped-menu-mobile.png new file mode 100644 index 0000000000..9c2e176437 Binary files /dev/null and b/docs/en/framework/ui/angular/images/grouped-menu-mobile.png differ diff --git a/docs/en/framework/ui/angular/images/grouped-menu.png b/docs/en/framework/ui/angular/images/grouped-menu.png new file mode 100644 index 0000000000..f5b079796a Binary files /dev/null and b/docs/en/framework/ui/angular/images/grouped-menu.png differ diff --git a/docs/en/framework/ui/angular/images/manage-profile-page-new-tab.png b/docs/en/framework/ui/angular/images/manage-profile-page-new-tab.png new file mode 100644 index 0000000000..6d3145ccd4 Binary files /dev/null and b/docs/en/framework/ui/angular/images/manage-profile-page-new-tab.png differ diff --git a/docs/en/framework/ui/angular/images/manage-profile-page.png b/docs/en/framework/ui/angular/images/manage-profile-page.png new file mode 100644 index 0000000000..a699c29743 Binary files /dev/null and b/docs/en/framework/ui/angular/images/manage-profile-page.png differ diff --git a/docs/en/framework/ui/angular/localization.md b/docs/en/framework/ui/angular/localization.md index 9f2b71bc7b..4ff0744212 100644 --- a/docs/en/framework/ui/angular/localization.md +++ b/docs/en/framework/ui/angular/localization.md @@ -215,7 +215,7 @@ The localizations above can be used like this: As of v2.9 ABP has RTL support. If you are generating a new project with v2.9 and above, everything is set, you do not need to do any changes. If you are migrating your project from an earlier version, please follow the 2 steps below: -#### Step 1. Create Chunks for Bootstrap LTR and RTL +### Step 1. Create Chunks for Bootstrap LTR and RTL Find [styles configuration in angular.json](https://angular.io/guide/workspace-config#style-script-config) and make sure the chunks in your project has `bootstrap-rtl.min` and `bootstrap-ltr.min` as shown below. @@ -257,7 +257,7 @@ Find [styles configuration in angular.json](https://angular.io/guide/workspace-c } ``` -#### Step 2. Clear Lazy Loaded Fontawesome in AppComponent +### Step 2. Clear Lazy Loaded Fontawesome in AppComponent If you have created and injected chunks for Fontawesome as seen above, you no longer need the lazy loading in the `AppComponent` which was implemented before v2.9. Simply remove them. The `AppComponent` in the template of the new version looks like this: diff --git a/docs/en/framework/ui/angular/lookup-components.md b/docs/en/framework/ui/angular/lookup-components.md new file mode 100644 index 0000000000..ce1e32eefd --- /dev/null +++ b/docs/en/framework/ui/angular/lookup-components.md @@ -0,0 +1,98 @@ +# Lookup Components + +The Angular UI of ABP Commercial introduces some components with `abp-lookup-...` selector prefix. These components are used for retrieving relational entity data. + +## Setup + +The components are in the _@volo/abp.commercial.ng.ui_ package, which is included in the ABP templates. So, as long as your project is a product of these templates and unless you delete the package, you have access to the lookup components. Here is how you import them in your Angular module: + +```javascript +import { CommercialUiModule } from '@volo/abp.commercial.ng.ui'; + +@NgModule({ + imports: [ + // other imports + CommercialUiModule, + ], + // rest of the module metadata +}) +export class YourModule {} +``` + +Now you can use the lookup components in your components declared by this module. + +## Lookup HTTP Requests + +The lookup requests are used by all lookup components to get the related entity records. Because of lexical this, _they must be arrow functions_. + +```javascript +@Injectable({ + providedIn: 'root' +}) +export class AuthorService { + getCountryLookup = (input: LookupRequestDto) => + this.restService.request>>({ + method: 'GET', + url: '/api/app/authors/country-lookup', + params: { filter: input.filter, skipCount: input.skipCount, maxResultCount: input.maxResultCount }, + }, + { apiName: this.apiName }); + + // rest of the service is removed for brevity +} +``` + +## Lookup Typeahead Component + +Typeahead is a good choice when you have an unknown number of records for the related entity or you want to improve the UX with a search ability. Although not the best scenario, the country picker below shows how the lookup typeahead works: + +![ABP Angular UI Typeahead Lookup](./images/angular-lookup-typeahead.gif) + +Here is how it is used in the template. + +```html + +``` + +The available properties are as follows: + +- **cid:** The id of the form control (e.g. an input or a select element) inside the lookup component. Lets form controls respond to `