From d4b376537f24ca836c94b504f1e894f147139382 Mon Sep 17 00:00:00 2001
From: Cody
Date: Mon, 11 Nov 2024 21:48:27 -0800
Subject: [PATCH] one small step for man, one huge leap for mankind (#91)
---
docs/api/index.html | 6 +-
docs/guides/concepts/404-page-behavior.html | 4 +-
docs/guides/concepts/dll-handling.html | 4 +-
docs/guides/concepts/index.html | 5 +-
.../assets/placeholder.html | 114 +
.../database-management/best-practices.html | 208 +
.../database-management/database-schema.html | 2306 +
docs/guides/database-management/index.html | 133 +
.../database-management/troubleshooting.html | 134 +
docs/guides/docs/api-menu.html | 4 +-
docs/guides/docs/build.html | 4 +-
docs/guides/docs/code.html | 4 +-
docs/guides/docs/conventions.html | 4 +-
docs/guides/docs/folders.html | 4 +-
docs/guides/docs/how-it-works.html | 4 +-
docs/guides/docs/index.html | 4 +-
docs/guides/docs/markdown.html | 8 +-
docs/guides/docs/project.html | 4 +-
docs/guides/docs/run-in-iis.html | 4 +-
docs/guides/docs/tips/index.html | 4 +-
.../create-solutions-for-each-extension.html | 4 +-
.../use-nuget-for-dependencies.html | 4 +-
docs/guides/extensions/build/dev.html | 4 +-
docs/guides/extensions/build/index.html | 4 +-
.../guides/extensions/build/installation.html | 4 +-
docs/guides/extensions/build/package.html | 4 +-
docs/guides/extensions/build/release.html | 4 +-
docs/guides/extensions/index.html | 9 +-
docs/guides/index.html | 6 +-
docs/guides/installation/databases.html | 4 +-
docs/guides/installation/deploy-to-azure.html | 4 +-
.../development-vs-code-linux.html | 4 +-
.../installation/development-vs-code.html | 4 +-
docs/guides/installation/development.html | 4 +-
docs/guides/installation/index.html | 4 +-
.../linux-ubuntu-apache-mysql.html | 4 +-
.../linux-ubuntu-apache-postgresql.html | 4 +-
docs/guides/installation/maui-setup.html | 4 +-
docs/guides/installation/resources.html | 4 +-
docs/guides/installation/troubleshooting.html | 15 +-
docs/guides/installation/upgrade.html | 4 +-
.../installation/walkthrough-dev/index.html | 4 +-
.../windows-iis-express-sql-express.html | 4 +-
.../installation/windows-iis-localdb.html | 4 +-
docs/guides/installation/windows-iis-sql.html | 4 +-
.../marketplace/assets/placeholder.html | 4 +-
docs/guides/marketplace/index.html | 5 +-
docs/guides/marketplace/monetization.html | 4 +-
.../marketplace/submitting-contributions.html | 4 +-
docs/guides/marketplace/troubleshooting.html | 27 +-
.../marketplace/using-oqtane-marketplace.html | 4 +-
.../guides/migrations/assets/placeholder.html | 4 +-
.../guides/migrations/database-migration.html | 205 +
.../development-production-migration.html | 4 +-
docs/guides/migrations/index.html | 28 +-
docs/guides/migrations/troubleshooting.html | 4 +-
docs/guides/modules/adding-modules.html | 4 +-
docs/guides/modules/assets/placeholder.html | 4 +-
docs/guides/modules/creating-a-module.html | 4 +-
.../customizing-module-appearance.html | 4 +-
docs/guides/modules/index.html | 7 +-
docs/guides/modules/module-configuration.html | 4 +-
docs/guides/modules/module-deployment.html | 4 +-
docs/guides/modules/module-development.html | 4 +-
docs/guides/modules/module-installation.html | 4 +-
docs/guides/modules/modules.html | 4 +-
docs/guides/modules/troubleshooting.html | 6 +-
docs/guides/modules/working-with-modules.html | 4 +-
docs/guides/render/index.html | 5 +-
docs/guides/roadmap/index.html | 5 +-
docs/guides/themes/assets/placeholder.html | 4 +-
docs/guides/themes/generator/index.html | 4 +-
docs/guides/themes/index.html | 5 +-
.../themes/oqtane-theme-code-explained.html | 4 +-
.../themes/oqtane-theme-distribution.html | 4 +-
.../oqtane-theme-solution-explained.html | 4 +-
.../themes/parts-of-an-oqtane-theme.html | 4 +-
docs/guides/themes/theme-configuration.html | 4 +-
docs/guides/themes/theme-development.html | 4 +-
docs/guides/themes/theme-installation.html | 4 +-
docs/guides/themes/troubleshooting.html | 4 +-
.../troubleshooting/assets/placeholder.html | 4 +-
docs/guides/troubleshooting/index.html | 12 +-
.../troubleshooting-database.html | 203 +
.../troubleshooting-developing-modules.html | 4 +-
.../troubleshooting-developing-themes.html | 4 +-
.../troubleshooting-file-manager.html | 192 +
.../troubleshooting-installations.html | 4 +-
.../troubleshooting-login-issues.html | 4 +-
.../troubleshooting-marketplace.html | 4 +-
.../troubleshooting-migrations.html | 4 +-
.../troubleshooting-modules.html | 4 +-
.../troubleshooting-themes.html | 4 +-
...oubleshooting-upgrading-installations.html | 205 +
...-user-registration-email-verification.html | 4 +-
docs/index.html | 4 +-
docs/index.json | 2172 +-
docs/manifest.json | 4272 +-
.../admin-management/file-management.html | 4 +-
.../manuals/admin/admin-management/index.html | 4 +-
.../admin-management/language-management.html | 4 +-
.../admin-management/page-management.html | 4 +-
.../admin-management/profile-management.html | 4 +-
.../admin/admin-management/recycle-bin.html | 4 +-
.../admin-management/role-management.html | 4 +-
.../admin-management/search-settings.html | 4 +-
.../admin/admin-management/site-settings.html | 4 +-
.../admin/admin-management/url-mappings.html | 4 +-
.../admin-management/user-management.html | 8 +-
.../admin-management/visitor-management.html | 4 +-
.../content-management/content-editor.html | 4 +-
.../content-management/control-panel.html | 4 +-
.../content-management/html-text-editor.html | 10 +-
.../admin/content-management/index.html | 4 +-
.../content-management/module-management.html | 4 +-
.../content-management/page-management.html | 4 +-
.../admin/host-management/event-log.html | 4 +-
docs/manuals/admin/host-management/index.html | 4 +-
.../host-management/language-management.html | 4 +-
.../host-management/module-management.html | 8 +-
.../admin/host-management/scheduled-jobs.html | 4 +-
.../host-management/site-management.html | 4 +-
.../admin/host-management/site-settings.html | 42 +-
.../admin/host-management/sql-management.html | 4 +-
.../admin/host-management/system-info.html | 4 +-
.../admin/host-management/system-update.html | 4 +-
.../host-management/theme-management.html | 6 +-
docs/manuals/admin/index.html | 4 +-
docs/manuals/admin/installation/index.html | 4 +-
.../installation/installation-wizard.html | 4 +-
.../admin/installation/troubleshooting.html | 4 +-
docs/manuals/how-to/restart/index.html | 4 +-
.../pages/guides/database-management/toc.html | 37 +
.../pages/guides/database-management/toc.json | 2 +
docs/pages/guides/modules/toc.html | 2 +-
docs/pages/guides/modules/toc.json | 2 +-
docs/pages/guides/toc.html | 30 +-
docs/pages/guides/toc.json | 2 +-
docs/pages/guides/troubleshooting/toc.html | 3 +
docs/pages/guides/troubleshooting/toc.json | 2 +-
...te-module-settings-framework-reference.png | Bin 0 -> 91196 bytes
docs/readme.html | 4 +-
docs/toc.html | 2 +-
docs/toc.json | 2 +-
docs/xrefmap.yml | 38325 ----------------
src/docfx.json | 2 +-
src/layout/images/favicon.png | Bin 1618 -> 8223 bytes
src/layout/images/logo-50.png | Bin 0 -> 15876 bytes
src/layout/images/logo-black-50.png | Bin 0 -> 11461 bytes
src/pages/guides/concepts/index.md | 5 +-
src/pages/guides/concepts/load-testing.md | 92 +
src/pages/guides/concepts/toc.yml | 6 +-
src/pages/guides/concepts/webhooks.md | 87 +
.../database-management/assets/placeholder.md | 0
.../database-management/best-practices.md | 101 +
.../database-management/database-schema.md | 2639 ++
src/pages/guides/database-management/index.md | 30 +
src/pages/guides/database-management/toc.yml | 17 +
.../database-management/troubleshooting.md | 23 +
src/pages/guides/extensions/index.md | 12 +-
src/pages/guides/index.md | 12 +-
.../guides/installation/troubleshooting.md | 8 +
src/pages/guides/marketplace/index.md | 2 +
.../guides/marketplace/troubleshooting.md | 20 +
.../guides/migrations/database-migration.md | 101 +
src/pages/guides/migrations/index.md | 25 +
src/pages/guides/modules/index.md | 4 +-
.../guides/modules/module-development.md | 4 +
src/pages/guides/modules/toc.yml | 2 +-
src/pages/guides/render/index.md | 4 +-
src/pages/guides/roadmap/index.md | 2 +
src/pages/guides/themes/index.md | 2 +
src/pages/guides/toc.yml | 5 +
src/pages/guides/troubleshooting/index.md | 9 +-
src/pages/guides/troubleshooting/toc.yml | 5 +-
.../troubleshooting-database.md | 110 +
.../troubleshooting-file-manager.md | 91 +
.../troubleshooting-installations.md | 40 +
...troubleshooting-upgrading-installations.md | 105 +
.../admin/admin-management/user-management.md | 6 +-
.../content-management/html-text-editor.md | 4 +-
...te-module-settings-framework-reference.png | Bin 0 -> 91196 bytes
.../host-management/module-management.md | 2 +-
.../admin/host-management/site-settings.md | 34 +-
.../admin/host-management/theme-management.md | 2 +-
185 files changed, 7859 insertions(+), 44938 deletions(-)
create mode 100644 docs/guides/database-management/assets/placeholder.html
create mode 100644 docs/guides/database-management/best-practices.html
create mode 100644 docs/guides/database-management/database-schema.html
create mode 100644 docs/guides/database-management/index.html
create mode 100644 docs/guides/database-management/troubleshooting.html
create mode 100644 docs/guides/migrations/database-migration.html
create mode 100644 docs/guides/troubleshooting/troubleshooting-database.html
create mode 100644 docs/guides/troubleshooting/troubleshooting-file-manager.html
create mode 100644 docs/guides/troubleshooting/troubleshooting-upgrading-installations.html
create mode 100644 docs/pages/guides/database-management/toc.html
create mode 100644 docs/pages/guides/database-management/toc.json
create mode 100644 docs/pages/manuals/admin/host-management/assets/module-management-create-module-settings-framework-reference.png
create mode 100644 src/layout/images/logo-50.png
create mode 100644 src/layout/images/logo-black-50.png
create mode 100644 src/pages/guides/concepts/load-testing.md
create mode 100644 src/pages/guides/concepts/webhooks.md
create mode 100644 src/pages/guides/database-management/assets/placeholder.md
create mode 100644 src/pages/guides/database-management/best-practices.md
create mode 100644 src/pages/guides/database-management/database-schema.md
create mode 100644 src/pages/guides/database-management/index.md
create mode 100644 src/pages/guides/database-management/toc.yml
create mode 100644 src/pages/guides/database-management/troubleshooting.md
create mode 100644 src/pages/guides/migrations/database-migration.md
create mode 100644 src/pages/guides/troubleshooting/troubleshooting-database.md
create mode 100644 src/pages/guides/troubleshooting/troubleshooting-file-manager.md
create mode 100644 src/pages/guides/troubleshooting/troubleshooting-upgrading-installations.md
create mode 100644 src/pages/manuals/admin/host-management/assets/module-management-create-module-settings-framework-reference.png
diff --git a/docs/api/index.html b/docs/api/index.html
index 57e32e74e..b707927fc 100644
--- a/docs/api/index.html
+++ b/docs/api/index.html
@@ -10,12 +10,12 @@
-
+
-
+
@@ -109,7 +109,7 @@ Note
diff --git a/docs/guides/concepts/404-page-behavior.html b/docs/guides/concepts/404-page-behavior.html
index 0bcbff688..0e35721e5 100644
--- a/docs/guides/concepts/404-page-behavior.html
+++ b/docs/guides/concepts/404-page-behavior.html
@@ -15,7 +15,7 @@
-
+
@@ -110,7 +110,7 @@ Conclusion
diff --git a/docs/guides/concepts/dll-handling.html b/docs/guides/concepts/dll-handling.html
index 4b07886ec..3ad4cd443 100644
--- a/docs/guides/concepts/dll-handling.html
+++ b/docs/guides/concepts/dll-handling.html
@@ -15,7 +15,7 @@
-
+
@@ -104,7 +104,7 @@ Oqtane Concepts: DLL Handling
diff --git a/docs/guides/concepts/index.html b/docs/guides/concepts/index.html
index 37491bb68..321598a13 100644
--- a/docs/guides/concepts/index.html
+++ b/docs/guides/concepts/index.html
@@ -15,7 +15,7 @@
-
+
@@ -92,11 +92,12 @@ Oqtane Concepts
404 Page Behavior
Feel free to dive deeper into these topics by following the provided links!
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/database-management/assets/placeholder.html b/docs/guides/database-management/assets/placeholder.html
new file mode 100644
index 000000000..8422af920
--- /dev/null
+++ b/docs/guides/database-management/assets/placeholder.html
@@ -0,0 +1,114 @@
+
+
+
+
+ | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/database-management/best-practices.html b/docs/guides/database-management/best-practices.html
new file mode 100644
index 000000000..c42e5c3db
--- /dev/null
+++ b/docs/guides/database-management/best-practices.html
@@ -0,0 +1,208 @@
+
+
+
+
+ Best Practices for Oqtane Development | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Best Practices for Oqtane Development
+
+This guide provides essential best practices for developing and maintaining an Oqtane-based application. By following these guidelines, you can ensure a more efficient, scalable, and secure development experience.
+1. Organize Your Modules and Themes
+1.1 Modular Design
+Oqtane follows a modular architecture that enables you to extend its functionality by creating custom modules. When developing a new feature, it's recommended to:
+
+Keep features encapsulated in their own modules for easier maintenance.
+Follow the single responsibility principle: each module should focus on one area of functionality.
+
+1.2 Consistent Theme Structure
+Themes are essential for the visual look of your application. Follow these practices for managing themes:
+
+Use a consistent folder structure for assets (CSS, images, scripts).
+Separate core theme styles from custom modifications.
+Maintain responsive design practices to ensure compatibility across devices.
+
+2. Secure Your Application
+2.1 Use Secure Communication (SSL/TLS)
+Always use SSL/TLS for your Oqtane application, especially for production environments. This ensures secure communication between clients and servers.
+
+Set up HTTPS for your web application.
+Use strong certificates and avoid using expired or self-signed certificates in production.
+
+2.2 Secure User Authentication
+Make sure to implement strong authentication practices:
+
+Use two-factor authentication (2FA) for administrative accounts.
+Regularly review and update user roles and permissions.
+Implement password strength policies and encourage users to update their passwords periodically.
+
+2.3 Protect Sensitive Data
+When dealing with sensitive data, ensure encryption and secure storage:
+
+Encrypt sensitive data both at rest and in transit.
+Use secure storage solutions for user credentials, such as hashing algorithms for passwords.
+
+
+3.1 Enable Caching
+Enable caching where appropriate to improve the performance of your Oqtane site:
+
+Use the built-in caching mechanisms in Oqtane to store static content.
+Cache database queries and frequently accessed data to reduce load on the server.
+
+3.2 Optimize Database Queries
+Efficient database interactions are key to performance:
+
+Avoid complex queries that may impact performance.
+Regularly review the database schema to ensure it is optimized for the queries it serves.
+
+3.3 Minimize Frontend Asset Size
+Minimize the size of your frontend assets:
+
+Use minified versions of CSS and JavaScript files.
+Combine smaller CSS and JS files into single files to reduce HTTP requests.
+
+4. Maintainable Code and Version Control
+4.1 Use Version Control (Git)
+Make sure your codebase is under version control, and follow these best practices:
+
+Create meaningful commit messages.
+Use feature branches for new development and keep the main branch stable.
+
+4.2 Code Reviews
+Before merging new features or changes, perform code reviews:
+
+Review for code quality, consistency, and adherence to Oqtane best practices.
+Test the code in different environments (development, staging, production).
+
+5. Backup and Recovery Strategy
+5.1 Regular Backups
+Create regular backups for your Oqtane application, including:
+
+The application files and configuration.
+The database, especially before and after migrations.
+
+5.2 Disaster Recovery Plan
+Develop a disaster recovery plan that includes:
+
+Restoring the application from a backup.
+Handling server outages or data corruption.
+
+6. Documentation and Knowledge Sharing
+6.1 Maintain Clear Documentation
+Ensure that your code and processes are well-documented:
+
+Write clear documentation for custom modules, themes, and configuration settings.
+Update documentation regularly to reflect changes in functionality.
+
+6.2 Share Knowledge with Your Team
+Encourage team collaboration by:
+
+Sharing best practices and lessons learned with other developers.
+Maintaining an internal knowledge base for troubleshooting and solutions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/database-management/database-schema.html b/docs/guides/database-management/database-schema.html
new file mode 100644
index 000000000..e96d33827
--- /dev/null
+++ b/docs/guides/database-management/database-schema.html
@@ -0,0 +1,2306 @@
+
+
+
+
+ Oqtane Schema Documentation - Version 6.0.0 | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Oqtane Schema Documentation - Version 6.0.0
+
+Table of Contents
+
+Enums
+LogFunction Enum
+The LogFunction
enum categorizes log entries based on the type of operation being performed.
+
+Create : Logs when a new entity is created.
+Read : Logs when an entity is read.
+Update : Logs when an entity is updated.
+Delete : Logs when an entity is deleted.
+Security : Logs security-related activities.
+Other : Logs other activities not covered by the above.
+
+Example:
+LogFunction logFunction = LogFunction.Create;
+
+
+LogLevel Enum
+The LogLevel
enum sets the verbosity level for log entries. Higher levels indicate more severe messages.
+
+Trace : Detailed information for troubleshooting.
+Debug : Debugging information for development purposes.
+Information : Standard informational logs.
+Warning : Warnings about potential issues.
+Error : Logs errors that indicate a problem.
+Critical : Critical errors requiring immediate attention.
+None : No logging.
+Description: This enum is used to set the level of verbosity for log entries. The higher the level, the more severe the message.
+
+Example:
+LogLevel logLevel = LogLevel.Error;
+
+
+MigrationType Enum
+The MigrationType
enum specifies whether to apply or roll back database changes during migration.
+
+Up : Migrating database schema upwards (applying changes).
+Down : Rolling back database schema changes.
+
+Example:
+MigrationType migrationType = MigrationType.Up;
+
+
+ResourceDeclaration Enum (Deprecated)
+Description: This enum was used to define whether a resource (like a script or stylesheet) is declared at a local or global level. It is now deprecated and should not be used.
+
+Local : Resource is declared at the local level (specific to the current scope).
+Global : Resource is available globally across the application.
+
+Note: Use ResourceLevel
enum instead for specifying resource scope.
+
+ResourceLevel Enum
+The ResourceLevel
enum specifies the scope of a resource's availability, determining the context in which a resource is accessible.
+
+Undefined : Resource level is not specified.
+Site : Resource is associated with a specific site.
+Page : Resource is associated with a specific page.
+Module : Resource is associated with a specific module.
+
+Example:
+ResourceLevel resourceLevel = ResourceLevel.Page;
+
+
+ResourceLocation Enum
+The ResourceLocation
enum specifies whether a resource (such as a script or CSS file) should be loaded in the <head>
or <body>
of an HTML document.
+
+Head : Resource is placed in the <head>
section.
+Body : Resource is placed just before the closing </body>
tag.
+
+Example:
+ResourceLocation resourceLocation = ResourceLocation.Head;
+
+
+ResourceType Enum
+The ResourceType
enum defines the type of resource, which can either be a CSS file or a JavaScript file.
+
+Stylesheet : Resource is a CSS stylesheet.
+Script : Resource is a JavaScript script.
+
+Example:
+ResourceType resourceType = ResourceType.Stylesheet;
+
+
+Runtime Enum
+The Runtime
enum specifies the runtime environment of the application, helping determine the appropriate execution context.
+
+Server : Application is running on the server.
+WebAssembly : Application is running in the WebAssembly environment (browser).
+Auto : Automatically detects the runtime environment.
+Hybrid : Supports both server and WebAssembly environments.
+
+Example:
+Runtime runtime = Runtime.Server;
+
+
+SearchSortField Enum
+The SearchSortField
enum specifies the sorting order for search results, allowing control based on relevance, title, or last modified timestamp.
+
+Relevance : Sort results by relevance to the search query.
+Title : Sort results by the resource title.
+LastModified : Sort results by the last modified date.
+
+Example:
+SearchSortField sortField = SearchSortField.Relevance;
+
+
+SearchSortOrder Enum
+The SearchSortOrder
enum defines whether the search results should be sorted in ascending or descending order.
+
+Ascending : Sort in ascending order.
+Descending : Sort in descending order.
+
+Example:
+SearchSortOrder sortOrder = SearchSortOrder.Ascending;
+
+
+SecurityAccessLevel Enum
+The SecurityAccessLevel
enum controls the level of access a user has in the system, ranging from no access (Anonymous) to full administrative or host access.
+
+Anonymous : No authentication required; accessible by everyone.
+View : Users can view content.
+Edit : Users can edit content.
+Admin : Users have administrative privileges.
+Host : Users have host-level access (highest privilege).
+
+Example:
+SecurityAccessLevel accessLevel = SecurityAccessLevel.Admin;
+
+
+Notes:
+
+These enums are critical for managing various functionalities in the Oqtane framework, such as logging, resource management, security, and search sorting.
+The ResourceDeclaration
enum is marked as obsolete and should no longer be used in new development.
+
+
+Models
+
+Alias Model
+The Alias
model represents an alias for a site within the Oqtane framework.
+Properties:
+
+AliasId : Primary key used for internal site identification.
+Name : The alias name, representing the URL (e.g., oqtane.me
or oqtane.me/products
).
+TenantId : Foreign key referencing the Tenant to which the alias belongs.
+SiteId : Foreign key referencing the Site to which the alias belongs.
+IsDefault : Indicates whether this alias is the default for the Tenant/Site.
+Path : Extracted from the URL to provide the part after the first slash, used for routing.
+SiteKey : Combines TenantId
and SiteId
to create a unique identifier for the site.
+Protocol : Defines the protocol (e.g., http://
or https://
) for accessing the alias.
+BaseUrl : Base URL for static resources, typically for remote clients.
+
+Example Usage:
+var alias = new Alias
+{
+ AliasId = 1,
+ Name = "oqtane.me",
+ TenantId = 1,
+ SiteId = 1,
+ IsDefault = true
+};
+
+// Access the Path property
+string path = alias.Path; // returns ""
+
+Change Log:
+
+Initial Creation : Added primary properties for AliasId
, Name
, TenantId
, SiteId
, and IsDefault
.
+Enhancement : Added Path
property to extract the URL part after the first slash.
+Update : Introduced SiteKey
and Protocol
properties for better identification and request handling.
+Refinement : Added BaseUrl
property for accessing static resources.
+
+
+Culture Model
+The Culture
model represents a culture used within the Oqtane framework.
+Properties:
+
+Name : The culture's short code (e.g., en
or en-US
).
+DisplayName : The friendly display name of the culture (e.g., English (United States)
).
+IsDefault : Indicates if this culture is the default for the system (currently unverified).
+
+Example Usage:
+var culture = new Culture
+{
+ Name = "en-US",
+ DisplayName = "English (United States)",
+ IsDefault = true
+};
+
+Change Log:
+
+Initial Creation : Defined primary properties for Name
, DisplayName
, and IsDefault
.
+
+
+Database Model
+The Database
model represents a database configuration within the Oqtane framework.
+Properties:
+
+Name : The name of the database.
+ControlType : The UI control used to configure the database (e.g., SqlServerConfig
).
+DBType : The full namespace of the database type (e.g., SqlServerDatabase
).
+IsDefault : A flag indicating whether this database is the default database provider.
+
+Example Usage:
+var database = new Database
+{
+ Name = "OqtaneDB",
+ ControlType = "Oqtane.Installer.Controls.SqlServerConfig, Oqtane.Client",
+ DBType = "Oqtane.Database.SqlServer.SqlServerDatabase, Oqtane.Database.SqlServer",
+ IsDefault = true
+};
+
+Change Log:
+
+Initial Creation : Added properties for Name
, ControlType
, DBType
, and IsDefault
.
+
+
+ExternalLoginProvider Model
+The ExternalLoginProvider
model represents an external login provider within the Oqtane framework.
+Properties:
+
+Name : The name of the external login provider (e.g., Google
, Facebook
).
+Settings : A dictionary of key-value pairs for the provider's configuration settings.
+
+Example Usage:
+var externalLoginProvider = new ExternalLoginProvider
+{
+ Name = "Google",
+ Settings = new Dictionary<string, string>
+ {
+ {"ClientId", "your-client-id"},
+ {"ClientSecret", "your-client-secret"}
+ }
+};
+
+Change Log:
+
+Initial Creation : Defined properties for Name
and Settings
.
+
+
+File Model
+The File
model represents a file within the Oqtane framework.
+Properties:
+
+FileId : Primary identifier for the file.
+FolderId : Foreign key referencing the folder the file belongs to.
+Name : The name of the file.
+Extension : File extension (e.g., 'jpg'), lowercase and without the dot.
+Size : File size in bytes.
+ImageHeight : Height of the image in pixels.
+ImageWidth : Width of the image in pixels.
+Description : Description of the file.
+IsDeleted : Flag indicating if the file is marked as deleted (deprecated, not used).
+Folder : Reference to the Folder
object, used to determine the site the file belongs to.
+Url : URL for accessing the file.
+
+Example Usage:
+var file = new File
+{
+ FileId = 1,
+ FolderId = 10,
+ Name = "example.jpg",
+ Extension = "jpg",
+ Size = 2048,
+ ImageHeight = 1080,
+ ImageWidth = 1920,
+ Description = "An example image file",
+ IsDeleted = false,
+ Url = "/files/example.jpg"
+};
+
+Change Log:
+
+Initial creation of File model.
+Added properties for image dimensions.
+Deprecated IsDeleted
property.
+
+
+Folder Model
+The Folder
model represents a folder within the Oqtane framework.
+Properties:
+
+FolderId : Primary identifier for the folder.
+SiteId : Foreign key referencing the site the folder belongs to.
+ParentId : Foreign key referencing the parent folder, if any.
+Type : Type of the folder based on predefined folder types.
+Name : The name of the folder.
+Path : Path to the folder.
+Order : Sorting order of the folder.
+ImageSizes : List of image sizes that can be generated from uploaded images.
+Capacity : Maximum capacity of the folder in bytes.
+IsSystem : Indicates if the folder is a system folder.
+IsDeleted : Deprecated flag indicating if the folder is marked as deleted.
+PermissionList : List of permissions for the folder.
+Level : Depth level of the folder in the hierarchy.
+HasChildren : Indicates if the folder has sub-items.
+Permissions : Deprecated property for folder permissions (use PermissionList
instead).
+
+Example Usage:
+var folder = new Folder
+{
+ FolderId = 1,
+ SiteId = 1,
+ ParentId = null,
+ Type = "Documents",
+ Name = "Project Files",
+ Path = "/project-files",
+ Order = 1,
+ ImageSizes = "200x200,x200,200x",
+ Capacity = 10485760,
+ IsSystem = false,
+ IsDeleted = false,
+ PermissionList = new List<Permission>(),
+ Level = 0,
+ HasChildren = true
+};
+
+// Accessing properties
+string folderName = folder.Name; // returns "Project Files"
+int folderCapacity = folder.Capacity; // returns 10485760 (10 MB)
+
+Change Log:
+
+Initial Creation : Added primary properties for FolderId
, SiteId
, ParentId
, Type
, Name
, Path
, Order
, ImageSizes
, Capacity
, IsSystem
, and IsDeleted
.
+Enhancement : Added PermissionList
, Level
, and HasChildren
properties.
+Update : Deprecated the Permissions
property and provided a replacement with PermissionList
.
+
+
+Installation Model
+The Installation
model represents the result of an installation attempt within the Oqtane framework.
+
+Success : Boolean flag indicating whether the installation was successful.
+Message : Message or error description in case something failed.
+Alias : Current alias value retrieved from the server during installation.
+
+Example Usage:
+var installation = new Installation
+{
+ Success = true,
+ Message = "Installation completed successfully.",
+ Alias = new Alias { AliasId = 1, Name = "oqtane.me", TenantId = 1, SiteId = 1 }
+};
+
+// Accessing properties
+bool isSuccess = installation.Success; // returns true
+string installMessage = installation.Message; // returns "Installation completed successfully."
+Alias installAlias = installation.Alias; // returns Alias object
+
+Change Log:
+
+Initial Creation : Added primary properties for Success
, Message
, and Alias
.
+
+
+Job Model
+The Job
model represents a scheduled task within the Oqtane framework.
+
+JobId : Internal ID of the job.
+Name : Name for simple identification.
+JobType : Type of job.
+Frequency : Unit used to define how often the job should run (e.g., 'm' for minutes, 'H' for hours).
+Interval : How often the job should run, in conjunction with Frequency
.
+StartDate : When the job is to be run for the first time.
+EndDate : When the job is to be run for the last time.
+IsEnabled : Indicates if the job is activated/enabled.
+IsStarted : Indicates if the job has ever started running.
+IsExecuting : Indicates if the job is currently executing.
+NextExecution : When the job will run next.
+RetentionHistory : (Todo: Document the purpose of this property).
+
+Example Usage:
+var job = new Job
+{
+ JobId = 1,
+ Name = "Daily Backup",
+ JobType = "Backup",
+ Frequency = "H",
+ Interval = 24,
+ StartDate = DateTime.Now,
+ EndDate = DateTime.Now.AddYears(1),
+ IsEnabled = true,
+ IsStarted = false,
+ IsExecuting = false,
+ NextExecution = DateTime.Now.AddHours(24),
+ RetentionHistory = 30
+};
+
+// Accessing properties
+bool isEnabled = job.IsEnabled; // returns true
+DateTime? nextExecution = job.NextExecution; // returns the next execution time
+
+Change Log:
+
+Initial Creation : Added primary properties for JobId
, Name
, JobType
, Frequency
, Interval
, StartDate
, EndDate
, IsEnabled
, IsStarted
, IsExecuting
, and NextExecution
.
+Enhancement : Added RetentionHistory
property.
+
+
+JobLog Model
+The JobLog
model represents a record of a job execution within the Oqtane framework.
+
+JobLogId : Internal ID of the job log.
+JobId : Reference to the job that was run.
+StartDate : Timestamp when the job started.
+FinishDate : Timestamp when the job ended.
+Succeeded : Indicates whether the job succeeded.
+Notes : Additional protocol information left after the job ran.
+Job : Reference to the job, though it's not clear if this is always populated.
+
+Example Usage:
+var jobLog = new JobLog
+{
+ JobLogId = 1,
+ JobId = 100,
+ StartDate = DateTime.Now,
+ FinishDate = DateTime.Now.AddMinutes(30),
+ Succeeded = true,
+ Notes = "Backup completed successfully.",
+ Job = new Job { JobId = 100, Name = "Daily Backup" }
+};
+
+// Accessing properties
+bool? succeeded = jobLog.Succeeded; // returns true
+string logNotes = jobLog.Notes; // returns "Backup completed successfully."
+
+Change Log:
+
+Initial Creation : Added primary properties for JobLogId
, JobId
, StartDate
, FinishDate
, Succeeded
, Notes
, and Job
.
+
+
+For the database-schema.md
file, you can simplify the documentation to make it concise and focused on essential details. Here’s an example of how you might document the Language model without the full class definition:
+
+Language Model
+The Language
model provides information about languages used on different sites within the Oqtane framework.
+Properties:
+
+LanguageId : Internal ID for the language.
+SiteId : Nullable reference to a Site
. Not all languages need to be linked to a specific site, hence the property is nullable.
+Code : Language/Culture code (e.g., 'en-US') corresponding to Culture.Name
.
+IsDefault : Indicates if this is the default language for a site.
+Name : (Not Mapped) Language name corresponding to Culture.DisplayName
, not Culture.Name
.
+Version : (Not Mapped) Version of the satellite assembly.
+
+Example Usage:
+var language = new Language
+{
+ LanguageId = 1,
+ SiteId = 100,
+ Code = "en-US",
+ IsDefault = true,
+ Name = "English (United States)",
+ Version = "1.0.0"
+};
+
+// Cloning the language object
+var clonedLanguage = language.Clone();
+
+Change Log:
+
+Initial Creation : Added primary properties for LanguageId
, SiteId
, Code
, IsDefault
, Name
, and Version
.
+Enhancement : Added Clone
method for creating copies of the Language
object.
+
+
+Log Model
+The Log
model represents an entry in the events log within the Oqtane framework.
+Properties:
+
+LogId : Internal ID of the log entry.
+SiteId : Nullable reference to the Site
related to this log entry.
+LogDate : Timestamp when the log entry was created.
+PageId : Nullable reference to the Page
related to this log entry.
+ModuleId : Nullable reference to the Module
related to this log entry.
+UserId : Nullable reference to the User
related to this log entry.
+Url : URL relevant to this log entry, if applicable.
+Server : Name of the server that created this entry.
+Category : Usually the full type name related to the log entry.
+Feature : Feature associated with this log entry.
+Function : Function or method associated with this log entry.
+Level : Log level or severity of the log entry.
+Message : Log message.
+MessageTemplate : Template used for the log message.
+Exception : Information about any exceptions raised.
+Properties : Additional properties or metadata related to the log entry.
+
+Example Usage:
+var log = new Log
+{
+ LogId = 1,
+ SiteId = 10,
+ LogDate = DateTime.Now,
+ PageId = 20,
+ ModuleId = 30,
+ UserId = 40,
+ Url = "https://example.com",
+ Server = "Server1",
+ Category = "Oqtane.Pages.PageController",
+ Feature = "PageLoad",
+ Function = "GetPage",
+ Level = "Error",
+ Message = "An error occurred while loading the page.",
+ MessageTemplate = "Error loading page {PageId}",
+ Exception = "NullReferenceException",
+ Properties = "Additional context or metadata"
+};
+
+Change Log:
+
+Initial Creation : Added primary properties for LogId
, SiteId
, LogDate
, PageId
, ModuleId
, UserId
, Url
, Server
, Category
, Feature
, Function
, Level
, Message
, MessageTemplate
, Exception
, and Properties
.
+
+
+MigrationHistoryTable Model
+The MigrationHistoryTable
model provides information about the migration history table used for tracking database migrations within the Oqtane framework.
+Properties:
+
+TableName : Name of the migration history table.
+TableSchema : Schema of the migration history table.
+MigrationIdColumnName : Column name for the migration ID.
+ProductVersionColumnName : Column name for the product version.
+AppliedVersionColumnName : Column name for the applied version.
+AppliedDateColumnName : Column name for the date when the migration was applied.
+
+Example Usage:
+var migrationHistoryTable = new MigrationHistoryTable
+{
+ TableName = "MigrationHistory",
+ TableSchema = "dbo",
+ MigrationIdColumnName = "MigrationId",
+ ProductVersionColumnName = "ProductVersion",
+ AppliedVersionColumnName = "AppliedVersion",
+ AppliedDateColumnName = "AppliedDate"
+};
+
+Change Log:
+
+Initial Creation : Added properties for TableName
, TableSchema
, MigrationIdColumnName
, ProductVersionColumnName
, AppliedVersionColumnName
, and AppliedDateColumnName
.
+
+
+ModelBase Class
+The ModelBase
class is a base class for other models, providing common auditing properties.
+Properties:
+
+CreatedBy : The username or identifier of the user who created the record.
+CreatedOn : The timestamp when the record was created.
+ModifiedBy : The username or identifier of the user who last modified the record.
+ModifiedOn : The timestamp when the record was last modified.
+
+Example Usage:
+public class ExampleModel : ModelBase
+{
+ public int ExampleModelId { get; set; }
+ public string Name { get; set; }
+}
+
+var example = new ExampleModel
+{
+ ExampleModelId = 1,
+ Name = "Sample",
+ CreatedBy = "admin",
+ CreatedOn = DateTime.UtcNow,
+ ModifiedBy = "admin",
+ ModifiedOn = DateTime.UtcNow
+};
+
+Change Log:
+
+Initial Creation : Added properties for CreatedBy
, CreatedOn
, ModifiedBy
, and ModifiedOn
.
+
+
+Module Model
+The Module
model describes a module instance that will be shown on a page. This is different from a ModuleDefinition
which describes the module itself.
+Properties:
+
+ModuleId : The ID of this instance.
+SiteId : Reference to the Site
.
+ModuleDefinitionName : Reference to the ModuleDefinition
.
+AllPages : Determines if this module should be shown on all pages of the current Site
.
+ModuleDefinition : (Not Mapped) Reference to the ModuleDefinition
used for this module.
+DeletedBy : (Not Mapped) The user who deleted this module (if applicable).
+DeletedOn : (Not Mapped) The timestamp when the module was deleted (if applicable).
+IsDeleted : (Not Mapped) Indicates if the module is deleted.
+PermissionList : (Not Mapped) List of permissions for this module.
+Settings : (Not Mapped) List of settings for this module.
+PageModuleId : (Not Mapped) The ID of the PageModule
instance.
+PageId : (Not Mapped) Reference to the Page
this module is on.
+Title : (Not Mapped) Title of the PageModule
instance.
+Pane : (Not Mapped) The pane where this PageModule
instance will be injected on the page.
+Order : (Not Mapped) The order of the PageModule
instance within the pane.
+ContainerType : (Not Mapped) The container for the PageModule
instance.
+EffectiveDate : (Not Mapped) Start of when this module is visible.
+ExpiryDate : (Not Mapped) End of when this module is visible.
+ModuleType : (Not Mapped) Stores the type name for the module component being rendered.
+PaneModuleIndex : (Not Mapped) The position of the module instance in a pane.
+PaneModuleCount : (Not Mapped) The number of modules in a pane.
+RenderId : (Not Mapped) A unique ID to help determine if a component should be rendered.
+SecurityAccessLevel : (Not Mapped) The minimum access level to view the component being rendered.
+ControlTitle : (Not Mapped) An optional title for the component.
+Actions : (Not Mapped) Optional mapping of URL actions to a component.
+UseAdminContainer : (Not Mapped) Indicates if a component should not be rendered with the default modal admin container.
+RenderMode : (Not Mapped) Optionally specify the render mode for the component (overrides the site setting).
+Prerender : (Not Mapped) Optionally specify if the component should be prerendered (overrides the site setting).
+Permissions : (Deprecated, Not Mapped) Use PermissionList
instead.
+
+Example Usage:
+var module = new Module
+{
+ ModuleId = 1,
+ SiteId = 2,
+ ModuleDefinitionName = "TextModule",
+ AllPages = false,
+ PageModuleId = 10,
+ PageId = 20,
+ Title = "Sample Module",
+ Pane = "ContentPane",
+ Order = 1,
+ ContainerType = "Default",
+ EffectiveDate = DateTime.Now,
+ ExpiryDate = DateTime.Now.AddYears(1),
+ DeletedBy = null,
+ DeletedOn = null,
+ IsDeleted = false,
+ ModuleType = "Oqtane.Modules.Text.TextModule",
+ PaneModuleIndex = 0,
+ PaneModuleCount = 1,
+ RenderId = Guid.NewGuid(),
+ SecurityAccessLevel = SecurityAccessLevel.View,
+ ControlTitle = "Text Module",
+ Actions = "View;Edit",
+ UseAdminContainer = true,
+ RenderMode = "Server",
+ Prerender = false,
+ PermissionList = new List<Permission>(),
+ Settings = new Dictionary<string, string>()
+};
+
+// Cloning the module object
+var clonedModule = module.Clone();
+
+Change Log:
+
+Initial Creation : Added primary properties for ModuleId
, SiteId
, ModuleDefinitionName
, AllPages
, DeletedBy
, DeletedOn
, IsDeleted
, PermissionList
, Settings
, PageModuleId
, PageId
, Title
, Pane
, Order
, ContainerType
, EffectiveDate
, ExpiryDate
, ModuleType
, PaneModuleIndex
, PaneModuleCount
, RenderId
, SecurityAccessLevel
, ControlTitle
, Actions
, UseAdminContainer
, RenderMode
, and Prerender
.
+Enhancement : Added Clone
method for creating copies of the Module
object.
+
+
+ModuleContent Model
+The ModuleContent
model is used for enabling import/export of module data within the Oqtane framework.
+Properties:
+
+ModuleDefinitionName : Reference to the ModuleDefinition
for which this content is relevant.
+Version : Version of the ModuleDefinition
used, not the version of the content.
+Content : Serialized content of the module for import/export.
+
+Example Usage:
+var moduleContent = new ModuleContent
+{
+ ModuleDefinitionName = "TextModule",
+ Version = "1.0.0",
+ Content = "{\"Text\":\"Hello, world!\"}"
+};
+
+Change Log:
+
+Initial Creation : Added properties for ModuleDefinitionName
, Version
, and Content
.
+
+
+ModuleDefinition Model
+The ModuleDefinition
model describes a module type in Oqtane. The available modules are determined at startup.
+Properties:
+
+ModuleDefinitionId : Reference to the ModuleDefinition
.
+ModuleDefinitionName : Name of the ModuleDefinition
.
+Name : Friendly name to show in the UI.
+Description : Module description for admin dialogs.
+Categories : Categories this module will be shown in (in the admin dialogs).
+Version : Version information of this module based on the DLL / NuGet package.
+Owner : (Not Mapped) Owner of the module.
+Url : (Not Mapped) URL for more information about the module.
+Contact : (Not Mapped) Contact information for the module.
+License : (Not Mapped) License information for the module.
+Runtimes : (Not Mapped) Supported runtimes for the module.
+Dependencies : (Not Mapped) Dependencies required for the module.
+PermissionNames : (Not Mapped) Names of permissions associated with the module.
+ServerManagerType : (Not Mapped) Type of the server manager for the module.
+ControlTypeRoutes : (Not Mapped) Routes for the control types used by the module.
+ReleaseVersions : (Not Mapped) Comma-delimited list of all official release versions of the module (e.g., "1.0.0,1.0.1").
+DefaultAction : (Not Mapped) Default action for the module.
+SettingsType : (Not Mapped) Type of settings used by the module (added in 2.0.2).
+PackageName : (Not Mapped) Package name of the module (added in 2.1.0).
+Resources : (Not Mapped) List of resources used by the module (added in 4.0.0).
+IsAutoEnabled : (Not Mapped) Indicates if the module is auto-enabled (added in 4.0.0).
+PageTemplates : (Not Mapped) List of page templates associated with the module (added in 4.0.0).
+SiteId : (Not Mapped) Internal property for the site ID.
+IsEnabled : (Not Mapped) Indicates if the module is enabled.
+ControlTypeTemplate : (Not Mapped) Template for the control type.
+AssemblyName : (Not Mapped) Assembly name of the module.
+PermissionList : (Not Mapped) List of permissions associated with the module.
+Template : (Not Mapped) Template used by the module.
+IsPortable : (Not Mapped) Indicates if the module is portable.
+Permissions : (Deprecated, Not Mapped) Use PermissionList
instead.
+
+Example Usage:
+var moduleDefinition = new ModuleDefinition
+{
+ ModuleDefinitionId = 1,
+ ModuleDefinitionName = "TextModule",
+ Name = "Text Module",
+ Description = "A module for displaying text content.",
+ Categories = "Content",
+ Version = "1.0.0",
+ Owner = "Oqtane",
+ Url = "https://oqtane.org",
+ Contact = "support@oqtane.org",
+ License = "MIT",
+ Runtimes = "netcoreapp3.1",
+ Dependencies = "Oqtane.Modules.Text",
+ PermissionNames = "View;Edit",
+ ServerManagerType = "Oqtane.Modules.Text.ServerManager",
+ ControlTypeRoutes = "View;Edit",
+ ReleaseVersions = "1.0.0",
+ DefaultAction = "View",
+ SettingsType = "Oqtane.Modules.Text.Settings",
+ PackageName = "Oqtane.Modules.Text",
+ Resources = new List<Resource>(),
+ IsAutoEnabled = true,
+ PageTemplates = new List<PageTemplate>(),
+ SiteId = 1,
+ IsEnabled = true,
+ ControlTypeTemplate = "Oqtane.Modules.Text.Template",
+ AssemblyName = "Oqtane.Modules.Text",
+ PermissionList = new List<Permission>(),
+ Template = "Default",
+ IsPortable = true
+};
+
+Change Log:
+
+Initial Creation : Added primary properties for ModuleDefinitionId
, ModuleDefinitionName
, Name
, Description
, Categories
, Version
, Owner
, Url
, Contact
, License
, Runtimes
, Dependencies
, PermissionNames
, ServerManagerType
, ControlTypeRoutes
, ReleaseVersions
, DefaultAction
, SettingsType
, PackageName
, Resources
, IsAutoEnabled
, PageTemplates
, SiteId
, IsEnabled
, ControlTypeTemplate
, AssemblyName
, PermissionList
, Template
, and IsPortable
.
+Enhancement : Added Permissions
property as deprecated and provided PermissionList
as a replacement.
+
+
+Notification Model
+The Notification
model represents a notification for a user, usually meant to be sent as an email.
+Properties:
+
+NotificationId : Internal ID.
+SiteId : Reference to the Site
on which the notification was created.
+FromUserId : Nullable ID of the user who created the notification.
+FromDisplayName : Display name of the creator.
+FromEmail : Email address of the creator.
+ToUserId : Nullable ID of the recipient user (can be null if the recipient is not a user).
+ToDisplayName : Display name of the recipient.
+ToEmail : Email address of the recipient.
+ParentId : Nullable reference to an optional parent Notification
in case of a thread with reply messages.
+Subject : Subject of the notification.
+Body : Body/content of the notification.
+CreatedOn : Timestamp when the notification was created.
+IsDelivered : Indicates whether the notification has been delivered.
+DeliveredOn : Nullable timestamp when the notification was delivered.
+DeletedBy : User who deleted the notification (if applicable).
+DeletedOn : Nullable timestamp when the notification was deleted.
+IsDeleted : Indicates whether the notification is deleted.
+SendOn : Nullable timestamp when the notification should be sent.
+IsRead : Indicates whether the notification has been read.
+
+Example Usage:
+var notification = new Notification
+{
+ NotificationId = 1,
+ SiteId = 1,
+ FromUserId = 2,
+ FromDisplayName = "Admin",
+ FromEmail = "admin@example.com",
+ ToUserId = 3,
+ ToDisplayName = "User",
+ ToEmail = "user@example.com",
+ Subject = "Welcome to Oqtane",
+ Body = "Hello, welcome to Oqtane!",
+ CreatedOn = DateTime.UtcNow,
+ IsDelivered = false,
+ SendOn = DateTime.UtcNow.AddHours(1)
+};
+
+Change Log:
+
+Initial Creation : Added properties for NotificationId
, SiteId
, FromUserId
, FromDisplayName
, FromEmail
, ToUserId
, ToDisplayName
, ToEmail
, ParentId
, Subject
, Body
, CreatedOn
, IsDelivered
, DeliveredOn
, DeletedBy
, DeletedOn
, IsDeleted
, SendOn
, and IsRead
.
+
+
+Package Model
+The Package
model represents a software package for installation within the Oqtane framework.
+Properties:
+
+PackageId : ID of the package, usually constructed from the namespace.
+Owner : Owner of the package.
+OwnerUrl : URL for the owner of the package.
+Name : Friendly name of the package.
+Description : Description of the package.
+LogoFileId : Nullable ID for the logo file.
+LogoUrl : URL for the logo image.
+License : License for the package.
+ProductUrl : URL for the product.
+Version : Version as defined in the NuGet package.
+Downloads : Download count to show how popular the package is.
+ReleaseDate : Date the package was released.
+PackageUrl : Direct URL for downloading the package.
+SupportUrl : Direct URL for getting support for the package.
+Vulnerabilities : Indicates if any known security vulnerabilities exist.
+Price : (Commercial) Nullable price of the package.
+PaymentUrl : (Commercial) URL for purchasing the package.
+TrialPeriod : (Commercial) Trial period in days.
+ExpiryDate : (Commercial) Nullable expiry date of the package.
+
+Example Usage:
+var package = new Package
+{
+ PackageId = "Oqtane.Modules.Text",
+ Owner = "Oqtane",
+ OwnerUrl = "https://oqtane.org",
+ Name = "Text Module",
+ Description = "A module for displaying text content.",
+ LogoFileId = null,
+ LogoUrl = "https://oqtane.org/images/logo.png",
+ License = "MIT",
+ ProductUrl = "https://oqtane.org",
+ Version = "1.0.0",
+ Downloads = 1000,
+ ReleaseDate = DateTime.UtcNow,
+ PackageUrl = "https://oqtane.org/downloads/textmodule.zip",
+ SupportUrl = "https://oqtane.org/support",
+ Vulnerabilities = 0,
+ Price = 0.0m,
+ PaymentUrl = "https://oqtane.org/payment",
+ TrialPeriod = 30,
+ ExpiryDate = null
+};
+
+Change Log:
+
+Initial Creation : Added properties for PackageId
, Owner
, OwnerUrl
, Name
, Description
, LogoFileId
, LogoUrl
, License
, ProductUrl
, Version
, Downloads
, ReleaseDate
, PackageUrl
, SupportUrl
, Vulnerabilities
, Price
, PaymentUrl
, TrialPeriod
, and ExpiryDate
.
+
+
+Page Model
+The Page
model describes a page in Oqtane.
+Properties:
+
+PageId : ID of the page.
+SiteId : Reference to the Site
.
+Path : Path of the page.
+ParentId : Nullable reference to the parent Page
, if it has one.
+Name : Name of the page.
+Title : Page title shown in the browser tab.
+Order : Sort order in the list of sibling pages.
+Url : Full URL to this page.
+ThemeType : Reference to the Theme
used to display this page.
+DefaultContainerType : Reference to the container used for modules on this page.
+HeadContent : Content to be included in the head of the page.
+BodyContent : Content to be included in the body of the page.
+Icon : Icon class name for this page.
+IsNavigation : Indicates if this page should be included in the navigation menu.
+IsClickable : Indicates if this page should be clickable in the navigation menu.
+IsPersonalizable : Indicates if the page is personalizable, allowing users to create custom versions.
+UserId : Nullable reference to the user who owns the personalized page.
+EffectiveDate : Nullable start date of when this page is visible.
+ExpiryDate : Nullable end date of when this page is visible.
+Level : (Not Mapped) The hierarchical level of the page.
+HasChildren : (Not Mapped) Indicates if the page has sub-pages.
+PermissionList : (Not Mapped) List of permissions for this page.
+Settings : (Not Mapped) List of settings for this page.
+Panes : (Not Mapped) List of pane names for the theme assigned to this page.
+Resources : (Not Mapped) List of resources (CSS, JS) needed to render this page properly.
+DeletedBy : User who deleted the page (if applicable).
+DeletedOn : Nullable timestamp when the page was deleted.
+IsDeleted : Indicates if the page is deleted.
+EditMode : (Deprecated, Not Mapped) Indicates if the page is in edit mode.
+LayoutType : (Deprecated, Not Mapped) Layout type of the page.
+Permissions : (Deprecated, Not Mapped) Use PermissionList
instead.
+
+Example Usage:
+var page = new Page
+{
+ PageId = 1,
+ SiteId = 1,
+ Path = "home",
+ ParentId = null,
+ Name = "Home",
+ Title = "Home Page",
+ Order = 1,
+ Url = "/home",
+ ThemeType = "DefaultTheme",
+ DefaultContainerType = "DefaultContainer",
+ HeadContent = "<meta name=\"description\" content=\"Home page\">",
+ BodyContent = "<div>Welcome to the home page!</div>",
+ Icon = "home",
+ IsNavigation = true,
+ IsClickable = true,
+ IsPersonalizable = false,
+ UserId = null,
+ EffectiveDate = DateTime.UtcNow,
+ ExpiryDate = null,
+ Level = 0,
+ HasChildren = false,
+ PermissionList = new List<Permission>(),
+ Settings = new Dictionary<string, string>()
+};
+
+// Cloning the page object
+var clonedPage = page.Clone();
+
+Change Log:
+
+Initial Creation : Added properties for PageId
, SiteId
, Path
, ParentId
, Name
, Title
, Order
, Url
, ThemeType
, DefaultContainerType
, HeadContent
, BodyContent
, Icon
, IsNavigation
, IsClickable
, IsPersonalizable
, UserId
, EffectiveDate
, ExpiryDate
, Level
, HasChildren
, PermissionList
, Settings
, Panes
, Resources
, DeletedBy
, DeletedOn
, IsDeleted
, EditMode
, LayoutType
, and Permissions
.
+Enhancement : Added Clone
method for creating copies of the Page
object.
+
+
+PageModule Model
+The PageModule
model provides information about a Module
instance on a Page
.
+Properties:
+
+PageModuleId : Internal ID to identify this instance.
+PageId : Reference to the Page
.
+ModuleId : Reference to the Module
.
+Title : Module title shown in the container if the container shows titles.
+Pane : The pane in which this module instance appears.
+Order : The sorting order or position in the pane where this module appears.
+ContainerType : Reference to a Razor container that wraps this module instance.
+EffectiveDate : Nullable start date of when this assignment is valid.
+ExpiryDate : Nullable end date of when this assignment is valid.
+DeletedBy : User who deleted the instance (if applicable).
+DeletedOn : Nullable timestamp when the instance was deleted.
+IsDeleted : Indicates if the instance is deleted.
+Module : The Module
itself.
+Page : The Page
itself.
+
+Example Usage:
+var pageModule = new PageModule
+{
+ PageModuleId = 1,
+ PageId = 2,
+ ModuleId = 3,
+ Title = "Sample Module",
+ Pane = "ContentPane",
+ Order = 1,
+ ContainerType = "DefaultContainer",
+ EffectiveDate = DateTime.UtcNow,
+ ExpiryDate = DateTime.UtcNow.AddYears(1),
+ DeletedBy = null,
+ DeletedOn = null,
+ IsDeleted = false,
+ Module = new Module { ModuleId = 3, SiteId = 1, ModuleDefinitionName = "TextModule" },
+ Page = new Page { PageId = 2, SiteId = 1, Path = "home" }
+};
+
+Change Log:
+
+Initial Creation : Added properties for PageModuleId
, PageId
, ModuleId
, Title
, Pane
, Order
, ContainerType
, EffectiveDate
, ExpiryDate
, DeletedBy
, DeletedOn
, IsDeleted
, Module
, and Page
.
+
+
+Permission Model
+The Permission
model provides information about permissions for entities in Oqtane. Entities in Oqtane can be identified and described using this model.
+Properties:
+
+PermissionId : Internal ID storing this information.
+SiteId : Reference to the Site
which contains both the target entity and permissions.
+EntityName : Name of the entity these permissions apply to (e.g., Module).
+EntityId : ID of the entity these permissions apply to (e.g., a ModuleId). A value of -1 indicates the permission applies to all entity names regardless of ID (e.g., API permissions).
+PermissionName : Name of the permission (e.g., View).
+RoleId : Nullable ID of the Role
this permission applies to. If null, then this is a user permission.
+RoleName : (Not Mapped) The role name associated with the RoleId.
+UserId : Nullable ID of the User
this permission applies to. If null, then this is a role permission.
+IsAuthorized : Indicates the type of permission (grant = true, deny = false).
+
+Example Usage:
+var permission = new Permission
+{
+ PermissionId = 1,
+ SiteId = 1,
+ EntityName = "Module",
+ EntityId = 10,
+ PermissionName = "View",
+ RoleId = null,
+ RoleName = "Administrator",
+ UserId = null,
+ IsAuthorized = true
+};
+
+// Cloning the permission object
+var clonedPermission = permission.Clone();
+
+Change Log:
+
+Initial Creation : Added properties for PermissionId
, SiteId
, EntityName
, EntityId
, PermissionName
, RoleId
, RoleName
, UserId
, and IsAuthorized
.
+Enhancement : Added Clone
method for creating copies of the Permission
object.
+
+
+Profile Model
+The Profile
model represents a single profile property information of a User
. A user will have multiple profile properties to fully describe their profile.
+Properties:
+
+ProfileId : Internal ID.
+SiteId : Nullable reference to the Site
. Certain users, like super-users, may not belong to any specific site.
+Name : Name of the profile property (not the user name).
+Title : Label of the profile property.
+Description : Description of the property for the UI.
+Category : Category of the profile property for grouping, etc.
+ViewOrder : Order of the property in the list of profile properties.
+MaxLength : Limits the input length of the property.
+DefaultValue : Initial or default value of the property.
+IsRequired : Indicates if the profile property is required.
+IsPrivate : Indicates if the profile property is private, meaning other users won't see them.
+Options : Possible values for dropdown input fields.
+Validation : Optional regular expression validation.
+Rows : Optional number of rows for textarea input.
+Autocomplete : Autocomplete setting for the property, enabling autocomplete for the corresponding input field if set.
+
+Example Usage:
+var profile = new Profile
+{
+ ProfileId = 1,
+ SiteId = 2,
+ Name = "FirstName",
+ Title = "First Name",
+ Description = "User's first name",
+ Category = "Personal Information",
+ ViewOrder = 1,
+ MaxLength = 50,
+ DefaultValue = "",
+ IsRequired = true,
+ IsPrivate = false,
+ Options = null,
+ Validation = "^[A-Za-z]+$",
+ Rows = 1,
+ Autocomplete = "given-name"
+};
+
+Change Log:
+
+Initial Creation : Added properties for ProfileId
, SiteId
, Name
, Title
, Description
, Category
, ViewOrder
, MaxLength
, DefaultValue
, IsRequired
, IsPrivate
, Options
, Validation
, Rows
, and Autocomplete
.
+
+
+RequestCulture Model
+The RequestCulture
model describes culture information for a request, including both formatting and UI cultures.
+Properties:
+
+Culture : Gets the CultureInfo
for the request to be used for formatting.
+UICulture : Gets the CultureInfo
for the request to be used for text, i.e., language.
+
+Example Usage:
+var requestCulture = new RequestCulture("en-US");
+
+// Accessing properties
+CultureInfo culture = requestCulture.Culture; // returns CultureInfo for "en-US"
+CultureInfo uiCulture = requestCulture.UICulture; // returns CultureInfo for "en-US"
+
+Constructors:
+
+RequestCulture(CultureInfo culture) : Creates a new RequestCulture
object with both Culture
and UICulture
properties set to the same CultureInfo
value.
+RequestCulture(string culture) : Creates a new RequestCulture
object with both Culture
and UICulture
properties set to the same CultureInfo
value.
+RequestCulture(string culture, string uiCulture) : Creates a new RequestCulture
object with Culture
and UICulture
properties set to the respective CultureInfo
values provided as strings.
+RequestCulture(CultureInfo culture, CultureInfo uiCulture) : Creates a new RequestCulture
object with Culture
and UICulture
properties set to the respective CultureInfo
values provided.
+
+Change Log:
+
+Initial Creation : Added properties for Culture
and UICulture
, and various constructors for initializing these properties.
+
+
+Resource Model
+The Resource
model describes a JavaScript or CSS file which is needed by the module to work.
+Properties:
+
+ResourceType : A ResourceType
so the interop can properly create script
or link
tags.
+Url : Path to the resource (query string parameters can be included for cache busting, e.g., ?v=#
).
+Integrity : Integrity checks to increase the security of resources accessed, especially common in CDN resources.
+CrossOrigin : Cross-origin rules for this resource, usually anonymous
.
+Bundle : For scripts, a bundle can be used to identify dependencies and ordering in the script loading process.
+Level : For stylesheets, this defines the relative position for cascading purposes.
+Location : For scripts, this defines if the resource should be included in the head or body.
+ES6Module : For scripts, allows type="module"
registrations (not applicable to stylesheets).
+Content : Allows specification of inline script (not applicable to stylesheets).
+RenderMode : For scripts, this defines the render mode (default is all render modes) - not applicable to stylesheets.
+Reload : Indicates that a script should be reloaded on every page transition - not applicable to stylesheets.
+Namespace : The namespace of the component that declared the resource, used only in SiteRouter
.
+Declaration : (Deprecated) Use ResourceDeclaration
instead.
+
+Example Usage:
+var resource = new Resource
+{
+ ResourceType = ResourceType.Script,
+ Url = "/scripts/myscript.js?v=1.0.0",
+ Integrity = "sha384-abc123",
+ CrossOrigin = "anonymous",
+ Bundle = "main",
+ Level = ResourceLevel.Page,
+ Location = ResourceLocation.Body,
+ ES6Module = true,
+ Content = "console.log('Hello, world!');",
+ RenderMode = "Server",
+ Reload = true,
+ Namespace = "Oqtane.Modules"
+};
+
+// Cloning the resource object
+var clonedResource = resource.Clone(ResourceLevel.Page, "Oqtane.Modules");
+
+Change Log:
+
+Initial Creation : Added properties for ResourceType
, Url
, Integrity
, CrossOrigin
, Bundle
, Level
, Location
, ES6Module
, Content
, RenderMode
, Reload
, Namespace
, and Declaration
.
+Enhancement : Added Clone
method for creating copies of the Resource
object.
+
+
+Result Model
+The Result
model represents the outcome of an operation, including a success flag and an optional message.
+Properties:
+
+Success : Indicates whether the operation was successful.
+Message : An optional message providing additional information about the result.
+
+Example Usage:
+var result1 = new Result(true);
+var result2 = new Result(false, "An error occurred");
+
+// Accessing properties
+bool isSuccess = result1.Success; // returns true
+string message = result2.Message; // returns "An error occurred"
+
+Constructors:
+
+Result(bool success) : Initializes a new instance of the Result
class with a success flag.
+Result(bool success, string message) : Initializes a new instance of the Result
class with a success flag and a message.
+
+Change Log:
+
+Initial Creation : Added properties for Success
and Message
, along with constructors for initializing these properties.
+
+
+Role Model
+The Role
model describes a security role in Oqtane.
+Properties:
+
+RoleId : Primary ID.
+SiteId : Nullable reference to a Site
, if applicable.
+Name : Role name to show in admin dialogs.
+Description : Brief description for admin dialogs.
+IsAutoAssigned : Determines if users automatically get assigned to this role.
+IsSystem : Indicates if the role is a system role.
+
+Example Usage:
+var role = new Role
+{
+ RoleId = 1,
+ SiteId = 2,
+ Name = "Administrator",
+ Description = "Admin role with full permissions",
+ IsAutoAssigned = false,
+ IsSystem = true
+};
+
+Change Log:
+
+Initial Creation : Added properties for RoleId
, SiteId
, Name
, Description
, IsAutoAssigned
, and IsSystem
.
+
+
+Route Model
+The Route
model describes a route comprising multiple components. The structure is {scheme}://{hostname}/{aliaspath}/{pagepath}/*/{moduleid}/{action}/!/{urlparameters}?{query}#{fragment}
.
+Properties:
+
+Authority : The host name or IP address and port number (does not include scheme or trailing slash).
+Scheme : A fully qualified route contains a scheme (e.g., http, https).
+Host : A fully qualified route contains a host name, which may include a port number.
+Port : A host name may contain a port number.
+AbsolutePath : The absolute path for the route.
+PathAndQuery : The absolute path for the route including the query string.
+AliasPath : An absolute path may contain an alias path.
+PagePath : An absolute path may contain a page path.
+ModuleId : A route may contain a module ID, located after the module delimiter segment (/*/).
+Action : A route may contain an action, located after the module ID.
+UrlParameters : A route may contain parameters located after the URL parameter delimiter segment (/!/).
+Query : All query string parameters (prefixed with a ? delimiter).
+Fragment : A route may contain a fragment located after the # delimiter.
+RootUrl : Contains the resource identifier for the root of an Oqtane installation (including scheme).
+SiteUrl : Contains the resource identifier for the home page of a specific Oqtane site (including scheme and possibly an alias path).
+
+Example Usage:
+var route = new Route("https://example.com/oqtane/home/*/10/View/!/param1?query=value#fragment", "oqtane");
+
+// Accessing properties
+string authority = route.Authority; // returns "example.com"
+string scheme = route.Scheme; // returns "https"
+string host = route.Host; // returns "example.com"
+string port = route.Port; // returns "443"
+string absolutePath = route.AbsolutePath; // returns "/oqtane/home/*/10/View/!/param1"
+string pathAndQuery = route.PathAndQuery; // returns "/oqtane/home/*/10/View/!/param1?query=value"
+string aliasPath = route.AliasPath; // returns "oqtane"
+string pagePath = route.PagePath; // returns "home"
+string moduleId = route.ModuleId; // returns "10"
+string action = route.Action; // returns "View"
+string urlParameters = route.UrlParameters; // returns "param1"
+string query = route.Query; // returns "?query=value"
+string fragment = route.Fragment; // returns "#fragment"
+string rootUrl = route.RootUrl; // returns "https://example.com"
+string siteUrl = route.SiteUrl; // returns "https://example.com/oqtane"
+
+Constructors:
+
+Route() : Parameterless constructor to prevent deserialization exceptions.
+Route(string route, string aliaspath) : Initializes a new instance of the Route
class using the provided route and alias path.
+
+Change Log:
+
+Initial Creation : Added properties for Authority
, Scheme
, Host
, Port
, AbsolutePath
, PathAndQuery
, AliasPath
, PagePath
, ModuleId
, Action
, UrlParameters
, Query
, Fragment
, RootUrl
, and SiteUrl
.
+Enhancement : Added constructors for initializing these properties.
+
+
+SearchContent Model
+The SearchContent
model provides information about searchable content within a site in the Oqtane framework.
+Properties:
+
+SearchContentId : Internal ID of the searchable content.
+SiteId : ID of the site containing this content.
+EntityName : Name of the entity that this content pertains to.
+EntityId : ID of the entity that this content pertains to.
+Title : Title of the content.
+Description : Description of the content.
+Body : Body text of the content.
+Url : URL where the content can be accessed.
+Permissions : Comma-delimited string of permissions in the format EntityName:EntityId
.
+ContentModifiedBy : Username or identifier of the user who last modified the content.
+ContentModifiedOn : Timestamp when the content was last modified.
+AdditionalContent : Additional content or metadata.
+CreatedOn : Timestamp when the content was created.
+SearchContentProperties : (Not Mapped) List of properties related to the search content, used only during updates.
+Count : (Not Mapped) Count of matching records, populated only for queries.
+IsDeleted : (Not Mapped) Indicates if the content is deleted, used only during updates.
+TenantId : (Not Mapped) ID of the tenant, used only during updates.
+UniqueKey : (Not Mapped) Unique key for the content in the format TenantId:SiteId:EntityName:EntityId
.
+
+Example Usage:
+var searchContent = new SearchContent
+{
+ SearchContentId = 1,
+ SiteId = 1,
+ EntityName = "Page",
+ EntityId = "10",
+ Title = "Home Page",
+ Description = "This is the home page.",
+ Body = "<p>Welcome to the home page!</p>",
+ Url = "/home",
+ Permissions = "Page:10,Module:20",
+ ContentModifiedBy = "admin",
+ ContentModifiedOn = DateTime.UtcNow,
+ AdditionalContent = "",
+ CreatedOn = DateTime.UtcNow,
+ SearchContentProperties = new List<SearchContentProperty>(),
+ Count = 0,
+ IsDeleted = false,
+ TenantId = 1
+};
+
+// Accessing the unique key
+string uniqueKey = searchContent.UniqueKey; // returns "1:1:Page:10"
+
+Change Log:
+
+Initial Creation : Added properties for SearchContentId
, SiteId
, EntityName
, EntityId
, Title
, Description
, Body
, Url
, Permissions
, ContentModifiedBy
, ContentModifiedOn
, AdditionalContent
, CreatedOn
, SearchContentProperties
, Count
, IsDeleted
, TenantId
, and UniqueKey
.
+
+
+SearchContentProperty Model
+The SearchContentProperty
model represents a property related to search content within a site in the Oqtane framework.
+Properties:
+
+PropertyId : Internal ID of the search content property.
+SearchContentId : ID of the associated search content.
+Name : Name of the property.
+Value : Value of the property.
+
+Example Usage:
+var searchContentProperty = new SearchContentProperty
+{
+ PropertyId = 1,
+ SearchContentId = 10,
+ Name = "Author",
+ Value = "John Doe"
+};
+
+Change Log:
+
+Initial Creation : Added properties for PropertyId
, SearchContentId
, Name
, and Value
.
+
+
+SearchContentWord Model
+The SearchContentWord
model represents the relationship between search content and search words, tracking occurrences of specific words within the content.
+Properties:
+
+SearchContentWordId : Internal ID of the search content word relationship.
+SearchContentId : ID of the associated search content.
+SearchWordId : ID of the associated search word.
+Count : Number of times the word appears in the content.
+CreatedOn : Timestamp when the relationship was created.
+ModifiedOn : Timestamp when the relationship was last modified.
+SearchWord : The associated SearchWord
object.
+SearchContent : The associated SearchContent
object.
+
+Example Usage:
+var searchContentWord = new SearchContentWord
+{
+ SearchContentWordId = 1,
+ SearchContentId = 10,
+ SearchWordId = 5,
+ Count = 3,
+ CreatedOn = DateTime.UtcNow,
+ ModifiedOn = DateTime.UtcNow,
+ SearchWord = new SearchWord { SearchWordId = 5, Word = "example" },
+ SearchContent = new SearchContent { SearchContentId = 10, Title = "Example Content" }
+};
+
+Change Log:
+
+Initial Creation : Added properties for SearchContentWordId
, SearchContentId
, SearchWordId
, Count
, CreatedOn
, ModifiedOn
, SearchWord
, and SearchContent
.
+
+
+SearchQuery Model
+The SearchQuery
model represents the parameters used to perform a search within a site in the Oqtane framework.
+Properties:
+
+SiteId : ID of the site in which the search is performed.
+Alias : The Alias
associated with the site.
+Keywords : Keywords used for the search.
+IncludeEntities : Comma-delimited entities to include in the search.
+ExcludeEntities : Comma-delimited entities to exclude from the search.
+FromDate : Start date for the search range.
+ToDate : End date for the search range.
+Properties : Additional properties or filters for the search, represented as a dictionary.
+PageIndex : Index of the current page of results.
+PageSize : Number of results per page.
+SortField : Field by which to sort the search results.
+SortOrder : Order in which to sort the search results (ascending or descending).
+BodyLength : Length of the body text to return in the search results, defaulting to 255 characters.
+
+Example Usage:
+var searchQuery = new SearchQuery
+{
+ SiteId = 1,
+ Alias = new Alias { AliasId = 1, Name = "Default" },
+ Keywords = "Oqtane",
+ IncludeEntities = "Page,Module",
+ ExcludeEntities = "User",
+ FromDate = DateTime.UtcNow.AddMonths(-1),
+ ToDate = DateTime.UtcNow,
+ Properties = new Dictionary<string, string> { { "Category", "Documentation" } },
+ PageIndex = 0,
+ PageSize = 10,
+ SortField = SearchSortField.Title,
+ SortOrder = SearchSortOrder.Ascending,
+ BodyLength = 255
+};
+
+Change Log:
+
+Initial Creation : Added properties for SiteId
, Alias
, Keywords
, IncludeEntities
, ExcludeEntities
, FromDate
, ToDate
, Properties
, PageIndex
, PageSize
, SortField
, SortOrder
, and BodyLength
.
+
+
+SearchResult Model
+The SearchResult
model extends the SearchContent
model to include additional properties related to search results, such as score and snippet.
+Properties:
+
+SearchContentId : Inherited from SearchContent
- Internal ID of the searchable content.
+
+SiteId : Inherited from SearchContent
- ID of the site containing this content.
+
+EntityName : Inherited from SearchContent
- Name of the entity that this content pertains to.
+
+EntityId : Inherited from SearchContent
- ID of the entity that this content pertains to.
+
+Title : Inherited from SearchContent
- Title of the content.
+
+Description : Inherited from SearchContent
- Description of the content.
+
+Body : Inherited from SearchContent
- Body text of the content.
+
+Url : Inherited from SearchContent
- URL where the content can be accessed.
+
+Permissions : Inherited from SearchContent
- Comma-delimited string of permissions in the format EntityName:EntityId
.
+
+ContentModifiedBy : Inherited from SearchContent
- Username or identifier of the user who last modified the content.
+
+ContentModifiedOn : Inherited from SearchContent
- Timestamp when the content was last modified.
+
+AdditionalContent : Inherited from SearchContent
- Additional content or metadata.
+
+CreatedOn : Inherited from SearchContent
- Timestamp when the content was created.
+
+SearchContentProperties : Inherited from SearchContent
- List of properties related to the search content, used only during updates.
+
+Count : Inherited from SearchContent
- Count of matching records, populated only for queries.
+
+IsDeleted : Inherited from SearchContent
- Indicates if the content is deleted, used only during updates.
+
+TenantId : Inherited from SearchContent
- ID of the tenant, used only during updates.
+
+UniqueKey : Inherited from SearchContent
- Unique key for the content in the format TenantId:SiteId:EntityName:EntityId
.
+
+Score : Score of the search result.
+
+DisplayScore : Display score of the search result, formatted as a string.
+
+Snippet : Snippet of the content to display in the search result.
+
+
+Example Usage:
+var searchResult = new SearchResult
+{
+ SearchContentId = 1,
+ SiteId = 1,
+ EntityName = "Page",
+ EntityId = "10",
+ Title = "Home Page",
+ Description = "This is the home page.",
+ Body = "<p>Welcome to the home page!</p>",
+ Url = "/home",
+ Permissions = "Page:10,Module:20",
+ ContentModifiedBy = "admin",
+ ContentModifiedOn = DateTime.UtcNow,
+ AdditionalContent = "",
+ CreatedOn = DateTime.UtcNow,
+ SearchContentProperties = new List<SearchContentProperty>(),
+ Count = 0,
+ IsDeleted = false,
+ TenantId = 1,
+ Score = 0.95f,
+ DisplayScore = "95%",
+ Snippet = "Welcome to the home page!"
+};
+
+Change Log:
+
+Initial Creation : Added properties for Score
, DisplayScore
, and Snippet
.
+
+
+SearchResults Model
+The SearchResults
model represents the outcome of a search query, containing the list of search results and the total number of results.
+Properties:
+
+Results : List of search results (List<SearchResult>
).
+TotalResults : Total number of results returned by the search query.
+
+Example Usage:
+var searchResults = new SearchResults
+{
+ Results = new List<SearchResult>
+ {
+ new SearchResult
+ {
+ SearchContentId = 1,
+ SiteId = 1,
+ EntityName = "Page",
+ EntityId = "10",
+ Title = "Home Page",
+ Description = "This is the home page.",
+ Body = "<p>Welcome to the home page!</p>",
+ Url = "/home",
+ Permissions = "Page:10,Module:20",
+ ContentModifiedBy = "admin",
+ ContentModifiedOn = DateTime.UtcNow,
+ AdditionalContent = "",
+ CreatedOn = DateTime.UtcNow,
+ SearchContentProperties = new List<SearchContentProperty>(),
+ Count = 0,
+ IsDeleted = false,
+ TenantId = 1,
+ Score = 0.95f,
+ DisplayScore = "95%",
+ Snippet = "Welcome to the home page!"
+ }
+ },
+ TotalResults = 1
+};
+
+Change Log:
+
+Initial Creation : Added properties for Results
and TotalResults
.
+
+
+SearchWord Model
+The SearchWord
model represents a word that has been indexed for search purposes within a site in the Oqtane framework.
+Properties:
+
+SearchWordId : Internal ID of the search word.
+Word : The word that has been indexed.
+CreatedOn : Timestamp when the word was indexed.
+
+Example Usage:
+var searchWord = new SearchWord
+{
+ SearchWordId = 1,
+ Word = "example",
+ CreatedOn = DateTime.UtcNow
+};
+
+Change Log:
+
+Initial Creation : Added properties for SearchWordId
, Word
, and CreatedOn
.
+
+
+Setting Model
+The Setting
model represents a setting for various objects such as Tenant
, Site
, Page
, Module
, etc., within the Oqtane framework.
+Properties:
+
+SettingId : ID in the database, mainly used to later update an existing setting.
+EntityName : Name of the entity the setting is for (e.g., Page
, Site
).
+EntityId : ID of the entity being described (e.g., Site
number 2).
+SettingName : Name of the setting.
+SettingValue : The value of the setting. It is always a string, so ensure to convert or cast as needed.
+IsPrivate : Indicates if this setting is private, meaning it should be maintained on the server and not sent to the client.
+
+Example Usage:
+var setting = new Setting
+{
+ SettingId = 1,
+ EntityName = "Site",
+ EntityId = 2,
+ SettingName = "Theme",
+ SettingValue = "Default",
+ IsPrivate = false
+};
+
+Change Log:
+
+Initial Creation : Added properties for SettingId
, EntityName
, EntityId
, SettingName
, SettingValue
, and IsPrivate
.
+
+
+Site Model
+The Site
model describes a site in a Tenant
within an Oqtane installation. Sites can have multiple Alias
es.
+Properties:
+
+SiteId : The ID of the site.
+TenantId : Reference to the Tenant
the site is in.
+Name : The site name.
+LogoFileId : Reference to a File
that has the logo for this site. Should be an image.
+FaviconFileId : Reference to a File
that has the favicon for this site. Should be an image.
+DefaultThemeType : Default theme for the site.
+DefaultContainerType : Default container for the site.
+AdminContainerType : Default admin container.
+PwaIsEnabled : Indicates if the site is a progressive web application (PWA).
+PwaAppIconFileId : The app icon for the PWA.
+PwaSplashIconFileId : The splash icon for the PWA.
+AllowRegistration : Determines if visitors may register or create user accounts.
+VisitorTracking : Determines if site visitors will be recorded.
+CaptureBrokenUrls : Determines if broken URLs (404s) will be captured automatically.
+SiteGuid : Unique GUID to identify the site.
+RenderMode : The default render mode for the site (e.g., Static, Interactive, Headless).
+Runtime : The render mode for UI components requiring interactivity (e.g., Server, WebAssembly, Auto).
+Prerender : Indicates if the site supports prerendering (only applies to Interactive render mode).
+Hybrid : Indicates if a site can be integrated with an external .NET MAUI hybrid application.
+Version : Keeps track of site configuration changes and is used by the ISiteMigration interface.
+HomePageId : The home page of the site. The "/" path will be used by default if no home page is specified.
+HeadContent : Content to be included in the head of the page.
+BodyContent : Content to be included in the body of the page.
+IsDeleted : Indicates if the site is deleted.
+DeletedBy : The user who deleted the site.
+DeletedOn : The date the site was deleted.
+ImageFiles : (Not Mapped) The allowable image file extensions.
+UploadableFiles : (Not Mapped) The allowable file extensions which can be uploaded.
+SiteTemplateType : (Not Mapped) Used when provisioning a site from a site template.
+Settings : (Not Mapped) The settings for the site.
+Pages : (Not Mapped) List of pages for the site.
+Languages : (Not Mapped) List of languages for the site.
+Themes : (Not Mapped) List of themes for the site.
+
+Example Usage:
+var site = new Site
+{
+ SiteId = 1,
+ TenantId = 1,
+ Name = "Example Site",
+ LogoFileId = null,
+ FaviconFileId = null,
+ DefaultThemeType = "DefaultTheme",
+ DefaultContainerType = "DefaultContainer",
+ AdminContainerType = "AdminContainer",
+ PwaIsEnabled = false,
+ PwaAppIconFileId = null,
+ PwaSplashIconFileId = null,
+ AllowRegistration = true,
+ VisitorTracking = true,
+ CaptureBrokenUrls = true,
+ SiteGuid = Guid.NewGuid().ToString(),
+ RenderMode = "Static",
+ Runtime = "Server",
+ Prerender = false,
+ Hybrid = false,
+ Version = "1.0.0",
+ HomePageId = 1,
+ HeadContent = "<meta name=\"description\" content=\"Example site\">",
+ BodyContent = "<div>Welcome to the example site!</div>",
+ IsDeleted = false,
+ DeletedBy = null,
+ DeletedOn = null,
+ ImageFiles = ".jpg,.png,.gif",
+ UploadableFiles = ".jpg,.png,.gif,.pdf,.docx",
+ SiteTemplateType = "DefaultTemplate",
+ Settings = new Dictionary<string, string>(),
+ Pages = new List<Page>(),
+ Languages = new List<Language>(),
+ Themes = new List<Theme>()
+};
+
+// Cloning the site object
+var clonedSite = site.Clone();
+
+Change Log:
+
+Initial Creation : Added properties for SiteId
, TenantId
, Name
, LogoFileId
, FaviconFileId
, DefaultThemeType
, DefaultContainerType
, AdminContainerType
, PwaIsEnabled
, PwaAppIconFileId
, PwaSplashIconFileId
, AllowRegistration
, VisitorTracking
, CaptureBrokenUrls
, SiteGuid
, RenderMode
, Runtime
, Prerender
, Hybrid
, Version
, HomePageId
, HeadContent
, BodyContent
, IsDeleted
, DeletedBy
, DeletedOn
, ImageFiles
, UploadableFiles
, SiteTemplateType
, Settings
, Pages
, Languages
, and Themes
.
+Enhancement : Added Clone
method for creating copies of the Site
object.
+
+
+Sitemap Model
+The Sitemap
model describes a sitemap within the Oqtane framework.
+Properties:
+
+Url : URL of the sitemap.
+ModifiedOn : Timestamp indicating when the sitemap was last modified.
+
+Example Usage:
+var sitemap = new Sitemap
+{
+ Url = "https://example.com/sitemap.xml",
+ ModifiedOn = DateTime.UtcNow
+};
+
+Change Log:
+
+Initial Creation : Added properties for Url
and ModifiedOn
.
+
+
+SiteTemplate Model
+The SiteTemplate
model represents a template for creating a new site within the Oqtane framework.
+Properties:
+
+Name : Name of the site template.
+TypeName : Type name of the site template.
+
+Example Usage:
+var siteTemplate = new SiteTemplate
+{
+ Name = "Default Site Template",
+ TypeName = "Oqtane.SiteTemplates.Default"
+};
+
+Change Log:
+
+Initial Creation : Added properties for Name
and TypeName
.
+
+
+PageTemplate Model
+The PageTemplate
model represents a template for creating a new page within the Oqtane framework.
+Properties:
+
+Path : The path of the page.
+Parent : The parent path of the page.
+Name : The name of the page.
+Title : The title of the page.
+Order : The order of the page.
+Url : The URL of the page.
+ThemeType : The theme type of the page.
+DefaultContainerType : The default container type of the page.
+HeadContent : The content to be included in the head of the page.
+BodyContent : The content to be included in the body of the page.
+Icon : The icon of the page.
+IsNavigation : Indicates if the page should be included in the navigation menu.
+IsClickable : Indicates if the page should be clickable in the navigation menu.
+IsPersonalizable : Indicates if the page is personalizable.
+IsDeleted : Indicates if the page is deleted.
+PermissionList : List of permissions for the page.
+PageTemplateModules : List of modules for the page.
+AliasName : The alias name of the page.
+Version : The version of the page.
+Update : Indicates if the page should be updated.
+EditMode : (Obsolete) Indicates if the page is in edit mode.
+PagePermissions : (Obsolete) Use PermissionList
instead.
+
+Example Usage:
+var pageTemplate = new PageTemplate
+{
+ Path = "/example",
+ Parent = "/",
+ Name = "Example Page",
+ Title = "Example Page Title",
+ Order = 1,
+ Url = "/example",
+ ThemeType = "DefaultTheme",
+ DefaultContainerType = "DefaultContainer",
+ HeadContent = "<meta name=\"description\" content=\"Example page\">",
+ BodyContent = "<div>Welcome to the example page!</div>",
+ Icon = "example-icon",
+ IsNavigation = true,
+ IsClickable = true,
+ IsPersonalizable = false,
+ IsDeleted = false,
+ PermissionList = new List<Permission>
+ {
+ new Permission(PermissionNames.View, RoleNames.Admin, true),
+ new Permission(PermissionNames.Edit, RoleNames.Admin, true)
+ },
+ PageTemplateModules = new List<PageTemplateModule>(),
+ AliasName = "default",
+ Version = "1.0.0",
+ Update = false
+};
+
+Change Log:
+
+Initial Creation : Added properties for Path
, Parent
, Name
, Title
, Order
, Url
, ThemeType
, DefaultContainerType
, HeadContent
, BodyContent
, Icon
, IsNavigation
, IsClickable
, IsPersonalizable
, IsDeleted
, PermissionList
, PageTemplateModules
, AliasName
, Version
, Update
, EditMode
, and PagePermissions
.
+
+
+PageTemplateModule Model
+The PageTemplateModule
model represents a module within a page template in the Oqtane framework.
+Properties:
+
+ModuleDefinitionName : The name of the module definition.
+Title : The title of the module.
+Pane : The pane in which the module is placed.
+Order : The order of the module within the pane.
+ContainerType : The container type of the module.
+IsDeleted : Indicates if the module is deleted.
+PermissionList : List of permissions for the module.
+Content : The content of the module.
+ModulePermissions : (Obsolete) Use PermissionList
instead.
+
+Example Usage:
+var pageTemplateModule = new PageTemplateModule
+{
+ ModuleDefinitionName = "TextModule",
+ Title = "Text Module",
+ Pane = "ContentPane",
+ Order = 1,
+ ContainerType = "DefaultContainer",
+ IsDeleted = false,
+ PermissionList = new List<Permission>
+ {
+ new Permission(PermissionNames.View, RoleNames.Admin, true),
+ new Permission(PermissionNames.Edit, RoleNames.Admin, true)
+ },
+ Content = "Sample text content"
+};
+
+Change Log:
+
+Initial Creation : Added properties for ModuleDefinitionName
, Title
, Pane
, Order
, ContainerType
, IsDeleted
, PermissionList
, Content
, and ModulePermissions
.
+
+
+SqlQuery Model
+The SqlQuery
model represents a SQL query that belongs to a specific Tenant
within the Oqtane framework.
+Properties:
+
+TenantId : Reference to the Tenant
this query belongs to.
+DBType : Type of the database.
+DBConnectionString : Connection string for the database.
+Query : The SQL query to be executed.
+Results : List of results returned by the query, represented as a list of dictionaries.
+
+Example Usage:
+var sqlQuery = new SqlQuery
+{
+ TenantId = 1,
+ DBType = "SQLServer",
+ DBConnectionString = "Server=myServer;Database=myDB;User Id=myUser;Password=myPassword;",
+ Query = "SELECT * FROM Users",
+ Results = new List<Dictionary<string, string>>()
+};
+
+Change Log:
+
+Initial Creation : Added properties for TenantId
, DBType
, DBConnectionString
, Query
, and Results
.
+
+
+Sync Model
+The Sync
model represents a synchronization event within the Oqtane framework, containing the synchronization date and a list of synchronization events.
+Properties:
+
+SyncDate : The date and time when the synchronization occurred.
+SyncEvents : List of synchronization events (List<SyncEvent>
).
+
+Example Usage:
+var sync = new Sync
+{
+ SyncDate = DateTime.UtcNow,
+ SyncEvents = new List<SyncEvent>
+ {
+ new SyncEvent
+ {
+ TenantId = 1,
+ SiteId = 1,
+ EntityName = "Page",
+ EntityId = 10,
+ Action = "Update",
+ ModifiedOn = DateTime.UtcNow
+ }
+ }
+};
+
+
+SyncEvent Model
+The SyncEvent
model represents an individual synchronization event within the Oqtane framework.
+Properties:
+
+TenantId : ID of the tenant involved in the synchronization event.
+SiteId : ID of the site involved in the synchronization event.
+EntityName : Name of the entity involved in the synchronization event.
+EntityId : ID of the entity involved in the synchronization event.
+Action : Action performed in the synchronization event (e.g., "Update", "Delete").
+ModifiedOn : Timestamp when the event occurred.
+
+Example Usage:
+var syncEvent = new SyncEvent
+{
+ TenantId = 1,
+ SiteId = 1,
+ EntityName = "Page",
+ EntityId = 10,
+ Action = "Update",
+ ModifiedOn = DateTime.UtcNow
+};
+
+Change Log:
+
+Initial Creation : Added properties for SyncDate
and SyncEvents
to the Sync
model.
+Initial Creation : Added properties for TenantId
, SiteId
, EntityName
, EntityId
, Action
, and ModifiedOn
to the SyncEvent
model.
+
+
+Template Model
+The Template
model defines metadata for a module or theme template within the Oqtane framework.
+Properties:
+
+Name : Name of the template (folder name).
+Title : Title of the template.
+Type : Type of template (Internal or External).
+Version : Minimum framework version dependency.
+Namespace : Namespace of the template, which uses tokens.
+Location : Location where the template will be created (dynamically set).
+
+Example Usage:
+var template = new Template
+{
+ Name = "MyModuleTemplate",
+ Title = "My Module Template",
+ Type = "Internal",
+ Version = "1.0.0",
+ Namespace = "Oqtane.Modules.MyModule",
+ Location = "/path/to/template"
+};
+
+Change Log:
+
+Initial Creation : Added properties for Name
, Title
, Type
, Version
, Namespace
, and Location
.
+
+
+Tenant Model
+The Tenant
model describes a tenant in Oqtane. Tenants can contain multiple Site
s and have all their data in a separate database.
+Properties:
+
+TenantId : ID of the tenant.
+Name : Name of the tenant to show in tenant lists.
+DBConnectionString : Connection string to access this tenant's database.
+DBType : Type of database used by this tenant (new in v2.1.0).
+Version : Version of the tenant.
+
+Example Usage:
+var tenant = new Tenant
+{
+ TenantId = 1,
+ Name = "Default Tenant",
+ DBConnectionString = "Server=myServer;Database=myTenantDB;User Id=myUser;Password=myPassword;",
+ DBType = "SQLServer",
+ Version = "1.0.0"
+};
+
+Change Log:
+
+Initial Creation : Added properties for TenantId
, Name
, DBConnectionString
, DBType
, and Version
.
+
+
+Theme Model
+The Theme
model provides information about a theme in Oqtane.
+Properties:
+
+ThemeId : Reference ID of the theme.
+ThemeName : Full namespace/identifier of the theme.
+Name : Friendly name to show in the UI.
+Version : (Not Mapped) Version of the theme.
+Owner : (Not Mapped) Owner of the theme.
+Url : (Not Mapped) URL associated with the theme.
+Contact : (Not Mapped) Contact information for the theme owner.
+License : (Not Mapped) License of the theme.
+Dependencies : (Not Mapped) Dependencies required by the theme.
+ThemeSettingsType : (Not Mapped) Type of settings for the theme (added in v2.0.2).
+ContainerSettingsType : (Not Mapped) Type of settings for the container (added in v2.0.2).
+PackageName : (Not Mapped) Name of the package (added in v2.1.0).
+Resources : (Not Mapped) List of resources associated with the theme (added in v4.0.0).
+IsAutoEnabled : (Not Mapped) Indicates if the theme is auto-enabled (added in v4.0.0).
+SiteId : (Not Mapped) Internal site ID.
+IsEnabled : (Not Mapped) Indicates if the theme is enabled.
+AssemblyName : (Not Mapped) Assembly name of the theme.
+Themes : (Not Mapped) List of theme controls.
+Containers : (Not Mapped) List of container controls.
+Template : (Not Mapped) Template associated with the theme.
+ThemeControls : (Obsolete, Not Mapped) Use Themes
instead.
+PaneLayouts : (Obsolete, Not Mapped) Use Layouts
instead.
+ContainerControls : (Obsolete, Not Mapped) Use Containers
instead.
+Layouts : (Obsolete, Not Mapped) List of theme layouts.
+
+Example Usage:
+var theme = new Theme
+{
+ ThemeId = 1,
+ ThemeName = "Oqtane.Themes.Default",
+ Name = "Default Theme",
+ Version = "1.0.0",
+ Owner = "Oqtane Community",
+ Url = "https://oqtane.org",
+ Contact = "support@oqtane.org",
+ License = "MIT",
+ Dependencies = "",
+ ThemeSettingsType = "DefaultSettings",
+ ContainerSettingsType = "DefaultContainerSettings",
+ PackageName = "Oqtane.DefaultTheme",
+ Resources = new List<Resource>(),
+ IsAutoEnabled = true,
+ SiteId = 1,
+ IsEnabled = true,
+ AssemblyName = "Oqtane.DefaultTheme",
+ Themes = new List<ThemeControl>(),
+ Containers = new List<ThemeControl>(),
+ Template = "DefaultTemplate"
+};
+
+Change Log:
+
+Initial Creation : Added properties for ThemeId
, ThemeName
, Name
, Version
, Owner
, Url
, Contact
, License
, Dependencies
, ThemeSettingsType
, ContainerSettingsType
, PackageName
, Resources
, IsAutoEnabled
, SiteId
, IsEnabled
, AssemblyName
, Themes
, Containers
, Template
, ThemeControls
, PaneLayouts
, ContainerControls
, and Layouts
.
+
+
+ThemeControl Model
+The ThemeControl
model provides information about a theme control within the Oqtane framework.
+Properties:
+
+TypeName : Type name of the theme control.
+Name : Friendly name of the theme control.
+Thumbnail : URL or path to the thumbnail image of the theme control.
+Panes : Information about the panes in the theme control.
+
+Example Usage:
+var themeControl = new ThemeControl
+{
+ TypeName = "Oqtane.Themes.Default.DefaultTheme",
+ Name = "Default Theme",
+ Thumbnail = "/images/default-theme-thumbnail.png",
+ Panes = "ContentPane, SidePane"
+};
+
+Change Log:
+
+Initial Creation : Added properties for TypeName
, Name
, Thumbnail
, and Panes
.
+
+
+UrlMapping Model
+The UrlMapping
model describes a URL mapping in Oqtane.
+Properties:
+
+UrlMappingId : ID of this URL mapping.
+SiteId : Reference to a Site
.
+Url : A fully qualified URL.
+MappedUrl : A URL to which the visitor will be redirected.
+Requests : Number of requests all time for the URL.
+CreatedOn : Date when the URL was first requested for the site.
+RequestedOn : Date when the URL was last requested for the site.
+
+Example Usage:
+var urlMapping = new UrlMapping
+{
+ UrlMappingId = 1,
+ SiteId = 1,
+ Url = "https://example.com/old-url",
+ MappedUrl = "https://example.com/new-url",
+ Requests = 100,
+ CreatedOn = DateTime.UtcNow.AddMonths(-6),
+ RequestedOn = DateTime.UtcNow
+};
+
+Change Log:
+
+Initial Creation : Added properties for UrlMappingId
, SiteId
, Url
, MappedUrl
, Requests
, CreatedOn
, and RequestedOn
.
+
+
+User Model
+The User
model describes a user in Oqtane.
+Properties:
+
+UserId : ID of the user.
+Username : Username used for login.
+DisplayName : Name shown in menus and dialogs.
+Email : User's email address.
+PhotoFileId : Reference to a File
containing the user's photo.
+LastLoginOn : Timestamp of the user's last login.
+LastIPAddress : IP address when the user last logged in.
+TwoFactorRequired : Indicates if the user requires 2-factor authentication to sign in.
+TwoFactorCode : Stores the 2-factor verification code.
+TwoFactorExpiry : Expiry date and time for the 2-factor verification code.
+SecurityStamp : (Not Mapped) A token indicating if a user's security properties have been modified.
+SiteId : (Not Mapped) Reference to the Site
this user belongs to.
+Roles : (Not Mapped) Semi-colon delimited list of role names for the user.
+DeletedBy : (IDeletable) The user who deleted this user.
+DeletedOn : (IDeletable) Date when the user was deleted.
+IsDeleted : (IDeletable) Indicates if the user is deleted.
+Password : (Not Mapped) The user's password (not plaintext).
+IsAuthenticated : (Not Mapped) Indicates if the user is authenticated.
+FolderPath : (Not Mapped) Path name of the user's personal folder.
+EmailConfirmed : (Not Mapped) Indicates if the user's email address is confirmed.
+SuppressNotification : (Not Mapped) Indicates if new user should be notified by email.
+Settings : (Not Mapped) Public user settings.
+
+Example Usage:
+var user = new User
+{
+ UserId = 1,
+ Username = "john.doe",
+ DisplayName = "John Doe",
+ Email = "john.doe@example.com",
+ PhotoFileId = null,
+ LastLoginOn = DateTime.UtcNow,
+ LastIPAddress = "192.168.1.1",
+ TwoFactorRequired = true,
+ TwoFactorCode = "123456",
+ TwoFactorExpiry = DateTime.UtcNow.AddMinutes(10),
+ SecurityStamp = "XYZ",
+ SiteId = 1,
+ Roles = "Admin;User",
+ DeletedBy = null,
+ DeletedOn = null,
+ IsDeleted = false,
+ Password = null,
+ IsAuthenticated = true,
+ EmailConfirmed = true,
+ SuppressNotification = false,
+ Settings = new Dictionary<string, string> { { "Theme", "Dark" } }
+};
+
+// Accessing FolderPath
+string folderPath = user.FolderPath; // returns "Users/1/"
+
+Change Log:
+
+Initial Creation : Added properties for UserId
, Username
, DisplayName
, Email
, PhotoFileId
, LastLoginOn
, LastIPAddress
, TwoFactorRequired
, TwoFactorCode
, TwoFactorExpiry
, SecurityStamp
, SiteId
, Roles
, DeletedBy
, DeletedOn
, IsDeleted
, Password
, IsAuthenticated
, FolderPath
, EmailConfirmed
, SuppressNotification
, and Settings
.
+
+
+UserRole Model
+The UserRole
model assigns a Role
to a User
.
+Properties:
+
+UserRoleId : ID of this assignment.
+UserId : Reference to the User
who receives this Role
assignment.
+RoleId : Reference to the Role
which the User
receives.
+EffectiveDate : Start date of when this assignment is valid.
+ExpiryDate : End date of when this assignment is valid.
+IgnoreSecurityStamp : (Not Mapped) Indicates that the User Security Stamp should not be updated when this user role is added or updated.
+Role : Direct reference to the Role
object.
+User : Direct reference to the User
object.
+
+Example Usage:
+var userRole = new UserRole
+{
+ UserRoleId = 1,
+ UserId = 10,
+ RoleId = 2,
+ EffectiveDate = DateTime.UtcNow,
+ ExpiryDate = DateTime.UtcNow.AddYears(1),
+ IgnoreSecurityStamp = false,
+ Role = new Role { RoleId = 2, Name = "Admin" },
+ User = new User { UserId = 10, Username = "john.doe" }
+};
+
+Change Log:
+
+Initial Creation : Added properties for UserRoleId
, UserId
, RoleId
, EffectiveDate
, ExpiryDate
, IgnoreSecurityStamp
, Role
, and User
.
+
+
+UserValidateResult Model
+The UserValidateResult
model represents the result of validating a user within the Oqtane framework.
+Properties:
+
+Succeeded : Indicates whether the validation succeeded.
+Errors : Dictionary containing error messages, if any, with the key as the error field and the value as the error message.
+
+Example Usage:
+var userValidateResult = new UserValidateResult
+{
+ Succeeded = true,
+ Errors = new Dictionary<string, string>
+ {
+ { "Email", "Invalid email format" },
+ { "Password", "Password must be at least 6 characters long" }
+ }
+};
+
+Change Log:
+
+Initial Creation : Added properties for Succeeded
and Errors
.
+
+
+Visitor Model
+The Visitor
model describes a visitor in Oqtane.
+Properties:
+
+VisitorId : ID of this visitor.
+SiteId : Reference to a Site
.
+UserId : Reference to a User
, if applicable.
+Visits : Number of times a visitor has visited the site.
+IPAddress : Last recorded IP address of the visitor.
+UserAgent : Last recorded user agent of the visitor.
+Language : Last recorded language of the visitor.
+Url : Last recorded URL of the visitor.
+Referrer : Last recorded referrer of the visitor.
+CreatedOn : Date the visitor first visited the site.
+VisitedOn : Date the visitor last visited the site.
+User : Direct reference to the User
object, if applicable.
+
+Example Usage:
+var visitor = new Visitor
+{
+ VisitorId = 1,
+ SiteId = 1,
+ UserId = 10,
+ Visits = 5,
+ IPAddress = "192.168.1.1",
+ UserAgent = "Mozilla/5.0",
+ Language = "en-US",
+ Url = "https://example.com",
+ Referrer = "https://google.com",
+ CreatedOn = DateTime.UtcNow.AddMonths(-3),
+ VisitedOn = DateTime.UtcNow,
+ User = new User { UserId = 10, Username = "john.doe" }
+};
+
+Change Log:
+
+Initial Creation : Added properties for VisitorId
, SiteId
, UserId
, Visits
, IPAddress
, UserAgent
, Language
, Url
, Referrer
, CreatedOn
, VisitedOn
, and User
.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/database-management/index.html b/docs/guides/database-management/index.html
new file mode 100644
index 000000000..1031eab93
--- /dev/null
+++ b/docs/guides/database-management/index.html
@@ -0,0 +1,133 @@
+
+
+
+
+ Database Management in Oqtane | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Database Management in Oqtane
+
+Managing databases is a key part of working with Oqtane. This section covers everything from database best practices to migration and schema management. Below is an overview of the topics related to database management.
+Best Practices
+Before diving into specific topics, it's important to be familiar with the best practices for managing databases in Oqtane. Refer to the Best Practices guide for tips and recommendations on optimizing your database performance, security, and scalability.
+Database Setup and Installation
+The installation of your chosen database system (SQL Server, MySQL, PostgreSQL, or SQLite) is crucial to ensure proper integration with Oqtane. For detailed instructions on setting up databases in various environments, refer to the Database Installation Guide , which provides step-by-step instructions for Windows and Linux platforms.
+Database Migrations
+Database migrations in Oqtane allow you to evolve your database schema over time. If you're looking to perform or manage migrations, refer to the Database Migrations guide, which covers the process of migrating your database schema with each Oqtane release.
+Database Schema
+Understanding the database schema is key to effective database management. The schema outlines the structure of the Oqtane database and is essential for customizations, troubleshooting, and performance optimizations. For detailed information on the Oqtane database schema, refer to the Database Schema page.
+Related Pages
+
+For a comprehensive setup guide, please refer to the Installation Guide for environment-specific instructions.
+← Back to Documentation Guides Home Page
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/database-management/troubleshooting.html b/docs/guides/database-management/troubleshooting.html
new file mode 100644
index 000000000..347209c87
--- /dev/null
+++ b/docs/guides/database-management/troubleshooting.html
@@ -0,0 +1,134 @@
+
+
+
+
+ Troubleshooting Database Management | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Troubleshooting Database Management
+
+Overview
+This section provides resources and guidance for troubleshooting various database-related issues in Oqtane. Whether you're configuring your database, resolving migration issues, or troubleshooting performance problems, this guide will help you navigate and fix common database issues.
+Common Database Troubleshooting Topics
+Below are the key areas covered in this troubleshooting guide:
+
+Database Setup Issues
+Troubleshoot common setup issues, including database connection problems and configuration errors.
+
+Database Migrations
+Understand and resolve issues related to database migrations, including failed migrations and version conflicts.
+
+Performance Problems
+Tips for identifying slow queries, optimizing database performance, and scaling your database effectively.
+
+Database Integrity and Security
+Resolve issues with database security, access control, data corruption, and backup recovery.
+
+
+For detailed troubleshooting steps and solutions to specific database issues, refer to the full Database Troubleshooting Guide .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/docs/api-menu.html b/docs/guides/docs/api-menu.html
index 652b81d14..4d53b46e2 100644
--- a/docs/guides/docs/api-menu.html
+++ b/docs/guides/docs/api-menu.html
@@ -15,7 +15,7 @@
-
+
@@ -98,7 +98,7 @@ How the API-Navigation (TOC) Works
diff --git a/docs/guides/docs/build.html b/docs/guides/docs/build.html
index b0d3022a7..254ed2470 100644
--- a/docs/guides/docs/build.html
+++ b/docs/guides/docs/build.html
@@ -15,7 +15,7 @@
-
+
@@ -195,7 +195,7 @@ Questions
diff --git a/docs/guides/docs/code.html b/docs/guides/docs/code.html
index 243777337..1041026ac 100644
--- a/docs/guides/docs/code.html
+++ b/docs/guides/docs/code.html
@@ -15,7 +15,7 @@
-
+
@@ -130,7 +130,7 @@ Documenting Namespaces
diff --git a/docs/guides/docs/conventions.html b/docs/guides/docs/conventions.html
index f00ec2cf1..64ab5e7c7 100644
--- a/docs/guides/docs/conventions.html
+++ b/docs/guides/docs/conventions.html
@@ -15,7 +15,7 @@
-
+
@@ -122,7 +122,7 @@ 4. Creativity and Contribution
diff --git a/docs/guides/docs/folders.html b/docs/guides/docs/folders.html
index 74a5471c8..109a4a747 100644
--- a/docs/guides/docs/folders.html
+++ b/docs/guides/docs/folders.html
@@ -15,7 +15,7 @@
-
+
@@ -105,7 +105,7 @@ Assets Folders
diff --git a/docs/guides/docs/how-it-works.html b/docs/guides/docs/how-it-works.html
index 62a9a546f..403635883 100644
--- a/docs/guides/docs/how-it-works.html
+++ b/docs/guides/docs/how-it-works.html
@@ -15,7 +15,7 @@
-
+
@@ -125,7 +125,7 @@ Problems with Github links
diff --git a/docs/guides/docs/index.html b/docs/guides/docs/index.html
index 4af517252..4dad8ff0c 100644
--- a/docs/guides/docs/index.html
+++ b/docs/guides/docs/index.html
@@ -15,7 +15,7 @@
-
+
@@ -139,7 +139,7 @@ Setup
diff --git a/docs/guides/docs/markdown.html b/docs/guides/docs/markdown.html
index 6720f80b3..fb097a1ba 100644
--- a/docs/guides/docs/markdown.html
+++ b/docs/guides/docs/markdown.html
@@ -15,7 +15,7 @@
-
+
@@ -91,8 +91,8 @@ Links
Link to a website [website](https://www.oqtane.org/)
Link to another page [page](./build.md)
-Link to some Oqtane.Models [](xref:Oqtane.Models)
- will automatically pick the name of the target
-Link to a class File [](xref:Oqtane.Models.File)
+Link to some [](xref:Oqtane.Models)
- will automatically pick the name of the target
+Link to a class [](xref:Oqtane.Models.File)
Images
Images can be added it two ways - using markdown, or the HTML counterpart.
@@ -113,7 +113,7 @@
Videos
diff --git a/docs/guides/docs/project.html b/docs/guides/docs/project.html
index 10af45d39..4f1166845 100644
--- a/docs/guides/docs/project.html
+++ b/docs/guides/docs/project.html
@@ -15,7 +15,7 @@
-
+
@@ -144,7 +144,7 @@ Contribute
diff --git a/docs/guides/docs/run-in-iis.html b/docs/guides/docs/run-in-iis.html
index ba81c42de..ef20c8f01 100644
--- a/docs/guides/docs/run-in-iis.html
+++ b/docs/guides/docs/run-in-iis.html
@@ -15,7 +15,7 @@
-
+
@@ -97,7 +97,7 @@ Warning about Caching
diff --git a/docs/guides/docs/tips/index.html b/docs/guides/docs/tips/index.html
index a407d9028..b1c82be1b 100644
--- a/docs/guides/docs/tips/index.html
+++ b/docs/guides/docs/tips/index.html
@@ -15,7 +15,7 @@
-
+
@@ -158,7 +158,7 @@ Tip
diff --git a/docs/guides/extensions/best-practices/create-solutions-for-each-extension.html b/docs/guides/extensions/best-practices/create-solutions-for-each-extension.html
index cc4217c34..b9be9d9e0 100644
--- a/docs/guides/extensions/best-practices/create-solutions-for-each-extension.html
+++ b/docs/guides/extensions/best-practices/create-solutions-for-each-extension.html
@@ -15,7 +15,7 @@
-
+
@@ -122,7 +122,7 @@ Tip
diff --git a/docs/guides/extensions/best-practices/use-nuget-for-dependencies.html b/docs/guides/extensions/best-practices/use-nuget-for-dependencies.html
index ef4687cad..1e5edb86f 100644
--- a/docs/guides/extensions/best-practices/use-nuget-for-dependencies.html
+++ b/docs/guides/extensions/best-practices/use-nuget-for-dependencies.html
@@ -15,7 +15,7 @@
-
+
@@ -100,7 +100,7 @@ Important
diff --git a/docs/guides/extensions/build/dev.html b/docs/guides/extensions/build/dev.html
index 7b70d77fc..be73ae434 100644
--- a/docs/guides/extensions/build/dev.html
+++ b/docs/guides/extensions/build/dev.html
@@ -15,7 +15,7 @@
-
+
@@ -123,7 +123,7 @@ Remember to Restart your Oqtane
diff --git a/docs/guides/extensions/build/index.html b/docs/guides/extensions/build/index.html
index 900cf91fc..b48ffc1dd 100644
--- a/docs/guides/extensions/build/index.html
+++ b/docs/guides/extensions/build/index.html
@@ -15,7 +15,7 @@
-
+
@@ -168,7 +168,7 @@ Tip
diff --git a/docs/guides/extensions/build/installation.html b/docs/guides/extensions/build/installation.html
index eba4c285d..d24157a6e 100644
--- a/docs/guides/extensions/build/installation.html
+++ b/docs/guides/extensions/build/installation.html
@@ -15,7 +15,7 @@
-
+
@@ -106,7 +106,7 @@ Manual File-Copy Installation
diff --git a/docs/guides/extensions/build/package.html b/docs/guides/extensions/build/package.html
index 9894c44c9..90873dbdd 100644
--- a/docs/guides/extensions/build/package.html
+++ b/docs/guides/extensions/build/package.html
@@ -15,7 +15,7 @@
-
+
@@ -102,7 +102,7 @@ Oqtane Extension - Nuget Package
diff --git a/docs/guides/extensions/build/release.html b/docs/guides/extensions/build/release.html
index 2708c6c13..d419fdcdc 100644
--- a/docs/guides/extensions/build/release.html
+++ b/docs/guides/extensions/build/release.html
@@ -15,7 +15,7 @@
-
+
@@ -186,7 +186,7 @@ How can I change the Icon
diff --git a/docs/guides/extensions/index.html b/docs/guides/extensions/index.html
index 2e1d9351e..723000f19 100644
--- a/docs/guides/extensions/index.html
+++ b/docs/guides/extensions/index.html
@@ -15,7 +15,7 @@
-
+
@@ -126,10 +126,10 @@ Prerequisites
Blazor programming skills
HTML / CSS / JavaScript / Bootstrap5 skills
Git / GitHub skills
-Oqtane installation
+Oqtane installation
Basic Setup
-You will need to install Oqtane
+
You will need to install Oqtane
on your development machine to get started.
For this you have 2 options:
@@ -147,11 +147,12 @@ Next Steps
Themes
Modules
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/index.html b/docs/guides/index.html
index f4eaf8114..6fc9613b2 100644
--- a/docs/guides/index.html
+++ b/docs/guides/index.html
@@ -15,7 +15,7 @@
-
+
@@ -106,7 +106,7 @@ 📚 Current Guides
Installation
Step-by-step guide to getting Oqtane set up in your environment. Covers system requirements, installation procedures, and first-time setup.
-Migration
+
Migration
Instructions for migrating your Oqtane environment from development to production or between servers.
Modules
@@ -166,7 +166,7 @@
📣 Stay Updated
diff --git a/docs/guides/installation/databases.html b/docs/guides/installation/databases.html
index 422997c94..09244ec9c 100644
--- a/docs/guides/installation/databases.html
+++ b/docs/guides/installation/databases.html
@@ -15,7 +15,7 @@
-
+
@@ -217,7 +217,7 @@ Related Pages
diff --git a/docs/guides/installation/deploy-to-azure.html b/docs/guides/installation/deploy-to-azure.html
index 1e48cd9cd..4b4dfe6ab 100644
--- a/docs/guides/installation/deploy-to-azure.html
+++ b/docs/guides/installation/deploy-to-azure.html
@@ -15,7 +15,7 @@
-
+
@@ -125,7 +125,7 @@ Related Pages
diff --git a/docs/guides/installation/development-vs-code-linux.html b/docs/guides/installation/development-vs-code-linux.html
index eaf3fe5fb..2f64b84e0 100644
--- a/docs/guides/installation/development-vs-code-linux.html
+++ b/docs/guides/installation/development-vs-code-linux.html
@@ -15,7 +15,7 @@
-
+
@@ -167,7 +167,7 @@ Related Pages
diff --git a/docs/guides/installation/development-vs-code.html b/docs/guides/installation/development-vs-code.html
index 178a78965..525173acb 100644
--- a/docs/guides/installation/development-vs-code.html
+++ b/docs/guides/installation/development-vs-code.html
@@ -15,7 +15,7 @@
-
+
@@ -134,7 +134,7 @@ Related Pages
diff --git a/docs/guides/installation/development.html b/docs/guides/installation/development.html
index d8c58f690..00330eee3 100644
--- a/docs/guides/installation/development.html
+++ b/docs/guides/installation/development.html
@@ -15,7 +15,7 @@
-
+
@@ -239,7 +239,7 @@ Related Pages
diff --git a/docs/guides/installation/index.html b/docs/guides/installation/index.html
index f0f03e32c..b3f3b20a1 100644
--- a/docs/guides/installation/index.html
+++ b/docs/guides/installation/index.html
@@ -15,7 +15,7 @@
-
+
@@ -163,7 +163,7 @@ Resources
diff --git a/docs/guides/installation/linux-ubuntu-apache-mysql.html b/docs/guides/installation/linux-ubuntu-apache-mysql.html
index 6cffd4e0b..b1bdabb32 100644
--- a/docs/guides/installation/linux-ubuntu-apache-mysql.html
+++ b/docs/guides/installation/linux-ubuntu-apache-mysql.html
@@ -15,7 +15,7 @@
-
+
@@ -473,7 +473,7 @@ Related Pages
diff --git a/docs/guides/installation/linux-ubuntu-apache-postgresql.html b/docs/guides/installation/linux-ubuntu-apache-postgresql.html
index eaf0d61b2..40c1ea896 100644
--- a/docs/guides/installation/linux-ubuntu-apache-postgresql.html
+++ b/docs/guides/installation/linux-ubuntu-apache-postgresql.html
@@ -15,7 +15,7 @@
-
+
@@ -489,7 +489,7 @@ Related Pages
diff --git a/docs/guides/installation/maui-setup.html b/docs/guides/installation/maui-setup.html
index 86c0894b2..24c583aa2 100644
--- a/docs/guides/installation/maui-setup.html
+++ b/docs/guides/installation/maui-setup.html
@@ -15,7 +15,7 @@
-
+
@@ -177,7 +177,7 @@ Conclusion
diff --git a/docs/guides/installation/resources.html b/docs/guides/installation/resources.html
index fc849e90c..ba2ff3f22 100644
--- a/docs/guides/installation/resources.html
+++ b/docs/guides/installation/resources.html
@@ -15,7 +15,7 @@
-
+
@@ -190,7 +190,7 @@ Resources
diff --git a/docs/guides/installation/troubleshooting.html b/docs/guides/installation/troubleshooting.html
index 55d639fb1..aadd14953 100644
--- a/docs/guides/installation/troubleshooting.html
+++ b/docs/guides/installation/troubleshooting.html
@@ -15,7 +15,7 @@
-
+
@@ -100,7 +100,7 @@ Installation Troubleshooting Guides
Configuration File Errors : How to troubleshoot configuration file issues that prevent successful setup.
-Upgrading Installations
+
Upgrading Installations
This guide provides troubleshooting steps specifically for administrators upgrading their Oqtane installation. It addresses:
Upgrade Failures : Identifying and resolving problems during the upgrade process.
@@ -109,13 +109,22 @@ Installation Troubleshooting Guides
Post-Upgrade Issues : Resolving issues that arise after the upgrade is complete, such as broken links or missing data.
+Database Troubleshooting
+This guide addresses common database-related issues during both installation and upgrade. It includes:
+
+Database Connection Problems : Steps to resolve issues where the application cannot connect to the database.
+Database Migration Issues : Guidance on troubleshooting issues that occur when migrating databases.
+Data Integrity Problems : How to identify and resolve data corruption or missing data issues.
+Permissions and Access Control : Solutions for issues related to database access permissions and user roles.
+
+
These guides are designed to provide practical solutions and best practices to help you install and upgrade Oqtane smoothly.
diff --git a/docs/guides/installation/upgrade.html b/docs/guides/installation/upgrade.html
index 3fc518e85..12b1ba3d6 100644
--- a/docs/guides/installation/upgrade.html
+++ b/docs/guides/installation/upgrade.html
@@ -15,7 +15,7 @@
-
+
@@ -151,7 +151,7 @@ Resources
diff --git a/docs/guides/installation/walkthrough-dev/index.html b/docs/guides/installation/walkthrough-dev/index.html
index bdd4a6992..37708a0ef 100644
--- a/docs/guides/installation/walkthrough-dev/index.html
+++ b/docs/guides/installation/walkthrough-dev/index.html
@@ -15,7 +15,7 @@
-
+
@@ -161,7 +161,7 @@ Related Pages
diff --git a/docs/guides/installation/windows-iis-express-sql-express.html b/docs/guides/installation/windows-iis-express-sql-express.html
index 67d242b0e..ff2fd4549 100644
--- a/docs/guides/installation/windows-iis-express-sql-express.html
+++ b/docs/guides/installation/windows-iis-express-sql-express.html
@@ -15,7 +15,7 @@
-
+
@@ -244,7 +244,7 @@ Resources
diff --git a/docs/guides/installation/windows-iis-localdb.html b/docs/guides/installation/windows-iis-localdb.html
index 1c6d1dbc4..2f3852f55 100644
--- a/docs/guides/installation/windows-iis-localdb.html
+++ b/docs/guides/installation/windows-iis-localdb.html
@@ -15,7 +15,7 @@
-
+
@@ -244,7 +244,7 @@ Resources
diff --git a/docs/guides/installation/windows-iis-sql.html b/docs/guides/installation/windows-iis-sql.html
index c5cd794e3..fc1415acd 100644
--- a/docs/guides/installation/windows-iis-sql.html
+++ b/docs/guides/installation/windows-iis-sql.html
@@ -15,7 +15,7 @@
-
+
@@ -220,7 +220,7 @@ Resources
diff --git a/docs/guides/marketplace/assets/placeholder.html b/docs/guides/marketplace/assets/placeholder.html
index b527d9e7f..f7ef3d19b 100644
--- a/docs/guides/marketplace/assets/placeholder.html
+++ b/docs/guides/marketplace/assets/placeholder.html
@@ -15,7 +15,7 @@
-
+
@@ -89,7 +89,7 @@ Table of Contents
diff --git a/docs/guides/marketplace/index.html b/docs/guides/marketplace/index.html
index fdf385a6b..5cf92e1be 100644
--- a/docs/guides/marketplace/index.html
+++ b/docs/guides/marketplace/index.html
@@ -15,7 +15,7 @@
-
+
@@ -122,11 +122,12 @@ Introduction
Explore the Oqtane Marketplace and unleash the full potential
of your Oqtane-based applications today!
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/marketplace/monetization.html b/docs/guides/marketplace/monetization.html
index e6354784d..79b0905ed 100644
--- a/docs/guides/marketplace/monetization.html
+++ b/docs/guides/marketplace/monetization.html
@@ -15,7 +15,7 @@
-
+
@@ -107,7 +107,7 @@
diff --git a/docs/guides/marketplace/submitting-contributions.html b/docs/guides/marketplace/submitting-contributions.html
index 7d981b3ed..d6af28c83 100644
--- a/docs/guides/marketplace/submitting-contributions.html
+++ b/docs/guides/marketplace/submitting-contributions.html
@@ -15,7 +15,7 @@
-
+
@@ -107,7 +107,7 @@
diff --git a/docs/guides/marketplace/troubleshooting.html b/docs/guides/marketplace/troubleshooting.html
index dc8454ab0..10195c382 100644
--- a/docs/guides/marketplace/troubleshooting.html
+++ b/docs/guides/marketplace/troubleshooting.html
@@ -2,9 +2,9 @@
- | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+ Marketplace Troubleshooting | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
-
+
@@ -15,7 +15,7 @@
-
+
@@ -84,12 +84,29 @@ Table of Contents
-
+Marketplace Troubleshooting
+
+Overview
+This section provides resources and guidance for troubleshooting common issues related to the Oqtane Marketplace. Whether you're experiencing issues with installing, updating, or managing marketplace modules, this guide will help you resolve those problems efficiently.
+Common Marketplace Troubleshooting Topics
+Below are the main troubleshooting areas covered in this guide:
+
+Theme or Module Installation Error
+Learn how to troubleshoot errors during theme or module installation from the Oqtane Marketplace, including errors or conflicts.
+
+Compatibility Problems
+Resolve compatibility issues between themes, modules, or translations installed from the Marketplace and your Oqtane site.
+
+Marketplace Navigation Problems
+Fix problems related to navigating the Oqtane Marketplace or accessing specific sections.
+
+
+For detailed troubleshooting steps and solutions, refer to the full Marketplace Troubleshooting Guide .
diff --git a/docs/guides/marketplace/using-oqtane-marketplace.html b/docs/guides/marketplace/using-oqtane-marketplace.html
index c2378778c..ce8295d1c 100644
--- a/docs/guides/marketplace/using-oqtane-marketplace.html
+++ b/docs/guides/marketplace/using-oqtane-marketplace.html
@@ -15,7 +15,7 @@
-
+
@@ -99,7 +99,7 @@ Managing Installed Resources
diff --git a/docs/guides/migrations/assets/placeholder.html b/docs/guides/migrations/assets/placeholder.html
index bdd7513cc..59aa2c409 100644
--- a/docs/guides/migrations/assets/placeholder.html
+++ b/docs/guides/migrations/assets/placeholder.html
@@ -15,7 +15,7 @@
-
+
@@ -89,7 +89,7 @@ Table of Contents
diff --git a/docs/guides/migrations/database-migration.html b/docs/guides/migrations/database-migration.html
new file mode 100644
index 000000000..14b670bd0
--- /dev/null
+++ b/docs/guides/migrations/database-migration.html
@@ -0,0 +1,205 @@
+
+
+
+
+ Database Migrations | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Database Migrations
+
+Database migrations are essential in Oqtane to ensure that the database schema aligns with the application's version. These migrations help to safely apply changes to the database structure, such as adding new tables, modifying columns, or altering indexes, and are executed as part of the upgrade process.
+This guide explains how to use the migration scripts, troubleshoot common issues, and resolve database-related problems during upgrades.
+Overview
+Oqtane uses migration scripts to handle changes to the database schema between versions. When upgrading from one version to another, migration scripts are applied to bring the database up to date with the new code changes.
+The migration process typically involves:
+
+Running pre-defined SQL scripts that modify the database structure.
+Ensuring that database schema changes are consistent with the code's expectations.
+Handling version-specific database changes (i.e., adding, altering, or removing columns or tables).
+
+Running Database Migrations
+To apply migrations, follow these steps:
+
+Backup the Database:
+Before applying any migrations, ensure that you have a recent backup of your database to prevent data loss in case of errors.
+
+Verify the Database Version:
+Ensure that you are upgrading from a compatible database version. Check your current database schema version and compare it with the version you're upgrading to.
+
+Run Migration Scripts:
+Oqtane provides migration scripts that can be executed on your database to bring it up to date. These scripts can typically be run using the Oqtane Admin interface or manually using SQL tools like SQL Server Management Studio (SSMS) for SQL Server or MySQL Workbench for MySQL.
+
+Check for Errors:
+If the migration fails, check the error messages for specific details. Look for issues such as:
+
+Missing columns or tables
+Foreign key constraints
+Compatibility issues between the database version and the schema
+Scripts that were not executed properly
+
+For most issues, detailed error messages will help guide you to the specific cause of the failure.
+
+Confirm Successful Migration:
+After the migration scripts are successfully executed, verify that the database schema matches the expected version. You may need to check specific tables or views to ensure that all changes were applied.
+
+
+Common Migration Issues and Solutions
+1. Migration Fails Due to Missing or Incompatible Columns
+Symptom:
+The migration fails with an error message stating that certain columns or tables are missing.
+Solution:
+
+Verify that the migration script is correctly applied. Sometimes, manual changes to the database schema (e.g., column removals or modifications) can cause incompatibilities.
+Review the SQL script that was supposed to add the missing columns or tables and try to apply it manually.
+If a column or table was removed intentionally, ensure that your migration script accounts for these changes.
+
+2. Error During Database Schema Comparison
+Symptom:
+There is a mismatch between the current database schema and the new version after running migration scripts.
+Solution:
+
+Check if the database schema was altered manually before applying migrations. If manual changes were made, you may need to reverse them to allow the migration script to apply properly.
+Compare the expected schema version with the current one and make necessary adjustments. Refer to the Database Schema Documentation for more details.
+
+3. Migration Script Fails to Run on Production Database
+Symptom:
+Migration scripts run successfully in the development environment but fail in the production environment.
+Solution:
+
+Double-check that the correct database (development vs. production) is being used for the migration.
+Ensure that the production database has the necessary permissions for applying migrations.
+Review any environment-specific configurations that might be preventing the migration from executing properly on the production system.
+
+4. Rollback Migration Script
+Symptom:
+The migration caused unintended changes to the database, and you need to revert to the previous version.
+Solution:
+
+If the migration supports rollback, use the rollback
or revert
command provided by Oqtane.
+If rollback is not supported, you will need to manually revert the database schema using backup files or reverse-engineer the changes made during the migration.
+
+Best Practices for Database Migrations
+
+Test in Development First:
+Always test the migration on a development or staging environment before applying it to production. This ensures that any issues with the migration scripts are caught early.
+
+Backup Your Database:
+Always take a full backup of the database before running any migrations. This protects your data in case something goes wrong.
+
+Review Release Notes:
+Check the release notes for the specific Oqtane version you're upgrading to. There may be migration-specific instructions or known issues that need to be addressed.
+
+Ensure Database Compatibility:
+Make sure the database server you're using is compatible with the version of Oqtane you're upgrading to. Database version upgrades may be required to fully support new schema changes.
+
+
+
+Conclusion
+Database migrations are an essential part of maintaining an up-to-date Oqtane application. While they help automate database updates, it is important to monitor the migration process closely for any errors and follow best practices to ensure a smooth transition.
+For additional information or troubleshooting, refer to the Migration Troubleshooting Guide or consult the Oqtane documentation for more details.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/migrations/development-production-migration.html b/docs/guides/migrations/development-production-migration.html
index a2dfb75ab..0ec754e31 100644
--- a/docs/guides/migrations/development-production-migration.html
+++ b/docs/guides/migrations/development-production-migration.html
@@ -15,7 +15,7 @@
-
+
@@ -140,7 +140,7 @@ Best Practices for Productio
diff --git a/docs/guides/migrations/index.html b/docs/guides/migrations/index.html
index a8c36f7ca..f84f6f2c4 100644
--- a/docs/guides/migrations/index.html
+++ b/docs/guides/migrations/index.html
@@ -2,9 +2,9 @@
- | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+ Migrations in Oqtane | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
-
+
@@ -15,7 +15,7 @@
-
+
@@ -84,12 +84,30 @@ Table of Contents
-
+Migrations in Oqtane
+
+Overview
+This section provides guidance on handling database migrations in Oqtane. Whether you're moving from development to production, performing standard migrations, or troubleshooting migration issues, this guide will help you through each step of the process.
+Migration Topics
+Below are the key migration guides that will help you with various migration tasks in Oqtane:
+
+Development to Production Migration
+This guide explains how to manage the migration of your Oqtane database and application from a development environment to a production environment. It covers the necessary steps, best practices, and potential pitfalls to avoid.
+
+Database Migration
+Learn how to perform and manage database migrations in Oqtane. This includes creating and applying migration scripts, handling database schema updates, and managing version control of database changes.
+
+Migration Troubleshooting
+If you're experiencing issues with database migrations, this guide provides common troubleshooting steps and solutions to resolve migration-related problems, ensuring your database migration process goes smoothly.
+
+
+For further details on specific migration scenarios, follow the guides above based on your needs.
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/migrations/troubleshooting.html b/docs/guides/migrations/troubleshooting.html
index de5fad296..8167cabb3 100644
--- a/docs/guides/migrations/troubleshooting.html
+++ b/docs/guides/migrations/troubleshooting.html
@@ -15,7 +15,7 @@
-
+
@@ -110,7 +110,7 @@ Migration Troubleshooting Guides
diff --git a/docs/guides/modules/adding-modules.html b/docs/guides/modules/adding-modules.html
index c2506ff52..f47f18b39 100644
--- a/docs/guides/modules/adding-modules.html
+++ b/docs/guides/modules/adding-modules.html
@@ -15,7 +15,7 @@
-
+
@@ -105,7 +105,7 @@ Adding One Module Across Multip
diff --git a/docs/guides/modules/assets/placeholder.html b/docs/guides/modules/assets/placeholder.html
index 4610dedb8..da733b3b2 100644
--- a/docs/guides/modules/assets/placeholder.html
+++ b/docs/guides/modules/assets/placeholder.html
@@ -15,7 +15,7 @@
-
+
@@ -89,7 +89,7 @@ Table of Contents
diff --git a/docs/guides/modules/creating-a-module.html b/docs/guides/modules/creating-a-module.html
index ac865eef2..2a5d812cd 100644
--- a/docs/guides/modules/creating-a-module.html
+++ b/docs/guides/modules/creating-a-module.html
@@ -15,7 +15,7 @@
-
+
@@ -120,7 +120,7 @@ Best Practices
diff --git a/docs/guides/modules/customizing-module-appearance.html b/docs/guides/modules/customizing-module-appearance.html
index ef76408ca..3078af775 100644
--- a/docs/guides/modules/customizing-module-appearance.html
+++ b/docs/guides/modules/customizing-module-appearance.html
@@ -15,7 +15,7 @@
-
+
@@ -114,7 +114,7 @@ Best Practices
diff --git a/docs/guides/modules/index.html b/docs/guides/modules/index.html
index 62f8ef69f..581c21669 100644
--- a/docs/guides/modules/index.html
+++ b/docs/guides/modules/index.html
@@ -15,7 +15,7 @@
-
+
@@ -109,14 +109,15 @@ Developing Modules
Creating Modules : Resources and guidelines for creating custom modules for Oqtane.
Developing Modules : Resources and guidelines for developing custom modules for Oqtane.
Module Deployment : Resources and guidelines for deploying custom modules for Oqtane.
-Troubleshooting Module Development : Troubleshooting tips and solutions for common issues encountered with developing modules.
+Troubleshooting Module Development : Troubleshooting tips and solutions for common issues encountered with developing modules.
Feel free to explore each topic to find the information you need to effectively work with modules in your Oqtane applications.
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/modules/module-configuration.html b/docs/guides/modules/module-configuration.html
index 124fe06ee..77f3810bb 100644
--- a/docs/guides/modules/module-configuration.html
+++ b/docs/guides/modules/module-configuration.html
@@ -15,7 +15,7 @@
-
+
@@ -114,7 +114,7 @@ Best Practices
diff --git a/docs/guides/modules/module-deployment.html b/docs/guides/modules/module-deployment.html
index 60595c751..8fff095c0 100644
--- a/docs/guides/modules/module-deployment.html
+++ b/docs/guides/modules/module-deployment.html
@@ -15,7 +15,7 @@
-
+
@@ -117,7 +117,7 @@ Best Practices
diff --git a/docs/guides/modules/module-development.html b/docs/guides/modules/module-development.html
index baf31e722..1ea4b84e0 100644
--- a/docs/guides/modules/module-development.html
+++ b/docs/guides/modules/module-development.html
@@ -15,7 +15,7 @@
-
+
@@ -115,7 +115,7 @@ Best Practices
diff --git a/docs/guides/modules/module-installation.html b/docs/guides/modules/module-installation.html
index 42389425d..5aec44211 100644
--- a/docs/guides/modules/module-installation.html
+++ b/docs/guides/modules/module-installation.html
@@ -15,7 +15,7 @@
-
+
@@ -107,7 +107,7 @@ Installation Process
diff --git a/docs/guides/modules/modules.html b/docs/guides/modules/modules.html
index 2973784be..cb813ba25 100644
--- a/docs/guides/modules/modules.html
+++ b/docs/guides/modules/modules.html
@@ -15,7 +15,7 @@
-
+
@@ -108,7 +108,7 @@ Topics
diff --git a/docs/guides/modules/troubleshooting.html b/docs/guides/modules/troubleshooting.html
index a496da051..fc32468e3 100644
--- a/docs/guides/modules/troubleshooting.html
+++ b/docs/guides/modules/troubleshooting.html
@@ -10,12 +10,12 @@
-
+
-
+
@@ -116,7 +116,7 @@ Module Troubleshooting Guides
diff --git a/docs/guides/modules/working-with-modules.html b/docs/guides/modules/working-with-modules.html
index 04d70927f..20bebdd49 100644
--- a/docs/guides/modules/working-with-modules.html
+++ b/docs/guides/modules/working-with-modules.html
@@ -15,7 +15,7 @@
-
+
@@ -107,7 +107,7 @@ Moving Modules
diff --git a/docs/guides/render/index.html b/docs/guides/render/index.html
index c89d191db..59fe894d8 100644
--- a/docs/guides/render/index.html
+++ b/docs/guides/render/index.html
@@ -15,7 +15,7 @@
-
+
@@ -154,11 +154,12 @@ Flow of a Click - Event
SSR: Click....tbd
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/roadmap/index.html b/docs/guides/roadmap/index.html
index 137baf6fe..99ca5e8d7 100644
--- a/docs/guides/roadmap/index.html
+++ b/docs/guides/roadmap/index.html
@@ -15,7 +15,7 @@
-
+
@@ -338,11 +338,12 @@
diff --git a/docs/guides/themes/assets/placeholder.html b/docs/guides/themes/assets/placeholder.html
index 560b16ef7..46fda7c05 100644
--- a/docs/guides/themes/assets/placeholder.html
+++ b/docs/guides/themes/assets/placeholder.html
@@ -15,7 +15,7 @@
-
+
@@ -89,7 +89,7 @@ Table of Contents
diff --git a/docs/guides/themes/generator/index.html b/docs/guides/themes/generator/index.html
index 799bfbd32..87f48eb5f 100644
--- a/docs/guides/themes/generator/index.html
+++ b/docs/guides/themes/generator/index.html
@@ -15,7 +15,7 @@
-
+
@@ -140,7 +140,7 @@ You're all set
diff --git a/docs/guides/themes/index.html b/docs/guides/themes/index.html
index fd1ffa610..18cfc23bf 100644
--- a/docs/guides/themes/index.html
+++ b/docs/guides/themes/index.html
@@ -15,7 +15,7 @@
-
+
@@ -134,11 +134,12 @@ Tasks to complete these guides
Best Practices for assets - especially JS/CSS
Some guidance on CSS variables / Bootstrap 5.3 conventions
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/themes/oqtane-theme-code-explained.html b/docs/guides/themes/oqtane-theme-code-explained.html
index aae0fe9c0..c80c06f74 100644
--- a/docs/guides/themes/oqtane-theme-code-explained.html
+++ b/docs/guides/themes/oqtane-theme-code-explained.html
@@ -15,7 +15,7 @@
-
+
@@ -367,7 +367,7 @@ Blazor Components
diff --git a/docs/guides/themes/oqtane-theme-distribution.html b/docs/guides/themes/oqtane-theme-distribution.html
index 562b70af3..c5a46a88a 100644
--- a/docs/guides/themes/oqtane-theme-distribution.html
+++ b/docs/guides/themes/oqtane-theme-distribution.html
@@ -15,7 +15,7 @@
-
+
@@ -91,7 +91,7 @@ Oqtane Theme - Distributio
diff --git a/docs/guides/themes/oqtane-theme-solution-explained.html b/docs/guides/themes/oqtane-theme-solution-explained.html
index 916ea1fb4..8b8fe9683 100644
--- a/docs/guides/themes/oqtane-theme-solution-explained.html
+++ b/docs/guides/themes/oqtane-theme-solution-explained.html
@@ -15,7 +15,7 @@
-
+
@@ -112,7 +112,7 @@ Tip
diff --git a/docs/guides/themes/parts-of-an-oqtane-theme.html b/docs/guides/themes/parts-of-an-oqtane-theme.html
index 35823b1ab..a5bdfff57 100644
--- a/docs/guides/themes/parts-of-an-oqtane-theme.html
+++ b/docs/guides/themes/parts-of-an-oqtane-theme.html
@@ -15,7 +15,7 @@
-
+
@@ -96,7 +96,7 @@ Themes Guide - Parts of a Theme
diff --git a/docs/guides/themes/theme-configuration.html b/docs/guides/themes/theme-configuration.html
index 948909345..c44f8c6c6 100644
--- a/docs/guides/themes/theme-configuration.html
+++ b/docs/guides/themes/theme-configuration.html
@@ -15,7 +15,7 @@
-
+
@@ -127,7 +127,7 @@ Page Management
diff --git a/docs/guides/themes/theme-development.html b/docs/guides/themes/theme-development.html
index cb324ffd4..ada2c2d46 100644
--- a/docs/guides/themes/theme-development.html
+++ b/docs/guides/themes/theme-development.html
@@ -15,7 +15,7 @@
-
+
@@ -118,7 +118,7 @@ Best Practices
diff --git a/docs/guides/themes/theme-installation.html b/docs/guides/themes/theme-installation.html
index fd80400f7..fbe98929d 100644
--- a/docs/guides/themes/theme-installation.html
+++ b/docs/guides/themes/theme-installation.html
@@ -15,7 +15,7 @@
-
+
@@ -109,7 +109,7 @@ Additional Considerations
diff --git a/docs/guides/themes/troubleshooting.html b/docs/guides/themes/troubleshooting.html
index a0fee811d..80f30be79 100644
--- a/docs/guides/themes/troubleshooting.html
+++ b/docs/guides/themes/troubleshooting.html
@@ -15,7 +15,7 @@
-
+
@@ -116,7 +116,7 @@ Theme Troubleshooting Guides
diff --git a/docs/guides/troubleshooting/assets/placeholder.html b/docs/guides/troubleshooting/assets/placeholder.html
index f377e5a28..fa834e690 100644
--- a/docs/guides/troubleshooting/assets/placeholder.html
+++ b/docs/guides/troubleshooting/assets/placeholder.html
@@ -15,7 +15,7 @@
-
+
@@ -89,7 +89,7 @@ Table of Contents
diff --git a/docs/guides/troubleshooting/index.html b/docs/guides/troubleshooting/index.html
index 158ba31e1..0b5ccfab7 100644
--- a/docs/guides/troubleshooting/index.html
+++ b/docs/guides/troubleshooting/index.html
@@ -15,7 +15,7 @@
-
+
@@ -92,8 +92,11 @@ What is the Oqtane Troubleshoo
The Oqtane Troubleshooting Guide aims to assist users in resolving common problems related to login issues, user registration, system upgrades, and more. It serves as a comprehensive resource for both administrators and users facing challenges within the Oqtane Framework.
Next Steps
Read about the following troubleshooting sections to resolve specific issues:
-User Management Troubleshooting
+System Management Troubleshooting
+Troubleshooting File Manager
+Solutions for addressing issues with uploading, file access, and permissions in the File Manager.
+
Troubleshooting Login Issues
Find solutions for common login problems, including expired certificates and session management.
@@ -103,7 +106,7 @@ User Management Troubleshooting
Installation, Upgrades, and Migration Troubleshooting
-Installation Troubleshooting
+
Installation Troubleshooting
Instructions for resolving installation problems and verifying system requirements.
Migration Troubleshooting
@@ -151,11 +154,12 @@
Tasks to Complete
Common database-related problems and recovery steps.
Enabling and configuring logging for troubleshooting.
+← Back to Documentation Guides Home Page
diff --git a/docs/guides/troubleshooting/troubleshooting-database.html b/docs/guides/troubleshooting/troubleshooting-database.html
new file mode 100644
index 000000000..4aaa9066d
--- /dev/null
+++ b/docs/guides/troubleshooting/troubleshooting-database.html
@@ -0,0 +1,203 @@
+
+
+
+
+ Troubleshooting Database Management | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Troubleshooting Database Management
+
+Overview
+This guide provides comprehensive troubleshooting information for addressing common issues with the database in Oqtane. Whether you're dealing with setup problems, migration issues, performance concerns, or security challenges, this document will guide you through diagnosing and resolving issues.
+Table of Contents
+
+Database Setup Issues
+Database Migrations
+Performance Problems
+Database Integrity and Security
+General Tips
+
+
+Database Setup Issues
+If you're having trouble setting up your database or connecting it to Oqtane, check the following:
+1.1. Database Connection Problems
+
+Check Connection Strings : Verify the connection strings in your configuration files are correct and point to the right database server.
+Firewall Settings : Ensure the database port is open and accessible from your Oqtane server.
+Database Server Availability : Ensure the database server is running and accessible. If using a remote database, check network connectivity.
+
+1.2. Missing or Incorrect Database Schema
+
+Schema Migration : Ensure that your database schema is up-to-date by running the necessary migrations (check the Migrations Guide ).
+Database Permissions : Ensure the database user has sufficient permissions to create tables, views, and procedures.
+
+
+Database Migrations
+Database migrations are a critical part of setting up and maintaining Oqtane's database. Here’s how to troubleshoot migration issues:
+2.1. Failed Migrations
+
+Check Logs : Look for any error messages in your Oqtane logs related to database migrations.
+Verify Migration Version : Ensure the database schema version matches the version specified in your Oqtane installation.
+Re-run Migrations : If a migration fails, try rerunning it manually or resetting the migration state.
+
+2.2. Version Conflicts
+
+Database Compatibility : Ensure the Oqtane version you're using is compatible with your database schema version. Upgrading Oqtane may require additional migration steps.
+Revert to Backup : If a migration causes severe issues, consider restoring from a database backup and reapplying migrations step by step.
+
+For more details on performing migrations, check the Database Migration Guide .
+
+
+Performance issues can often be traced back to database queries or configuration settings. Here’s how to troubleshoot them:
+3.1. Slow Queries
+
+Enable Query Logging : Enable query logging in your database to identify slow or resource-intensive queries.
+Optimize Queries : Review the slow queries and optimize them using indexing or refactoring.
+Database Caching : Implement caching strategies to reduce load on the database, particularly for frequently accessed data.
+
+3.2. Database Load
+
+Database Scaling : Consider scaling your database horizontally (replication) or vertically (increasing resources).
+Connection Pooling : Implement connection pooling to manage multiple database connections efficiently.
+
+
+Database Integrity and Security
+Ensuring the integrity and security of your database is crucial. Here’s how to address common database issues:
+4.1. Data Corruption
+
+Check Logs for Corruption : Look for errors indicating data corruption in the database logs.
+Restore from Backup : If data corruption occurs, restore the affected tables or the entire database from a backup.
+Integrity Checks : Use your database's built-in integrity checking tools (e.g., DBCC CHECKDB
for SQL Server) to identify corruption.
+
+4.2. Database Security
+
+Database Access Control : Ensure only authorized users can access the database. Review and tighten user permissions.
+Encrypt Data : Implement encryption for sensitive data at rest and in transit.
+Regular Backups : Schedule regular backups and store them in a secure location.
+
+
+General Tips
+Here are a few general tips for maintaining and troubleshooting your database:
+
+Backup Regularly : Always keep backups of your database. Schedule daily backups for production environments.
+Monitor Performance : Use database monitoring tools to keep an eye on performance metrics like query time, CPU load, and memory usage.
+Keep Software Updated : Ensure both your database and Oqtane are kept up-to-date to avoid compatibility issues and benefit from security patches.
+
+
+Additional Resources
+
+
+By following the steps and tips provided in this document, you should be able to diagnose and resolve most database-related issues in Oqtane. If you continue to encounter problems, consider reaching out to the Oqtane community or reviewing the related guides for more advanced troubleshooting.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/troubleshooting/troubleshooting-developing-modules.html b/docs/guides/troubleshooting/troubleshooting-developing-modules.html
index 770db8730..5d8fa6c18 100644
--- a/docs/guides/troubleshooting/troubleshooting-developing-modules.html
+++ b/docs/guides/troubleshooting/troubleshooting-developing-modules.html
@@ -15,7 +15,7 @@
-
+
@@ -180,7 +180,7 @@ Conclusion
diff --git a/docs/guides/troubleshooting/troubleshooting-developing-themes.html b/docs/guides/troubleshooting/troubleshooting-developing-themes.html
index 14933cffa..8859ddf1b 100644
--- a/docs/guides/troubleshooting/troubleshooting-developing-themes.html
+++ b/docs/guides/troubleshooting/troubleshooting-developing-themes.html
@@ -15,7 +15,7 @@
-
+
@@ -171,7 +171,7 @@ Conclusion
diff --git a/docs/guides/troubleshooting/troubleshooting-file-manager.html b/docs/guides/troubleshooting/troubleshooting-file-manager.html
new file mode 100644
index 000000000..faf99ae93
--- /dev/null
+++ b/docs/guides/troubleshooting/troubleshooting-file-manager.html
@@ -0,0 +1,192 @@
+
+
+
+
+ Troubleshooting File Manager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Troubleshooting File Manager
+
+The File Manager in Oqtane provides a way to manage files and assets within the application. However, like any system, it may encounter issues related to file uploads, permissions, and other operational aspects. This guide will help you identify and resolve common problems that may arise while using the File Manager.
+Common Issues and Solutions
+1. File Upload Failures
+Symptom:
+Files are not uploading successfully, and you receive an error message such as "File upload failed."
+Solution:
+
+Check the file size limits. Oqtane may have size restrictions on file uploads, which can be configured in the settings or web.config. Ensure that the file being uploaded does not exceed these limits.
+Review the permissions of the directory where files are being uploaded. The File Manager needs appropriate read/write permissions to function correctly.
+If the error persists, check the application logs for more specific error messages related to file handling or permissions.
+
+2. File Type Restrictions
+Symptom:
+Certain file types are not being uploaded or are being rejected by the system.
+Solution:
+
+Verify that the file type is allowed in the Oqtane File Manager configuration. You may need to modify the allowed file types list if certain types are restricted.
+If the file type should be allowed, check the server’s MIME type configuration to ensure that the file type is registered correctly for upload.
+
+3. Missing Files After Upload
+Symptom:
+Files appear to upload successfully, but they are not visible in the File Manager afterward.
+Solution:
+
+Check the destination folder in the File Manager to confirm that the file was uploaded to the correct directory.
+Ensure that the correct file path is set in the system configuration, and check for any issues with the server’s file system.
+Verify that the File Manager is correctly displaying files from the uploaded directory. If necessary, refresh the view to load the updated list of files.
+
+4. Permissions Issues with Files and Folders
+Symptom:
+Users are unable to access or modify files within the File Manager due to permission issues.
+Solution:
+
+Check the file and folder permissions to ensure that the appropriate users or roles have the necessary access to read, write, or delete files.
+If running on a Linux/Unix server, make sure that the file permissions are correctly set (chmod
command) and that the file ownership is correct (chown
command).
+On Windows, check the file/folder permissions in the File Explorer and ensure the IIS user or web app pool identity has the correct rights.
+
+5. File Manager Interface Not Loading or Crashing
+Symptom:
+The File Manager interface fails to load or crashes during usage.
+Solution:
+
+Check for any JavaScript errors in the browser's developer console that could be preventing the File Manager from functioning properly.
+Verify that all necessary JavaScript and CSS files for the File Manager are loaded properly. If files are missing or not being served, they may need to be re-deployed.
+Clear your browser’s cache and cookies to resolve any residual issues related to outdated files.
+Ensure that your Oqtane application is running the latest version, as issues with the File Manager could have been addressed in recent updates.
+
+6. Error Messages on File Deletion
+Symptom:
+An error message appears when attempting to delete a file from the File Manager.
+Solution:
+
+Check if the file is currently in use or locked by another process. Ensure that no other application or user has the file open when attempting to delete it.
+Review the file permissions to ensure that the user attempting the deletion has the necessary rights to remove the file.
+If the file deletion fails, check the Oqtane logs for more details about the error or any file system-related issues.
+
+
+General Troubleshooting Steps
+If you're encountering an issue not specifically addressed here, follow these general troubleshooting steps:
+
+Clear Browser Cache:
+Clear your browser’s cache to rule out issues caused by outdated resources or settings.
+
+Check Logs:
+Review the Oqtane application logs or the web server’s logs for any error messages or warnings that could indicate issues with the File Manager.
+
+Check File Paths:
+Ensure that the file paths configured in Oqtane (either through settings or web.config) are correct and accessible by the server.
+
+Verify Server Permissions:
+Double-check server-level file permissions for the directory used by the File Manager. Ensure that the web application has read/write access to this directory.
+
+
+
+Conclusion
+The File Manager in Oqtane is a vital part of the system for managing assets and files. If you experience issues, it's usually related to permissions, file size/type restrictions, or misconfigurations. By following the troubleshooting steps provided, you should be able to resolve most issues related to the File Manager.
+For further assistance or specific use cases reach out to the Oqtane community.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/troubleshooting/troubleshooting-installations.html b/docs/guides/troubleshooting/troubleshooting-installations.html
index c47a79e10..afa71ad6a 100644
--- a/docs/guides/troubleshooting/troubleshooting-installations.html
+++ b/docs/guides/troubleshooting/troubleshooting-installations.html
@@ -15,7 +15,7 @@
-
+
@@ -127,7 +127,7 @@ Additional Resources
diff --git a/docs/guides/troubleshooting/troubleshooting-login-issues.html b/docs/guides/troubleshooting/troubleshooting-login-issues.html
index 6a817892b..8c02bfaf1 100644
--- a/docs/guides/troubleshooting/troubleshooting-login-issues.html
+++ b/docs/guides/troubleshooting/troubleshooting-login-issues.html
@@ -15,7 +15,7 @@
-
+
@@ -128,7 +128,7 @@ Resolution Steps:
diff --git a/docs/guides/troubleshooting/troubleshooting-marketplace.html b/docs/guides/troubleshooting/troubleshooting-marketplace.html
index c23cbb49c..9d009e5fd 100644
--- a/docs/guides/troubleshooting/troubleshooting-marketplace.html
+++ b/docs/guides/troubleshooting/troubleshooting-marketplace.html
@@ -15,7 +15,7 @@
-
+
@@ -122,7 +122,7 @@ Reporting Issues
diff --git a/docs/guides/troubleshooting/troubleshooting-migrations.html b/docs/guides/troubleshooting/troubleshooting-migrations.html
index a91275468..0bf64d10b 100644
--- a/docs/guides/troubleshooting/troubleshooting-migrations.html
+++ b/docs/guides/troubleshooting/troubleshooting-migrations.html
@@ -15,7 +15,7 @@
-
+
@@ -213,7 +213,7 @@ Conclusion
diff --git a/docs/guides/troubleshooting/troubleshooting-modules.html b/docs/guides/troubleshooting/troubleshooting-modules.html
index bfaaafceb..ce548cc78 100644
--- a/docs/guides/troubleshooting/troubleshooting-modules.html
+++ b/docs/guides/troubleshooting/troubleshooting-modules.html
@@ -15,7 +15,7 @@
-
+
@@ -107,7 +107,7 @@ Troubleshooting Steps
diff --git a/docs/guides/troubleshooting/troubleshooting-themes.html b/docs/guides/troubleshooting/troubleshooting-themes.html
index c691b869f..a282eabf4 100644
--- a/docs/guides/troubleshooting/troubleshooting-themes.html
+++ b/docs/guides/troubleshooting/troubleshooting-themes.html
@@ -15,7 +15,7 @@
-
+
@@ -112,7 +112,7 @@ Troubleshooting Steps
diff --git a/docs/guides/troubleshooting/troubleshooting-upgrading-installations.html b/docs/guides/troubleshooting/troubleshooting-upgrading-installations.html
new file mode 100644
index 000000000..10be0d3c2
--- /dev/null
+++ b/docs/guides/troubleshooting/troubleshooting-upgrading-installations.html
@@ -0,0 +1,205 @@
+
+
+
+
+ | Oqtane Docs - APIs and more for the Modular Blazor Application Framework
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Troubleshooting Upgrading Installations
+Upgrading Oqtane to a newer version can sometimes lead to unexpected issues due to changes in dependencies, configurations, or other system requirements. This guide will help you resolve common problems encountered during the upgrade process.
+Common Issues and Solutions
+1. Upgrade Failures After Running Migration Scripts
+Symptom:
+The upgrade fails after running migration scripts, often with errors related to database schema or missing columns.
+Solution:
+
+Ensure that the database is fully backed up before attempting any upgrade.
+Double-check that the migration script was run on the correct database (development vs. production).
+If the migration fails, check for any specific error messages that can indicate missing or incompatible columns, and refer to the Database Migrations Documentation for resolving these issues.
+Manually apply any database updates if necessary using SQL scripts provided by Oqtane for your version.
+
+2. Missing Files or References After Upgrade
+Symptom:
+After upgrading Oqtane, some assets (such as images, CSS, or JavaScript files) are missing, or broken links are showing up.
+Solution:
+
+Clear the browser cache and refresh the page to ensure you're not seeing an outdated version.
+Verify that all the files in the /assets
or /wwwroot
directory have been copied correctly to the upgraded environment.
+Check the web.config or other settings files to ensure proper reference paths are maintained after the upgrade.
+Rebuild the project and deploy it again to ensure all assets are updated.
+
+3. Compatibility Issues with Installed Modules
+Symptom:
+Certain modules are not functioning as expected after the upgrade, or they may fail to load completely.
+Solution:
+
+Check the compatibility of each module with the Oqtane version you are upgrading to. Some modules may require updates or patches to work with newer Oqtane versions.
+If an issue persists, try uninstalling and reinstalling the module.
+If custom modules are used, ensure they are updated to the latest version or rebuilt to work with the current framework version.
+
+4. SSL and Certificate Issues After Upgrade
+Symptom:
+After upgrading Oqtane, you might experience SSL-related issues, such as errors related to expired or misconfigured certificates.
+Solution:
+
+Check the SSL certificate and verify that it is correctly configured in your environment, including the appropriate bindings in IIS or reverse proxies.
+Ensure that the correct certificates are loaded and that they are not expired. If expired, replace them and update the server configuration.
+If the site is running behind a proxy, ensure that it correctly passes the SSL header to the Oqtane application.
+
+5. Performance Degradation Post-Upgrade
+Symptom:
+After upgrading, the site performance is noticeably slower than before.
+Solution:
+
+Review the server's resource utilization, including CPU, RAM, and database performance, to ensure that the system is properly scaled for the new version.
+Check for any new logging or diagnostic features that may have been added in the latest Oqtane version, which could cause performance overhead.
+Review the upgrade notes for any new settings or configurations that could affect performance.
+Consider running performance diagnostics or using a profiler tool to identify bottlenecks.
+
+6. Permissions or Access Control Issues
+Symptom:
+After upgrading, certain user roles or permissions no longer function correctly, or users are unable to access certain parts of the site.
+Solution:
+
+Review the user roles and permissions settings in the Oqtane admin dashboard and make sure they are correctly configured for the new version.
+Check if any new role types or permission models were introduced in the latest upgrade and adapt your setup accordingly.
+Clear the cache and cookies to eliminate any residual permission issues from the browser session.
+
+7. Dependency Errors During Upgrade
+Symptom:
+You encounter errors regarding missing dependencies or version conflicts after the upgrade.
+Solution:
+
+Review the error logs to identify the specific dependencies causing issues.
+Ensure that your project's packages.config
or csproj
files are updated to reflect the new version of Oqtane and its dependencies.
+Run dotnet restore
to restore missing packages and ensure compatibility.
+If necessary, update any third-party dependencies to be compatible with the new Oqtane version.
+
+
+General Troubleshooting Steps
+If the specific issue you are facing is not listed here, try the following general troubleshooting steps:
+
+Clear Caches:
+Clear the browser cache and, if applicable, the server-side cache. You may need to restart the Oqtane application to ensure all updated settings are applied.
+
+Check Logs:
+Check the Oqtane application logs (/logs
directory or via your web server's logging mechanism) for any error messages or warnings that could indicate problems during the upgrade process.
+
+Verify Configuration Files:
+Review all configuration files (such as appsettings.json
, web.config
, etc.) to ensure that all settings are correct and compatible with the upgraded Oqtane version.
+
+Rollback to Previous Version:
+If you cannot resolve the issue after the upgrade, you may consider rolling back to the previous Oqtane version. Be sure to have a full backup of the database and files before performing any rollback.
+
+
+
+Conclusion
+Upgrading Oqtane can occasionally introduce challenges, but with the right troubleshooting steps, these issues are often easy to resolve. Be sure to test the upgrade in a staging environment before applying it to production, and always keep backups of both your database and files.
+For additional help ask for assistance in the Oqtane community.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/guides/troubleshooting/troubleshooting-user-registration-email-verification.html b/docs/guides/troubleshooting/troubleshooting-user-registration-email-verification.html
index 22b0f0be2..9ca6a9716 100644
--- a/docs/guides/troubleshooting/troubleshooting-user-registration-email-verification.html
+++ b/docs/guides/troubleshooting/troubleshooting-user-registration-email-verification.html
@@ -15,7 +15,7 @@
-
+
@@ -120,7 +120,7 @@ Resolution Steps:
diff --git a/docs/index.html b/docs/index.html
index 9b06b67f6..aa849e33d 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -15,7 +15,7 @@
-
+
@@ -105,7 +105,7 @@
diff --git a/docs/index.json b/docs/index.json
index 7c6cf152b..f67e1d1c9 100644
--- a/docs/index.json
+++ b/docs/index.json
@@ -1,2099 +1,4 @@
{
- "api/Oqtane.App.html": {
- "href": "api/Oqtane.App.html",
- "title": "Class App | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class App Namespace Oqtane Assembly Oqtane.Client.dll public class App : ComponentBase Inheritance object ComponentBase App Properties AntiForgeryToken [Parameter] public string AntiForgeryToken { get; set; } Property Value string AuthorizationToken [Parameter] public string AuthorizationToken { get; set; } Property Value string RemoteIPAddress [Parameter] public string RemoteIPAddress { get; set; } Property Value string RenderMode [Parameter] public string RenderMode { get; set; } Property Value string Runtime [Parameter] public string Runtime { get; set; } Property Value string VisitorId [Parameter] public int VisitorId { get; set; } Property Value int Methods BuildRenderTree(RenderTreeBuilder) Renders the component to the supplied RenderTreeBuilder. protected override void BuildRenderTree(RenderTreeBuilder __builder) Parameters __builder RenderTreeBuilder OnAfterRender(bool) Method invoked after each time the component has rendered interactively and the UI has finished updating (for example, after elements have been added to the browser DOM). Any ElementReference fields will be populated by the time this runs. This method is not invoked during prerendering or server-side rendering, because those processes are not attached to any live browser DOM and are already complete before the DOM is updated. protected override void OnAfterRender(bool firstRender) Parameters firstRender bool Set to true if this is the first time OnAfterRender(bool) has been invoked on this component instance; otherwise false. Remarks The OnAfterRender(bool) and OnAfterRenderAsync(bool) lifecycle methods are useful for performing interop, or interacting with values received from @ref. Use the firstRender parameter to ensure that initialization work is only performed once. OnParametersSetAsync() Method invoked when the component has received parameters from its parent in the render tree, and the incoming values have been assigned to properties. protected override Task OnParametersSetAsync() Returns Task A Task representing any asynchronous operation."
- },
- "api/Oqtane.Components.App.html": {
- "href": "api/Oqtane.Components.App.html",
- "title": "Class App | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class App Namespace Oqtane.Components Assembly Oqtane.Server.dll public class App : ComponentBase Inheritance object ComponentBase App Methods BuildRenderTree(RenderTreeBuilder) Renders the component to the supplied RenderTreeBuilder. protected override void BuildRenderTree(RenderTreeBuilder __builder) Parameters __builder RenderTreeBuilder OnInitializedAsync() Method invoked when the component is ready to start, having received its initial parameters from its parent in the render tree. Override this method if you will perform an asynchronous operation and want the component to refresh when that operation is completed. protected override Task OnInitializedAsync() Returns Task A Task representing any asynchronous operation."
- },
- "api/Oqtane.Components._Imports.html": {
- "href": "api/Oqtane.Components._Imports.html",
- "title": "Class _Imports | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class _Imports Namespace Oqtane.Components Assembly Oqtane.Server.dll public class _Imports : ComponentBase Inheritance object ComponentBase _Imports Methods BuildRenderTree(RenderTreeBuilder) Renders the component to the supplied RenderTreeBuilder. protected override void BuildRenderTree(RenderTreeBuilder __builder) Parameters __builder RenderTreeBuilder"
- },
- "api/Oqtane.Components.html": {
- "href": "api/Oqtane.Components.html",
- "title": "Namespace Oqtane.Components | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Namespace Oqtane.Components Classes App _Imports"
- },
- "api/Oqtane.Controllers.AliasController.html": {
- "href": "api/Oqtane.Controllers.AliasController.html",
- "title": "Class AliasController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class AliasController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class AliasController : Controller Inheritance object ControllerBase Controller AliasController Constructors AliasController(IAliasRepository, ITenantRepository, ISyncManager, ILogManager, ITenantManager) public AliasController(IAliasRepository aliases, ITenantRepository tenants, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager) Parameters aliases IAliasRepository tenants ITenantRepository syncManager ISyncManager logger ILogManager tenantManager ITenantManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Host Users\")] public void Delete(int id) Parameters id int Get() [HttpGet] [Authorize(Roles = \"Administrators\")] public IEnumerable Get() Returns IEnumerable Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Host Users\")] public Alias Get(int id) Parameters id int Returns Alias Post(Alias) [HttpPost] [Authorize(Roles = \"Host Users\")] public Alias Post(Alias alias) Parameters alias Alias Returns Alias Put(int, Alias) [HttpPut(\"{id}\")] [Authorize(Roles = \"Host Users\")] public Alias Put(int id, Alias alias) Parameters id int alias Alias Returns Alias"
- },
- "api/Oqtane.Controllers.DatabaseController.html": {
- "href": "api/Oqtane.Controllers.DatabaseController.html",
- "title": "Class DatabaseController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class DatabaseController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class DatabaseController : Controller Inheritance object ControllerBase Controller DatabaseController Constructors DatabaseController(IOptions>, IConfigManager) public DatabaseController(IOptions> databaseOptions, IConfigManager config) Parameters databaseOptions IOptions> config IConfigManager Methods Get() [HttpGet] public IEnumerable Get() Returns IEnumerable"
- },
- "api/Oqtane.Controllers.FileController.html": {
- "href": "api/Oqtane.Controllers.FileController.html",
- "title": "Class FileController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class FileController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class FileController : Controller Inheritance object ControllerBase Controller FileController Constructors FileController(IWebHostEnvironment, IFileRepository, IFolderRepository, IUserPermissions, ISettingRepository, ISyncManager, ILogManager, ITenantManager, IImageService) public FileController(IWebHostEnvironment environment, IFileRepository files, IFolderRepository folders, IUserPermissions userPermissions, ISettingRepository settingRepository, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager, IImageService imageService) Parameters environment IWebHostEnvironment files IFileRepository folders IFolderRepository userPermissions IUserPermissions settingRepository ISettingRepository syncManager ISyncManager logger ILogManager tenantManager ITenantManager imageService IImageService Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public void Delete(int id) Parameters id int DownloadAttachment(int) Get file with header Content-Disposition: attachment; filename=\"filename.jpg\" https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition [HttpGet(\"download/{id}/attach\")] public IActionResult DownloadAttachment(int id) Parameters id int File Id from Oqtane filesystem Returns IActionResult DownloadInline(int) Get file with header Content-Disposition: inline https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition [HttpGet(\"download/{id}\")] public IActionResult DownloadInline(int id) Parameters id int File Id from Oqtane filesystem Returns IActionResult file content Get(int) [HttpGet(\"{id}\")] public File Get(int id) Parameters id int Returns File Get(int, string) [HttpGet(\"{siteId}/{path}\")] public IEnumerable Get(int siteId, string path) Parameters siteId int path string Returns IEnumerable Get(string) [HttpGet] public IEnumerable Get(string folder) Parameters folder string Returns IEnumerable Get(string, int) [HttpGet(\"name/{name}/{folderId}\")] public File Get(string name, int folderId) Parameters name string folderId int Returns File GetImage(int, int, int, string, string, string, string, string) [HttpGet(\"image/{id}/{width}/{height}/{mode}/{position}/{background}/{rotate}/{recreate}\")] public IActionResult GetImage(int id, int width, int height, string mode, string position, string background, string rotate, string recreate) Parameters id int width int height int mode string position string background string rotate string recreate string Returns IActionResult Post(File) [HttpPost] [Authorize(Roles = \"Registered Users\")] public File Post(File file) Parameters file File Returns File Put(int, File) [HttpPut(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public File Put(int id, File file) Parameters id int file File Returns File Unzip(int) [HttpPut(\"unzip/{id}\")] [Authorize(Roles = \"Administrators\")] public void Unzip(int id) Parameters id int UploadFile(string, IFormFile) [EnableCors(\"MauiCorsPolicy\")] [HttpPost(\"upload\")] public Task UploadFile(string folder, IFormFile formfile) Parameters folder string formfile IFormFile Returns Task UploadFile(string, string, string) [HttpGet(\"upload\")] public Task UploadFile(string url, string folderid, string name) Parameters url string folderid string name string Returns Task"
- },
- "api/Oqtane.Controllers.FolderController.html": {
- "href": "api/Oqtane.Controllers.FolderController.html",
- "title": "Class FolderController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class FolderController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class FolderController : Controller Inheritance object ControllerBase Controller FolderController Constructors FolderController(IFolderRepository, IUserPermissions, ISyncManager, ILogManager, ITenantManager) public FolderController(IFolderRepository folders, IUserPermissions userPermissions, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager) Parameters folders IFolderRepository userPermissions IUserPermissions syncManager ISyncManager logger ILogManager tenantManager ITenantManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] public Folder Get(int id) Parameters id int Returns Folder Get(string) [HttpGet] public IEnumerable Get(string siteid) Parameters siteid string Returns IEnumerable GetByPath(int, string) [HttpGet(\"path/{siteId}\")] public Folder GetByPath(int siteId, string path) Parameters siteId int path string Returns Folder Post(Folder) [HttpPost] [Authorize(Roles = \"Registered Users\")] public Folder Post(Folder folder) Parameters folder Folder Returns Folder Put(int, Folder) [HttpPut(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Folder Put(int id, Folder folder) Parameters id int folder Folder Returns Folder Put(int, int, int?) [HttpPut] [Authorize(Roles = \"Registered Users\")] public void Put(int siteid, int folderid, int? parentid) Parameters siteid int folderid int parentid int?"
- },
- "api/Oqtane.Controllers.InstallationController.ClientAssembly.html": {
- "href": "api/Oqtane.Controllers.InstallationController.ClientAssembly.html",
- "title": "Struct InstallationController.ClientAssembly | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Struct InstallationController.ClientAssembly Namespace Oqtane.Controllers Assembly Oqtane.Server.dll public struct InstallationController.ClientAssembly Constructors ClientAssembly(string, bool) public ClientAssembly(string filepath, bool hashfilename) Parameters filepath string hashfilename bool Properties FilePath public readonly string FilePath { get; } Property Value string HashedName public readonly string HashedName { get; } Property Value string"
- },
- "api/Oqtane.Controllers.InstallationController.html": {
- "href": "api/Oqtane.Controllers.InstallationController.html",
- "title": "Class InstallationController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class InstallationController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class InstallationController : Controller Inheritance object ControllerBase Controller InstallationController Constructors InstallationController(IConfigManager, IInstallationManager, IDatabaseManager, ILocalizationManager, IMemoryCache, IHttpContextAccessor, IAliasRepository, ISiteRepository, ILogger, ITenantManager, IServerStateManager) public InstallationController(IConfigManager configManager, IInstallationManager installationManager, IDatabaseManager databaseManager, ILocalizationManager localizationManager, IMemoryCache cache, IHttpContextAccessor accessor, IAliasRepository aliases, ISiteRepository sites, ILogger filelogger, ITenantManager tenantManager, IServerStateManager serverState) Parameters configManager IConfigManager installationManager IInstallationManager databaseManager IDatabaseManager localizationManager ILocalizationManager cache IMemoryCache accessor IHttpContextAccessor aliases IAliasRepository sites ISiteRepository filelogger ILogger tenantManager ITenantManager serverState IServerStateManager Methods IsInstalled(string) [HttpGet(\"installed\")] public Installation IsInstalled(string path) Parameters path string Returns Installation List() [HttpGet(\"list\")] public List List() Returns List Load(string) [HttpGet(\"load\")] public IActionResult Load(string list = \"*\") Parameters list string Returns IActionResult Post(InstallConfig) [HttpPost] public Task Post(InstallConfig config) Parameters config InstallConfig Returns Task Register(string) [HttpPost(\"register\")] [Authorize(Roles = \"Host Users\")] public Task Register(string email) Parameters email string Returns Task Restart() [HttpPost(\"restart\")] [Authorize(Roles = \"Host Users\")] public void Restart() Upgrade() [HttpGet(\"upgrade\")] [Authorize(Roles = \"Host Users\")] public Installation Upgrade() Returns Installation"
- },
- "api/Oqtane.Controllers.JobController.html": {
- "href": "api/Oqtane.Controllers.JobController.html",
- "title": "Class JobController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class JobController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class JobController : Controller Inheritance object ControllerBase Controller JobController Constructors JobController(IJobRepository, ILogManager, IServiceProvider) public JobController(IJobRepository jobs, ILogManager logger, IServiceProvider serviceProvider) Parameters jobs IJobRepository logger ILogManager serviceProvider IServiceProvider Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Host Users\")] public void Delete(int id) Parameters id int Get() [HttpGet] [Authorize(Roles = \"Host Users\")] public IEnumerable Get() Returns IEnumerable Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Host Users\")] public Job Get(int id) Parameters id int Returns Job Post(Job) [HttpPost] [Authorize(Roles = \"Host Users\")] public Job Post(Job job) Parameters job Job Returns Job Put(int, Job) [HttpPut(\"{id}\")] [Authorize(Roles = \"Host Users\")] public Job Put(int id, Job job) Parameters id int job Job Returns Job Start(int) [HttpGet(\"start/{id}\")] [Authorize(Roles = \"Host Users\")] public void Start(int id) Parameters id int Stop(int) [HttpGet(\"stop/{id}\")] [Authorize(Roles = \"Host Users\")] public void Stop(int id) Parameters id int"
- },
- "api/Oqtane.Controllers.JobLogController.html": {
- "href": "api/Oqtane.Controllers.JobLogController.html",
- "title": "Class JobLogController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class JobLogController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class JobLogController : Controller Inheritance object ControllerBase Controller JobLogController Constructors JobLogController(IJobLogRepository) public JobLogController(IJobLogRepository jobLogs) Parameters jobLogs IJobLogRepository Methods Get() [HttpGet] [Authorize(Roles = \"Host Users\")] public IEnumerable Get() Returns IEnumerable Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Host Users\")] public JobLog Get(int id) Parameters id int Returns JobLog"
- },
- "api/Oqtane.Controllers.LanguageController.html": {
- "href": "api/Oqtane.Controllers.LanguageController.html",
- "title": "Class LanguageController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class LanguageController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class LanguageController : Controller Inheritance object ControllerBase Controller LanguageController Constructors LanguageController(ILanguageRepository, ISyncManager, ILogManager, ITenantManager) public LanguageController(ILanguageRepository languages, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager) Parameters languages ILanguageRepository syncManager ISyncManager logger ILogManager tenantManager ITenantManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Administrators\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] public Language Get(int id) Parameters id int Returns Language Get(string, string) [HttpGet] public IEnumerable Get(string siteid, string packagename) Parameters siteid string packagename string Returns IEnumerable Post(Language) [HttpPost] [Authorize(Roles = \"Administrators\")] public Language Post(Language language) Parameters language Language Returns Language Put(Language) [HttpPut] [Authorize(Roles = \"Administrators\")] public void Put(Language language) Parameters language Language"
- },
- "api/Oqtane.Controllers.LocalizationController.html": {
- "href": "api/Oqtane.Controllers.LocalizationController.html",
- "title": "Class LocalizationController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class LocalizationController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class LocalizationController : Controller Inheritance object ControllerBase Controller LocalizationController Constructors LocalizationController(ILocalizationManager) public LocalizationController(ILocalizationManager localizationManager) Parameters localizationManager ILocalizationManager Methods Get(bool) [HttpGet] public IEnumerable Get(bool installed) Parameters installed bool Returns IEnumerable"
- },
- "api/Oqtane.Controllers.LogController.html": {
- "href": "api/Oqtane.Controllers.LogController.html",
- "title": "Class LogController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class LogController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class LogController : Controller Inheritance object ControllerBase Controller LogController Constructors LogController(ILogManager, ILogRepository, ITenantManager) public LogController(ILogManager logger, ILogRepository logs, ITenantManager tenantManager) Parameters logger ILogManager logs ILogRepository tenantManager ITenantManager Methods Delete(string) [HttpDelete] [Authorize(Roles = \"Administrators\")] public void Delete(string siteId) Parameters siteId string Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Administrators\")] public Log Get(int id) Parameters id int Returns Log Get(string, string, string, string) [HttpGet] [Authorize(Roles = \"Administrators\")] public IEnumerable Get(string siteid, string level, string function, string rows) Parameters siteid string level string function string rows string Returns IEnumerable Post(Log) [HttpPost] public void Post(Log log) Parameters log Log"
- },
- "api/Oqtane.Controllers.ModuleController.html": {
- "href": "api/Oqtane.Controllers.ModuleController.html",
- "title": "Class ModuleController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ModuleController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class ModuleController : Controller Inheritance object ControllerBase Controller ModuleController Constructors ModuleController(IModuleRepository, IPageModuleRepository, IPageRepository, IModuleDefinitionRepository, ISettingRepository, IUserPermissions, ITenantManager, ISyncManager, ILogManager) public ModuleController(IModuleRepository modules, IPageModuleRepository pageModules, IPageRepository pages, IModuleDefinitionRepository moduleDefinitions, ISettingRepository settings, IUserPermissions userPermissions, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger) Parameters modules IModuleRepository pageModules IPageModuleRepository pages IPageRepository moduleDefinitions IModuleDefinitionRepository settings ISettingRepository userPermissions IUserPermissions tenantManager ITenantManager syncManager ISyncManager logger ILogManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public void Delete(int id) Parameters id int Export(int, int) [HttpGet(\"export\")] [Authorize(Roles = \"Registered Users\")] public string Export(int moduleid, int pageid) Parameters moduleid int pageid int Returns string Get(int) [HttpGet(\"{id}\")] public Module Get(int id) Parameters id int Returns Module Get(string) [HttpGet] public IEnumerable Get(string siteid) Parameters siteid string Returns IEnumerable Import(int, int, string) [HttpPost(\"import\")] [Authorize(Roles = \"Registered Users\")] public bool Import(int moduleid, int pageid, string content) Parameters moduleid int pageid int content string Returns bool Post(Module) [HttpPost] [Authorize(Roles = \"Registered Users\")] public Module Post(Module module) Parameters module Module Returns Module Put(int, Module) [HttpPut(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Module Put(int id, Module module) Parameters id int module Module Returns Module"
- },
- "api/Oqtane.Controllers.ModuleControllerBase.html": {
- "href": "api/Oqtane.Controllers.ModuleControllerBase.html",
- "title": "Class ModuleControllerBase | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ModuleControllerBase Namespace Oqtane.Controllers Assembly Oqtane.Server.dll public class ModuleControllerBase : Controller Inheritance object ControllerBase Controller ModuleControllerBase Constructors ModuleControllerBase(ILogManager, IHttpContextAccessor) public ModuleControllerBase(ILogManager logger, IHttpContextAccessor accessor) Parameters logger ILogManager accessor IHttpContextAccessor Fields _authEntityId protected Dictionary _authEntityId Field Value Dictionary _entityId protected int _entityId Field Value int _logger protected readonly ILogManager _logger Field Value ILogManager Methods AuthEntityId(string) protected int AuthEntityId(string entityname) Parameters entityname string Returns int IsAuthorizedEntityId(string, int) protected bool IsAuthorizedEntityId(string entityname, int entityid) Parameters entityname string entityid int Returns bool"
- },
- "api/Oqtane.Controllers.ModuleDefinitionController.html": {
- "href": "api/Oqtane.Controllers.ModuleDefinitionController.html",
- "title": "Class ModuleDefinitionController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ModuleDefinitionController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class ModuleDefinitionController : Controller Inheritance object ControllerBase Controller ModuleDefinitionController Constructors ModuleDefinitionController(IModuleDefinitionRepository, ITenantRepository, ISqlRepository, IUserPermissions, IInstallationManager, IWebHostEnvironment, IServiceProvider, ITenantManager, ISyncManager, ILogManager) public ModuleDefinitionController(IModuleDefinitionRepository moduleDefinitions, ITenantRepository tenants, ISqlRepository sql, IUserPermissions userPermissions, IInstallationManager installationManager, IWebHostEnvironment environment, IServiceProvider serviceProvider, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger) Parameters moduleDefinitions IModuleDefinitionRepository tenants ITenantRepository sql ISqlRepository userPermissions IUserPermissions installationManager IInstallationManager environment IWebHostEnvironment serviceProvider IServiceProvider tenantManager ITenantManager syncManager ISyncManager logger ILogManager Methods Delete(int, int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Host Users\")] public void Delete(int id, int siteid) Parameters id int siteid int Get(int, string) [HttpGet(\"{id}\")] public ModuleDefinition Get(int id, string siteid) Parameters id int siteid string Returns ModuleDefinition Get(string) [HttpGet] public IEnumerable Get(string siteid) Parameters siteid string Returns IEnumerable GetTemplates() [HttpGet(\"templates\")] [Authorize(Roles = \"Host Users\")] public List GetTemplates() Returns List Post(ModuleDefinition) [HttpPost] [Authorize(Roles = \"Host Users\")] public ModuleDefinition Post(ModuleDefinition moduleDefinition) Parameters moduleDefinition ModuleDefinition Returns ModuleDefinition Put(int, ModuleDefinition) [HttpPut(\"{id}\")] [Authorize(Roles = \"Administrators\")] public void Put(int id, ModuleDefinition moduleDefinition) Parameters id int moduleDefinition ModuleDefinition"
- },
- "api/Oqtane.Controllers.NotificationController.html": {
- "href": "api/Oqtane.Controllers.NotificationController.html",
- "title": "Class NotificationController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class NotificationController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class NotificationController : Controller Inheritance object ControllerBase Controller NotificationController Constructors NotificationController(INotificationRepository, IUserPermissions, ISyncManager, ILogManager, ITenantManager) public NotificationController(INotificationRepository notifications, IUserPermissions userPermissions, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager) Parameters notifications INotificationRepository userPermissions IUserPermissions syncManager ISyncManager logger ILogManager tenantManager ITenantManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Notification Get(int id) Parameters id int Returns Notification Get(string, string, string) [HttpGet] [Authorize(Roles = \"Registered Users\")] public IEnumerable Get(string siteid, string direction, string userid) Parameters siteid string direction string userid string Returns IEnumerable Get(string, string, string, string) [HttpGet(\"read-count\")] [Authorize(Roles = \"Registered Users\")] public int Get(string siteid, string direction, string userid, string isread) Parameters siteid string direction string userid string isread string Returns int Get(string, string, string, string, string) [HttpGet(\"read\")] [Authorize(Roles = \"Registered Users\")] public IEnumerable Get(string siteid, string direction, string userid, string count, string isread) Parameters siteid string direction string userid string count string isread string Returns IEnumerable Post(Notification) [HttpPost] [Authorize(Roles = \"Registered Users\")] public Notification Post(Notification notification) Parameters notification Notification Returns Notification Put(int, Notification) [HttpPut(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Notification Put(int id, Notification notification) Parameters id int notification Notification Returns Notification"
- },
- "api/Oqtane.Controllers.PackageController.html": {
- "href": "api/Oqtane.Controllers.PackageController.html",
- "title": "Class PackageController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class PackageController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class PackageController : Controller Inheritance object ControllerBase Controller PackageController Constructors PackageController(IInstallationManager, IWebHostEnvironment, IConfigManager, ILogManager) public PackageController(IInstallationManager installationManager, IWebHostEnvironment environment, IConfigManager configManager, ILogManager logger) Parameters installationManager IInstallationManager environment IWebHostEnvironment configManager IConfigManager logger ILogManager Methods Get(string, string, string, string, string) [HttpGet] public Task> Get(string type, string search, string price, string package, string sort) Parameters type string search string price string package string sort string Returns Task> GetPackageUpdates(string) [HttpGet(\"updates\")] public Task> GetPackageUpdates(string type) Parameters type string Returns Task> InstallPackages() [HttpGet(\"install\")] [Authorize(Roles = \"Host Users\")] public void InstallPackages() Post(string, string, string, string) [HttpPost] [Authorize(Roles = \"Host Users\")] public Task Post(string packageid, string version, string download, string install) Parameters packageid string version string download string install string Returns Task"
- },
- "api/Oqtane.Controllers.PageController.html": {
- "href": "api/Oqtane.Controllers.PageController.html",
- "title": "Class PageController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class PageController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class PageController : Controller Inheritance object ControllerBase Controller PageController Constructors PageController(IPageRepository, IModuleRepository, IPageModuleRepository, IPermissionRepository, ISettingRepository, IUserPermissions, IUrlMappingRepository, ITenantManager, ISyncManager, ILogManager) public PageController(IPageRepository pages, IModuleRepository modules, IPageModuleRepository pageModules, IPermissionRepository permissionRepository, ISettingRepository settings, IUserPermissions userPermissions, IUrlMappingRepository urlMappings, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger) Parameters pages IPageRepository modules IModuleRepository pageModules IPageModuleRepository permissionRepository IPermissionRepository settings ISettingRepository userPermissions IUserPermissions urlMappings IUrlMappingRepository tenantManager ITenantManager syncManager ISyncManager logger ILogManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] public Page Get(int id) Parameters id int Returns Page Get(string) [HttpGet] public IEnumerable Get(string siteid) Parameters siteid string Returns IEnumerable Get(string, int) [HttpGet(\"path/{siteid}\")] public Page Get(string path, int siteid) Parameters path string siteid int Returns Page Post(Page) [HttpPost] [Authorize(Roles = \"Registered Users\")] public Page Post(Page page) Parameters page Page Returns Page Post(int, string) [HttpPost(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Page Post(int id, string userid) Parameters id int userid string Returns Page Put(int, Page) [HttpPut(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Page Put(int id, Page page) Parameters id int page Page Returns Page Put(int, int, int?) [HttpPut] [Authorize(Roles = \"Registered Users\")] public void Put(int siteid, int pageid, int? parentid) Parameters siteid int pageid int parentid int?"
- },
- "api/Oqtane.Controllers.PageModuleController.html": {
- "href": "api/Oqtane.Controllers.PageModuleController.html",
- "title": "Class PageModuleController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class PageModuleController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class PageModuleController : Controller Inheritance object ControllerBase Controller PageModuleController Constructors PageModuleController(IPageModuleRepository, IPageRepository, IUserPermissions, ITenantManager, ISyncManager, ILogManager) public PageModuleController(IPageModuleRepository pageModules, IPageRepository pages, IUserPermissions userPermissions, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger) Parameters pageModules IPageModuleRepository pages IPageRepository userPermissions IUserPermissions tenantManager ITenantManager syncManager ISyncManager logger ILogManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] public PageModule Get(int id) Parameters id int Returns PageModule Get(int, int) [HttpGet(\"{pageid}/{moduleid}\")] public PageModule Get(int pageid, int moduleid) Parameters pageid int moduleid int Returns PageModule Post(PageModule) [HttpPost] [Authorize(Roles = \"Registered Users\")] public PageModule Post(PageModule pageModule) Parameters pageModule PageModule Returns PageModule Put(int, PageModule) [HttpPut(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public PageModule Put(int id, PageModule pageModule) Parameters id int pageModule PageModule Returns PageModule Put(int, string) [HttpPut] [Authorize(Roles = \"Registered Users\")] public void Put(int pageid, string pane) Parameters pageid int pane string"
- },
- "api/Oqtane.Controllers.ProfileController.html": {
- "href": "api/Oqtane.Controllers.ProfileController.html",
- "title": "Class ProfileController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ProfileController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class ProfileController : Controller Inheritance object ControllerBase Controller ProfileController Constructors ProfileController(IProfileRepository, ISyncManager, ILogManager, ITenantManager) public ProfileController(IProfileRepository profiles, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager) Parameters profiles IProfileRepository syncManager ISyncManager logger ILogManager tenantManager ITenantManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Policy = \"Profile:Write:Administrators\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Profile Get(int id) Parameters id int Returns Profile Get(string) [HttpGet] [Authorize(Roles = \"Registered Users\")] public IEnumerable Get(string siteid) Parameters siteid string Returns IEnumerable Post(Profile) [HttpPost] [Authorize(Policy = \"Profile:Write:Administrators\")] public Profile Post(Profile profile) Parameters profile Profile Returns Profile Put(int, Profile) [HttpPut(\"{id}\")] [Authorize(Policy = \"Profile:Write:Administrators\")] public Profile Put(int id, Profile profile) Parameters id int profile Profile Returns Profile"
- },
- "api/Oqtane.Controllers.RoleController.html": {
- "href": "api/Oqtane.Controllers.RoleController.html",
- "title": "Class RoleController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class RoleController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class RoleController : Controller Inheritance object ControllerBase Controller RoleController Constructors RoleController(IRoleRepository, ISyncManager, ILogManager, ITenantManager) public RoleController(IRoleRepository roles, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager) Parameters roles IRoleRepository syncManager ISyncManager logger ILogManager tenantManager ITenantManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Policy = \"Role:Write:Administrators\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public Role Get(int id) Parameters id int Returns Role Get(string, string) [HttpGet] [Authorize(Roles = \"Registered Users\")] public IEnumerable Get(string siteid, string global) Parameters siteid string global string Returns IEnumerable Post(Role) [HttpPost] [Authorize(Policy = \"Role:Write:Administrators\")] public Role Post(Role role) Parameters role Role Returns Role Put(int, Role) [HttpPut(\"{id}\")] [Authorize(Policy = \"Role:Write:Administrators\")] public Role Put(int id, Role role) Parameters id int role Role Returns Role"
- },
- "api/Oqtane.Controllers.SearchResultsController.html": {
- "href": "api/Oqtane.Controllers.SearchResultsController.html",
- "title": "Class SearchResultsController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SearchResultsController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class SearchResultsController : Controller Inheritance object ControllerBase Controller SearchResultsController Constructors SearchResultsController(ISearchService, ILogManager, ITenantManager) public SearchResultsController(ISearchService searchService, ILogManager logger, ITenantManager tenantManager) Parameters searchService ISearchService logger ILogManager tenantManager ITenantManager Methods Post(SearchQuery) [HttpPost] public Task Post(SearchQuery searchQuery) Parameters searchQuery SearchQuery Returns Task"
- },
- "api/Oqtane.Controllers.SettingController.html": {
- "href": "api/Oqtane.Controllers.SettingController.html",
- "title": "Class SettingController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SettingController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class SettingController : Controller Inheritance object ControllerBase Controller SettingController Constructors SettingController(ISettingRepository, IPageModuleRepository, IUserPermissions, ITenantManager, ISyncManager, IAliasAccessor, IOptionsMonitorCache, IOptionsMonitorCache, IOptionsMonitorCache, IOptionsMonitorCache, ILogManager) public SettingController(ISettingRepository settings, IPageModuleRepository pageModules, IUserPermissions userPermissions, ITenantManager tenantManager, ISyncManager syncManager, IAliasAccessor aliasAccessor, IOptionsMonitorCache cookieCache, IOptionsMonitorCache oidcCache, IOptionsMonitorCache oauthCache, IOptionsMonitorCache identityCache, ILogManager logger) Parameters settings ISettingRepository pageModules IPageModuleRepository userPermissions IUserPermissions tenantManager ITenantManager syncManager ISyncManager aliasAccessor IAliasAccessor cookieCache IOptionsMonitorCache oidcCache IOptionsMonitorCache oauthCache IOptionsMonitorCache identityCache IOptionsMonitorCache logger ILogManager Methods Clear() [HttpDelete(\"clear\")] [Authorize(Roles = \"Administrators\")] public void Clear() Delete(string, int, string) [HttpDelete(\"{entityName}/{entityId}/{settingName}\")] public void Delete(string entityName, int entityId, string settingName) Parameters entityName string entityId int settingName string Get(int, string) [HttpGet(\"{id}/{entityName}\")] public Setting Get(int id, string entityName) Parameters id int entityName string Returns Setting Get(string, int) [HttpGet] public IEnumerable Get(string entityName, int entityId) Parameters entityName string entityId int Returns IEnumerable Post(Setting) [HttpPost] public Setting Post(Setting setting) Parameters setting Setting Returns Setting Put(int, Setting) [HttpPut(\"{id}\")] public Setting Put(int id, Setting setting) Parameters id int setting Setting Returns Setting Put(string, int, string, string, bool) [HttpPut(\"{entityName}/{entityId}/{settingName}/{settingValue}/{isPrivate}\")] public void Put(string entityName, int entityId, string settingName, string settingValue, bool isPrivate) Parameters entityName string entityId int settingName string settingValue string isPrivate bool"
- },
- "api/Oqtane.Controllers.SiteController.html": {
- "href": "api/Oqtane.Controllers.SiteController.html",
- "title": "Class SiteController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SiteController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class SiteController : Controller Inheritance object ControllerBase Controller SiteController Constructors SiteController(ISiteService, ILogManager) public SiteController(ISiteService siteService, ILogManager logger) Parameters siteService ISiteService logger ILogManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Host Users\")] public Task Delete(int id) Parameters id int Returns Task Get() [HttpGet] [Authorize(Roles = \"Host Users\")] public Task> Get() Returns Task> Get(int) [HttpGet(\"{id}\")] public Task Get(int id) Parameters id int Returns Task GetModules(int, int) [HttpGet(\"modules/{siteId}/{pageId}\")] public Task> GetModules(int siteId, int pageId) Parameters siteId int pageId int Returns Task> Post(Site) [HttpPost] [Authorize(Roles = \"Host Users\")] public Task Post(Site site) Parameters site Site Returns Task Put(int, Site) [HttpPut(\"{id}\")] [Authorize(Roles = \"Administrators\")] public Task Put(int id, Site site) Parameters id int site Site Returns Task"
- },
- "api/Oqtane.Controllers.SiteTemplateController.html": {
- "href": "api/Oqtane.Controllers.SiteTemplateController.html",
- "title": "Class SiteTemplateController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SiteTemplateController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class SiteTemplateController : Controller Inheritance object ControllerBase Controller SiteTemplateController Constructors SiteTemplateController(ISiteTemplateRepository) public SiteTemplateController(ISiteTemplateRepository siteTemplates) Parameters siteTemplates ISiteTemplateRepository Methods Get() [HttpGet] public IEnumerable Get() Returns IEnumerable"
- },
- "api/Oqtane.Controllers.SqlController.html": {
- "href": "api/Oqtane.Controllers.SqlController.html",
- "title": "Class SqlController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SqlController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class SqlController : Controller Inheritance object ControllerBase Controller SqlController Constructors SqlController(ITenantRepository, ISqlRepository, ILogManager) public SqlController(ITenantRepository tenants, ISqlRepository sql, ILogManager logger) Parameters tenants ITenantRepository sql ISqlRepository logger ILogManager Methods Post(SqlQuery) [HttpPost] [Authorize(Roles = \"Host Users\")] public SqlQuery Post(SqlQuery sqlquery) Parameters sqlquery SqlQuery Returns SqlQuery"
- },
- "api/Oqtane.Controllers.SyncController.html": {
- "href": "api/Oqtane.Controllers.SyncController.html",
- "title": "Class SyncController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SyncController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class SyncController : Controller Inheritance object ControllerBase Controller SyncController Constructors SyncController(ISyncManager, ITenantManager) public SyncController(ISyncManager syncManager, ITenantManager tenantManager) Parameters syncManager ISyncManager tenantManager ITenantManager Methods Get(string) [HttpGet(\"{lastSyncDate}\")] public Sync Get(string lastSyncDate) Parameters lastSyncDate string Returns Sync"
- },
- "api/Oqtane.Controllers.SystemController.html": {
- "href": "api/Oqtane.Controllers.SystemController.html",
- "title": "Class SystemController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SystemController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class SystemController : Controller Inheritance object ControllerBase Controller SystemController Constructors SystemController(IWebHostEnvironment, IConfigManager) public SystemController(IWebHostEnvironment environment, IConfigManager configManager) Parameters environment IWebHostEnvironment configManager IConfigManager Methods Get() [HttpGet(\"icons\")] public Dictionary Get() Returns Dictionary Get(string) [HttpGet] [Authorize(Roles = \"Host Users\")] public Dictionary Get(string type) Parameters type string Returns Dictionary Get(string, object) [HttpGet(\"{key}/{value}\")] [Authorize(Roles = \"Host Users\")] public object Get(string key, object value) Parameters key string value object Returns object Post(Dictionary) [HttpPost] [Authorize(Roles = \"Host Users\")] public void Post(Dictionary settings) Parameters settings Dictionary"
- },
- "api/Oqtane.Controllers.TenantController.html": {
- "href": "api/Oqtane.Controllers.TenantController.html",
- "title": "Class TenantController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class TenantController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class TenantController : Controller Inheritance object ControllerBase Controller TenantController Constructors TenantController(ITenantRepository) public TenantController(ITenantRepository tenants) Parameters tenants ITenantRepository Methods Get() [HttpGet] [Authorize(Roles = \"Host Users\")] public IEnumerable Get() Returns IEnumerable Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Host Users\")] public Tenant Get(int id) Parameters id int Returns Tenant"
- },
- "api/Oqtane.Controllers.ThemeController.html": {
- "href": "api/Oqtane.Controllers.ThemeController.html",
- "title": "Class ThemeController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ThemeController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class ThemeController : Controller Inheritance object ControllerBase Controller ThemeController Constructors ThemeController(IThemeRepository, IInstallationManager, IWebHostEnvironment, ITenantManager, ISyncManager, ILogManager, IServiceProvider) public ThemeController(IThemeRepository themes, IInstallationManager installationManager, IWebHostEnvironment environment, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger, IServiceProvider serviceProvider) Parameters themes IThemeRepository installationManager IInstallationManager environment IWebHostEnvironment tenantManager ITenantManager syncManager ISyncManager logger ILogManager serviceProvider IServiceProvider Methods Delete(string) [HttpDelete(\"{themename}\")] [Authorize(Roles = \"Host Users\")] public void Delete(string themename) Parameters themename string Get() [HttpGet] [Authorize(Roles = \"Registered Users\")] public IEnumerable Get() Returns IEnumerable Get(int, string) [HttpGet(\"{id}\")] public Theme Get(int id, string siteid) Parameters id int siteid string Returns Theme GetTemplates() [HttpGet(\"templates\")] [Authorize(Roles = \"Host Users\")] public List GetTemplates() Returns List Post(Theme) [HttpPost] [Authorize(Roles = \"Host Users\")] public Theme Post(Theme theme) Parameters theme Theme Returns Theme Put(int, Theme) [HttpPut(\"{id}\")] [Authorize(Roles = \"Administrators\")] public void Put(int id, Theme theme) Parameters id int theme Theme"
- },
- "api/Oqtane.Controllers.UrlMappingController.html": {
- "href": "api/Oqtane.Controllers.UrlMappingController.html",
- "title": "Class UrlMappingController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class UrlMappingController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class UrlMappingController : Controller Inheritance object ControllerBase Controller UrlMappingController Constructors UrlMappingController(IUrlMappingRepository, ISyncManager, ILogManager, ITenantManager) public UrlMappingController(IUrlMappingRepository urlMappings, ISyncManager syncManager, ILogManager logger, ITenantManager tenantManager) Parameters urlMappings IUrlMappingRepository syncManager ISyncManager logger ILogManager tenantManager ITenantManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Roles = \"Administrators\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Administrators\")] public UrlMapping Get(int id) Parameters id int Returns UrlMapping Get(int, string) [HttpGet(\"url/{siteid}\")] public UrlMapping Get(int siteid, string url) Parameters siteid int url string Returns UrlMapping Get(string, string) [HttpGet] [Authorize(Roles = \"Administrators\")] public IEnumerable Get(string siteid, string ismapped) Parameters siteid string ismapped string Returns IEnumerable Post(UrlMapping) [HttpPost] [Authorize(Roles = \"Administrators\")] public UrlMapping Post(UrlMapping urlMapping) Parameters urlMapping UrlMapping Returns UrlMapping Put(int, UrlMapping) [HttpPut(\"{id}\")] [Authorize(Roles = \"Administrators\")] public UrlMapping Put(int id, UrlMapping urlMapping) Parameters id int urlMapping UrlMapping Returns UrlMapping"
- },
- "api/Oqtane.Controllers.UserController.html": {
- "href": "api/Oqtane.Controllers.UserController.html",
- "title": "Class UserController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class UserController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class UserController : Controller Inheritance object ControllerBase Controller UserController Constructors UserController(IUserRepository, ITenantManager, IUserManager, ISiteRepository, IUserPermissions, IJwtManager, IFileRepository, ISettingRepository, ILogManager) public UserController(IUserRepository users, ITenantManager tenantManager, IUserManager userManager, ISiteRepository sites, IUserPermissions userPermissions, IJwtManager jwtManager, IFileRepository files, ISettingRepository settings, ILogManager logger) Parameters users IUserRepository tenantManager ITenantManager userManager IUserManager sites ISiteRepository userPermissions IUserPermissions jwtManager IJwtManager files IFileRepository settings ISettingRepository logger ILogManager Methods Authenticate() [HttpGet(\"authenticate\")] public User Authenticate() Returns User Delete(int, string) [HttpDelete(\"{id}\")] [Authorize(Policy = \"User:Write:Administrators\")] public Task Delete(int id, string siteid) Parameters id int siteid string Returns Task Forgot(User) [HttpPost(\"forgot\")] public Task Forgot(User user) Parameters user User Returns Task Get(int, string) [HttpGet(\"{id}\")] [Authorize] public User Get(int id, string siteid) Parameters id int siteid string Returns User Get(string, string) [HttpGet(\"username/{username}\")] public User Get(string username, string siteid) Parameters username string siteid string Returns User Get(string, string, string) [HttpGet(\"search/{username}/{email}\")] public User Get(string username, string email, string siteid) Parameters username string email string siteid string Returns User Import(string, string, string) [HttpPost(\"import\")] [Authorize(Roles = \"Administrators\")] public Task> Import(string siteid, string fileid, string notify) Parameters siteid string fileid string notify string Returns Task> Link(User, string, string, string, string) [HttpPost(\"link\")] public Task Link(User user, string token, string type, string key, string name) Parameters user User token string type string key string name string Returns Task Login(User, bool, bool) [HttpPost(\"login\")] public Task Login(User user, bool setCookie, bool isPersistent) Parameters user User setCookie bool isPersistent bool Returns Task Logout(User) [HttpPost(\"logout\")] [Authorize] public Task Logout(User user) Parameters user User Returns Task LogoutEverywhere(User) [HttpPost(\"logouteverywhere\")] [Authorize] public Task LogoutEverywhere(User user) Parameters user User Returns Task PasswordRequirements(int) [HttpGet(\"passwordrequirements/{siteid}\")] public Dictionary PasswordRequirements(int siteid) Parameters siteid int Returns Dictionary PersonalAccessToken() [HttpGet(\"personalaccesstoken\")] [Authorize(Roles = \"Administrators\")] public string PersonalAccessToken() Returns string Post(User) [HttpPost] public Task Post(User user) Parameters user User Returns Task Put(int, User) [HttpPut(\"{id}\")] [Authorize] public Task Put(int id, User user) Parameters id int user User Returns Task Reset(User, string) [HttpPost(\"reset\")] public Task Reset(User user, string token) Parameters user User token string Returns Task Token() [HttpGet(\"token\")] [Authorize(Roles = \"Registered Users\")] public string Token() Returns string TwoFactor(User, string) [HttpPost(\"twofactor\")] public User TwoFactor(User user, string token) Parameters user User token string Returns User Validate(string) [HttpGet(\"validate/{password}\")] public Task Validate(string password) Parameters password string Returns Task Verify(User, string) [HttpPost(\"verify\")] public Task Verify(User user, string token) Parameters user User token string Returns Task"
- },
- "api/Oqtane.Controllers.UserRoleController.html": {
- "href": "api/Oqtane.Controllers.UserRoleController.html",
- "title": "Class UserRoleController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class UserRoleController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class UserRoleController : Controller Inheritance object ControllerBase Controller UserRoleController Constructors UserRoleController(IUserRoleRepository, IRoleRepository, IUserPermissions, ITenantManager, ISyncManager, ILogManager) public UserRoleController(IUserRoleRepository userRoles, IRoleRepository roles, IUserPermissions userPermissions, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger) Parameters userRoles IUserRoleRepository roles IRoleRepository userPermissions IUserPermissions tenantManager ITenantManager syncManager ISyncManager logger ILogManager Methods Delete(int) [HttpDelete(\"{id}\")] [Authorize(Policy = \"UserRole:Write:Administrators\")] public void Delete(int id) Parameters id int Get(int) [HttpGet(\"{id}\")] [Authorize(Roles = \"Registered Users\")] public UserRole Get(int id) Parameters id int Returns UserRole Get(string, string, string) [HttpGet] [Authorize(Roles = \"Registered Users\")] public IEnumerable Get(string siteid, string userid = null, string rolename = null) Parameters siteid string userid string rolename string Returns IEnumerable Post(UserRole) [HttpPost] [Authorize(Policy = \"UserRole:Write:Administrators\")] public UserRole Post(UserRole userRole) Parameters userRole UserRole Returns UserRole Put(int, UserRole) [HttpPut(\"{id}\")] [Authorize(Policy = \"UserRole:Write:Administrators\")] public UserRole Put(int id, UserRole userRole) Parameters id int userRole UserRole Returns UserRole"
- },
- "api/Oqtane.Controllers.VisitorController.html": {
- "href": "api/Oqtane.Controllers.VisitorController.html",
- "title": "Class VisitorController | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class VisitorController Namespace Oqtane.Controllers Assembly Oqtane.Server.dll [Route(\"api/[controller]\")] public class VisitorController : Controller Inheritance object ControllerBase Controller VisitorController Constructors VisitorController(IVisitorRepository, ILogManager, ITenantManager) public VisitorController(IVisitorRepository visitors, ILogManager logger, ITenantManager tenantManager) Parameters visitors IVisitorRepository logger ILogManager tenantManager ITenantManager Methods Get(int) [HttpGet(\"{id}\")] public Visitor Get(int id) Parameters id int Returns Visitor Get(string, string) [HttpGet] [Authorize(Roles = \"Administrators\")] public IEnumerable Get(string siteid, string fromdate) Parameters siteid string fromdate string Returns IEnumerable"
- },
- "api/Oqtane.Controllers.html": {
- "href": "api/Oqtane.Controllers.html",
- "title": "Namespace Oqtane.Controllers | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Namespace Oqtane.Controllers TODO: Please document what this namespace is for. Classes AliasController DatabaseController FileController FolderController InstallationController JobController JobLogController LanguageController LocalizationController LogController ModuleController ModuleControllerBase ModuleDefinitionController NotificationController PackageController PageController PageModuleController ProfileController RoleController SearchResultsController SettingController SiteController SiteTemplateController SqlController SyncController SystemController TenantController ThemeController UrlMappingController UserController UserRoleController VisitorController Structs InstallationController.ClientAssembly"
- },
- "api/Oqtane.Documentation.InternalApi_DoNotUse_MayChangeWithoutNotice.html": {
- "href": "api/Oqtane.Documentation.InternalApi_DoNotUse_MayChangeWithoutNotice.html",
- "title": "Class InternalApi_DoNotUse_MayChangeWithoutNotice | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class InternalApi_DoNotUse_MayChangeWithoutNotice Namespace Oqtane.Documentation Assembly Oqtane.Shared.dll This attribute serves as metadata for other things to mark them as internal APIs. Use this on stuff you want to document publicly, but mark as internal so people are warned [AttributeUsage(AttributeTargets.All, AllowMultiple = true, Inherited = false)] [PublicApi] public class InternalApi_DoNotUse_MayChangeWithoutNotice : Attribute Inheritance object Attribute InternalApi_DoNotUse_MayChangeWithoutNotice Constructors InternalApi_DoNotUse_MayChangeWithoutNotice() The [InternalApi_DoNotUse_MayChangeWithoutNotice] attribute can be used without additional comment. public InternalApi_DoNotUse_MayChangeWithoutNotice() InternalApi_DoNotUse_MayChangeWithoutNotice(string) Constructor with optional comment [InternalApi_DoNotUse_MayChangeWithoutNotice(some-comment)]. public InternalApi_DoNotUse_MayChangeWithoutNotice(string comment) Parameters comment string Reason why it's internal, optional"
- },
- "api/Oqtane.Documentation.PrivateApi.html": {
- "href": "api/Oqtane.Documentation.PrivateApi.html",
- "title": "Class PrivateApi | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class PrivateApi Namespace Oqtane.Documentation Assembly Oqtane.Shared.dll This attribute marks classes, methods, etc. as private APIs So they should not be publicly documented. By default, all APIs are private, so you only need this attribute on children of classes marked with [PublicApi]. If you attach this attribute to a class like this: [PrivateApi] public class YourClass { } or like this [PrivateApi(\"Reason why the API should remain private\")] public class YourClass { } or in combination with PublicApi [PublicApi] public class YourClass { public string Name; [PrivateApi(\"Don't publish this - should only be used internally\")] public string InternalSpecialName; } It will result in this class, method etc. to not be documented in the docs.oqtane.org. [AttributeUsage(AttributeTargets.All, AllowMultiple = true, Inherited = false)] [PublicApi] public class PrivateApi : Attribute Inheritance object Attribute PrivateApi Constructors PrivateApi() The [PrivateApi] attribute can be used without additional comment. public PrivateApi() PrivateApi(string) Constructor with optional comment [PrivateApi(some-comment)]. public PrivateApi(string comment) Parameters comment string Reason why it's private, optional"
- },
- "api/Oqtane.Documentation.PublicApi.html": {
- "href": "api/Oqtane.Documentation.PublicApi.html",
- "title": "Class PublicApi | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class PublicApi Namespace Oqtane.Documentation Assembly Oqtane.Shared.dll This attribute marks classes, properties etc. as public APIs. Any API / code with this attribute will be published in the docs. You can apply it to anything, but usually you will only need it on classes. If you attach this attribute to a class like this: [PublicApi] public class YourClass { } or like this [PublicApi(\"This is stable code\")] public class YourClass { } It will result in this class, method etc. to be publicly documented in the docs.oqtane.org. If you want the entire class to be documented, just add this to the class. To exclude certain methods or properties add a PrivateApi, InternalApi or WorkInProgress attribute. [AttributeUsage(AttributeTargets.All, AllowMultiple = true, Inherited = false)] [PublicApi] public class PublicApi : Attribute Inheritance object Attribute PublicApi Constructors PublicApi() The [PublicApi] attribute can usually be used without additional comment. public PublicApi() PublicApi(string) Constructor with optional comment [PublicApi(some-comment)] public PublicApi(string comment) Parameters comment string Reason why it's public, optional"
- },
- "api/Oqtane.Documentation.WorkInProgressApi.html": {
- "href": "api/Oqtane.Documentation.WorkInProgressApi.html",
- "title": "Class WorkInProgressApi | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class WorkInProgressApi Namespace Oqtane.Documentation Assembly Oqtane.Shared.dll This attribute marks APIs to be publicly documented with a clear warning that it's work in progress. [AttributeUsage(AttributeTargets.All, AllowMultiple = true, Inherited = false)] [PublicApi] public class WorkInProgressApi : Attribute Inheritance object Attribute WorkInProgressApi Constructors WorkInProgressApi(string) The [WorkInProgressApi(some-comment)] attributes must always have a comment why they are WIP. public WorkInProgressApi(string comment) Parameters comment string Reason why it's WIP, required"
- },
- "api/Oqtane.Documentation.html": {
- "href": "api/Oqtane.Documentation.html",
- "title": "Namespace Oqtane.Documentation | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Namespace Oqtane.Documentation This namespace contains attributes like PublicApi which mark code as public, private, internal, etc. Depending on what attributes you add to your code it will appear in the generated docs - and possibly have a warning or something attached. Typical use: [PublicApi] public class YourClass { // this will be documented without any special comments // because we're not using the tag public string Name; /// /// This will be documented with this text in the summary /// public string Something; /// /// This won't appear in the public documentation /// [PrivateApi(\"Don't publish this - should only be used internally\")] public string InternalSpecialName; /// /// This will appear in the docs, but the Work-In-Progress will be clearly visible /// [WorkInProgressApi(\"We're not done yet, may change\")] public string NotDoneYet; /// /// This will appear in the docs, but with a warning /// [InternalApi_DoNotUse_MayChangeWithoutNotice(\"This may help you, but please don't use it\")] public string YouShouldKnowAboutThisButNotUseIt; } Classes InternalApi_DoNotUse_MayChangeWithoutNotice This attribute serves as metadata for other things to mark them as internal APIs. Use this on stuff you want to document publicly, but mark as internal so people are warned PrivateApi This attribute marks classes, methods, etc. as private APIs So they should not be publicly documented. By default, all APIs are private, so you only need this attribute on children of classes marked with [PublicApi]. PublicApi This attribute marks classes, properties etc. as public APIs. Any API / code with this attribute will be published in the docs. You can apply it to anything, but usually you will only need it on classes. WorkInProgressApi This attribute marks APIs to be publicly documented with a clear warning that it's work in progress."
- },
- "api/Oqtane.Enums.LogFunction.html": {
- "href": "api/Oqtane.Enums.LogFunction.html",
- "title": "Enum LogFunction | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Enum LogFunction Namespace Oqtane.Enums Assembly Oqtane.Shared.dll public enum LogFunction Fields Create = 0 Delete = 3 Other = 5 Read = 1 Security = 4 Update = 2"
- },
- "api/Oqtane.Enums.MigrationType.html": {
- "href": "api/Oqtane.Enums.MigrationType.html",
- "title": "Enum MigrationType | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Enum MigrationType Namespace Oqtane.Enums Assembly Oqtane.Shared.dll public enum MigrationType Fields Down = 1 Up = 0"
- },
- "api/Oqtane.Enums.html": {
- "href": "api/Oqtane.Enums.html",
- "title": "Namespace Oqtane.Enums | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Namespace Oqtane.Enums TODO: Please document what this namespace is for. Enums LogFunction MigrationType"
- },
- "api/Oqtane.Extensions.ApplicationBuilderExtensions.html": {
- "href": "api/Oqtane.Extensions.ApplicationBuilderExtensions.html",
- "title": "Class ApplicationBuilderExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ApplicationBuilderExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class ApplicationBuilderExtensions Inheritance object ApplicationBuilderExtensions Methods ConfigureOqtaneAssemblies(IApplicationBuilder, IWebHostEnvironment) public static IApplicationBuilder ConfigureOqtaneAssemblies(this IApplicationBuilder app, IWebHostEnvironment env) Parameters app IApplicationBuilder env IWebHostEnvironment Returns IApplicationBuilder UseExceptionMiddleWare(IApplicationBuilder) public static IApplicationBuilder UseExceptionMiddleWare(this IApplicationBuilder builder) Parameters builder IApplicationBuilder Returns IApplicationBuilder UseJwtAuthorization(IApplicationBuilder) public static IApplicationBuilder UseJwtAuthorization(this IApplicationBuilder builder) Parameters builder IApplicationBuilder Returns IApplicationBuilder UseOqtaneLocalization(IApplicationBuilder) public static IApplicationBuilder UseOqtaneLocalization(this IApplicationBuilder app) Parameters app IApplicationBuilder Returns IApplicationBuilder UseTenantResolution(IApplicationBuilder) public static IApplicationBuilder UseTenantResolution(this IApplicationBuilder builder) Parameters builder IApplicationBuilder Returns IApplicationBuilder"
- },
- "api/Oqtane.Extensions.CacheExtensions.html": {
- "href": "api/Oqtane.Extensions.CacheExtensions.html",
- "title": "Class CacheExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class CacheExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class CacheExtensions Inheritance object CacheExtensions Methods GetOrCreateAsync(IMemoryCache, string, Func>, bool) public static Task GetOrCreateAsync(this IMemoryCache cache, string key, Func> factory, bool track) Parameters cache IMemoryCache key string factory Func> track bool Returns Task Type Parameters TItem GetOrCreate(IMemoryCache, string, Func, bool) public static TItem GetOrCreate(this IMemoryCache cache, string key, Func factory, bool track) Parameters cache IMemoryCache key string factory Func track bool Returns TItem Type Parameters TItem Remove(IMemoryCache, string, bool) public static void Remove(this IMemoryCache cache, string key, bool track) Parameters cache IMemoryCache key string track bool"
- },
- "api/Oqtane.Extensions.ClaimsPrincipalExtensions.html": {
- "href": "api/Oqtane.Extensions.ClaimsPrincipalExtensions.html",
- "title": "Class ClaimsPrincipalExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ClaimsPrincipalExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class ClaimsPrincipalExtensions Inheritance object ClaimsPrincipalExtensions Methods IsOnlyInRole(ClaimsPrincipal, string) public static bool IsOnlyInRole(this ClaimsPrincipal claimsPrincipal, string role) Parameters claimsPrincipal ClaimsPrincipal role string Returns bool Roles(ClaimsPrincipal) public static string[] Roles(this ClaimsPrincipal claimsPrincipal) Parameters claimsPrincipal ClaimsPrincipal Returns string[] SecurityStamp(ClaimsPrincipal) public static string SecurityStamp(this ClaimsPrincipal claimsPrincipal) Parameters claimsPrincipal ClaimsPrincipal Returns string SiteId(ClaimsPrincipal) public static int SiteId(this ClaimsPrincipal claimsPrincipal) Parameters claimsPrincipal ClaimsPrincipal Returns int SiteKey(ClaimsPrincipal) public static string SiteKey(this ClaimsPrincipal claimsPrincipal) Parameters claimsPrincipal ClaimsPrincipal Returns string TenantId(ClaimsPrincipal) public static int TenantId(this ClaimsPrincipal claimsPrincipal) Parameters claimsPrincipal ClaimsPrincipal Returns int UserId(ClaimsPrincipal) public static int UserId(this ClaimsPrincipal claimsPrincipal) Parameters claimsPrincipal ClaimsPrincipal Returns int Username(ClaimsPrincipal) public static string Username(this ClaimsPrincipal claimsPrincipal) Parameters claimsPrincipal ClaimsPrincipal Returns string"
- },
- "api/Oqtane.Extensions.DbContextOptionsBuilderExtensions.html": {
- "href": "api/Oqtane.Extensions.DbContextOptionsBuilderExtensions.html",
- "title": "Class DbContextOptionsBuilderExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class DbContextOptionsBuilderExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class DbContextOptionsBuilderExtensions Inheritance object DbContextOptionsBuilderExtensions Methods UseOqtaneDatabase(DbContextOptionsBuilder, IDatabase, string) public static DbContextOptionsBuilder UseOqtaneDatabase(this DbContextOptionsBuilder optionsBuilder, IDatabase database, string connectionString) Parameters optionsBuilder DbContextOptionsBuilder database IDatabase connectionString string Returns DbContextOptionsBuilder"
- },
- "api/Oqtane.Extensions.DictionaryExtensions.html": {
- "href": "api/Oqtane.Extensions.DictionaryExtensions.html",
- "title": "Class DictionaryExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class DictionaryExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class DictionaryExtensions Inheritance object DictionaryExtensions Methods GetValue(Dictionary, TKey, TValue, bool) public static TValue GetValue(this Dictionary dictionary, TKey key, TValue defaultValue, bool nullOrEmptyValueIsValid = false) Parameters dictionary Dictionary key TKey defaultValue TValue nullOrEmptyValueIsValid bool Returns TValue Type Parameters TKey TValue"
- },
- "api/Oqtane.Extensions.HttpContextExtensions.html": {
- "href": "api/Oqtane.Extensions.HttpContextExtensions.html",
- "title": "Class HttpContextExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class HttpContextExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class HttpContextExtensions Inheritance object HttpContextExtensions Methods GetAlias(HttpContext) public static Alias GetAlias(this HttpContext context) Parameters context HttpContext Returns Alias GetSiteSettings(HttpContext) public static Dictionary GetSiteSettings(this HttpContext context) Parameters context HttpContext Returns Dictionary"
- },
- "api/Oqtane.Extensions.MimeUtilities.html": {
- "href": "api/Oqtane.Extensions.MimeUtilities.html",
- "title": "Class MimeUtilities | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class MimeUtilities Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class MimeUtilities Inheritance object MimeUtilities Methods GetMimeType(File) Return Mime content type based on file extension public static string GetMimeType(this File file) Parameters file File Returns string GetMimeType(string) Return Mime content type based on file extension public static string GetMimeType(string fileName) Parameters fileName string File name Returns string"
- },
- "api/Oqtane.Extensions.OqtaneSiteAuthenticationBuilderExtensions.html": {
- "href": "api/Oqtane.Extensions.OqtaneSiteAuthenticationBuilderExtensions.html",
- "title": "Class OqtaneSiteAuthenticationBuilderExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class OqtaneSiteAuthenticationBuilderExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class OqtaneSiteAuthenticationBuilderExtensions Inheritance object OqtaneSiteAuthenticationBuilderExtensions Methods WithSiteAuthentication(OqtaneSiteOptionsBuilder) public static OqtaneSiteOptionsBuilder WithSiteAuthentication(this OqtaneSiteOptionsBuilder builder) Parameters builder OqtaneSiteOptionsBuilder Returns OqtaneSiteOptionsBuilder"
- },
- "api/Oqtane.Extensions.OqtaneSiteIdentityBuilderExtensions.html": {
- "href": "api/Oqtane.Extensions.OqtaneSiteIdentityBuilderExtensions.html",
- "title": "Class OqtaneSiteIdentityBuilderExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class OqtaneSiteIdentityBuilderExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class OqtaneSiteIdentityBuilderExtensions Inheritance object OqtaneSiteIdentityBuilderExtensions Methods WithSiteIdentity(OqtaneSiteOptionsBuilder) public static OqtaneSiteOptionsBuilder WithSiteIdentity(this OqtaneSiteOptionsBuilder builder) Parameters builder OqtaneSiteOptionsBuilder Returns OqtaneSiteOptionsBuilder"
- },
- "api/Oqtane.Extensions.PermissionExtension.html": {
- "href": "api/Oqtane.Extensions.PermissionExtension.html",
- "title": "Class PermissionExtension | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class PermissionExtension Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class PermissionExtension Inheritance object PermissionExtension Methods EncodePermissions(IEnumerable) public static string EncodePermissions(this IEnumerable permissions) Parameters permissions IEnumerable Returns string"
- },
- "api/Oqtane.Extensions.QueryableExtensions.html": {
- "href": "api/Oqtane.Extensions.QueryableExtensions.html",
- "title": "Class QueryableExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class QueryableExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class QueryableExtensions Inheritance object QueryableExtensions Methods FilterByItems(IQueryable, IEnumerable, Expression>, bool) public static IQueryable FilterByItems(this IQueryable query, IEnumerable items, Expression> filterPattern, bool isOr) Parameters query IQueryable items IEnumerable filterPattern Expression> isOr bool Returns IQueryable Type Parameters T TItem"
- },
- "api/Oqtane.Extensions.StringExtensions.html": {
- "href": "api/Oqtane.Extensions.StringExtensions.html",
- "title": "Class StringExtensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class StringExtensions Namespace Oqtane.Extensions Assembly Oqtane.Server.dll public static class StringExtensions Inheritance object StringExtensions Methods ReplaceMultiple(string, string[], string) public static string ReplaceMultiple(this string s, string[] oldValues, string newValue) Parameters s string oldValues string[] newValue string Returns string StartWithAnyOf(string, IEnumerable) public static bool StartWithAnyOf(this string s, IEnumerable list) Parameters s string list IEnumerable Returns bool"
- },
- "api/Oqtane.Extensions.html": {
- "href": "api/Oqtane.Extensions.html",
- "title": "Namespace Oqtane.Extensions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Namespace Oqtane.Extensions TODO: Please document what this namespace is for. Classes ApplicationBuilderExtensions CacheExtensions ClaimsPrincipalExtensions DbContextOptionsBuilderExtensions DictionaryExtensions HttpContextExtensions MimeUtilities OqtaneSiteAuthenticationBuilderExtensions OqtaneSiteIdentityBuilderExtensions PermissionExtension QueryableExtensions StringExtensions"
- },
- "api/Oqtane.Head.html": {
- "href": "api/Oqtane.Head.html",
- "title": "Class Head | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class Head Namespace Oqtane Assembly Oqtane.Client.dll public class Head : ComponentBase Inheritance object ComponentBase Head Methods BuildRenderTree(RenderTreeBuilder) Renders the component to the supplied RenderTreeBuilder. protected override void BuildRenderTree(RenderTreeBuilder __builder) Parameters __builder RenderTreeBuilder Dispose() public void Dispose() OnInitialized() Method invoked when the component is ready to start, having received its initial parameters from its parent in the render tree. protected override void OnInitialized()"
- },
- "api/Oqtane.IconResources.html": {
- "href": "api/Oqtane.IconResources.html",
- "title": "Class IconResources | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class IconResources Namespace Oqtane Assembly Oqtane.Client.dll Dummy class used to collect shared resource strings for this application public class IconResources Inheritance object IconResources Remarks This class is mostly used with IStringLocalizer and IHtmlLocalizer interfaces. The class must reside at the project root."
- },
- "api/Oqtane.Infrastructure.AliasAccessor.html": {
- "href": "api/Oqtane.Infrastructure.AliasAccessor.html",
- "title": "Class AliasAccessor | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class AliasAccessor Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class AliasAccessor : IAliasAccessor Inheritance object AliasAccessor Implements IAliasAccessor Constructors AliasAccessor(IHttpContextAccessor) public AliasAccessor(IHttpContextAccessor httpContextAccessor) Parameters httpContextAccessor IHttpContextAccessor Properties Alias public Alias Alias { get; } Property Value Alias"
- },
- "api/Oqtane.Infrastructure.ConfigManager.html": {
- "href": "api/Oqtane.Infrastructure.ConfigManager.html",
- "title": "Class ConfigManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ConfigManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class ConfigManager : IConfigManager Inheritance object ConfigManager Implements IConfigManager Constructors ConfigManager(IConfigurationRoot) public ConfigManager(IConfigurationRoot config) Parameters config IConfigurationRoot Methods AddOrUpdateSetting(string, string, T, bool) public void AddOrUpdateSetting(string file, string key, T value, bool reload) Parameters file string key string value T reload bool Type Parameters T AddOrUpdateSetting(string, T, bool) public void AddOrUpdateSetting(string key, T value, bool reload) Parameters key string value T reload bool Type Parameters T GetConnectionString() public string GetConnectionString() Returns string GetConnectionString(string) public string GetConnectionString(string name) Parameters name string Returns string GetInstallationId() public string GetInstallationId() Returns string GetSection(string) public IConfigurationSection GetSection(string key) Parameters key string Returns IConfigurationSection GetSetting(string, string, T) public T GetSetting(string sectionKey, string settingKey, T defaultValue) Parameters sectionKey string settingKey string defaultValue T Returns T Type Parameters T GetSetting(string, T) public T GetSetting(string sectionKey, T defaultValue) Parameters sectionKey string defaultValue T Returns T Type Parameters T GetSettings(string) public Dictionary GetSettings(string sectionKey) Parameters sectionKey string Returns Dictionary IsInstalled() public bool IsInstalled() Returns bool Reload() public void Reload() RemoveSetting(string, bool) public void RemoveSetting(string key, bool reload) Parameters key string reload bool RemoveSetting(string, string, bool) public void RemoveSetting(string file, string key, bool reload) Parameters file string key string reload bool"
- },
- "api/Oqtane.Infrastructure.DatabaseManager.html": {
- "href": "api/Oqtane.Infrastructure.DatabaseManager.html",
- "title": "Class DatabaseManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class DatabaseManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class DatabaseManager : IDatabaseManager Inheritance object DatabaseManager Implements IDatabaseManager Constructors DatabaseManager(IConfigManager, IServiceScopeFactory, IMemoryCache, IConfigManager, ILogger) public DatabaseManager(IConfigManager config, IServiceScopeFactory serviceScopeFactory, IMemoryCache cache, IConfigManager configManager, ILogger filelogger) Parameters config IConfigManager serviceScopeFactory IServiceScopeFactory cache IMemoryCache configManager IConfigManager filelogger ILogger Methods AddEFMigrationsHistory(ISqlRepository, string, string, string, bool) public void AddEFMigrationsHistory(ISqlRepository sql, string connectionString, string databaseType, string version, bool isMaster) Parameters sql ISqlRepository connectionString string databaseType string version string isMaster bool Install() public Installation Install() Returns Installation Install(InstallConfig) public Installation Install(InstallConfig install) Parameters install InstallConfig Returns Installation IsInstalled() public Installation IsInstalled() Returns Installation MigrateConnectionString(InstallationContext, Tenant) public string MigrateConnectionString(InstallationContext db, Tenant tenant) Parameters db InstallationContext tenant Tenant Returns string UpdateConnectionString(string) public void UpdateConnectionString(string connectionString) Parameters connectionString string UpdateDatabaseType(string) public void UpdateDatabaseType(string databaseType) Parameters databaseType string"
- },
- "api/Oqtane.Infrastructure.EventDistributorHostedService.html": {
- "href": "api/Oqtane.Infrastructure.EventDistributorHostedService.html",
- "title": "Class EventDistributorHostedService | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class EventDistributorHostedService Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class EventDistributorHostedService Inheritance object EventDistributorHostedService Constructors EventDistributorHostedService(IServiceProvider, ISyncManager, IMemoryCache, ILogger) public EventDistributorHostedService(IServiceProvider serviceProvider, ISyncManager syncManager, IMemoryCache cache, ILogger filelogger) Parameters serviceProvider IServiceProvider syncManager ISyncManager cache IMemoryCache filelogger ILogger Methods Dispose() Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. public void Dispose() StartAsync(CancellationToken) Triggered when the application host is ready to start the service. public Task StartAsync(CancellationToken cancellationToken) Parameters cancellationToken CancellationToken Indicates that the start process has been aborted. Returns Task A Task that represents the asynchronous Start operation. StopAsync(CancellationToken) Triggered when the application host is performing a graceful shutdown. public Task StopAsync(CancellationToken cancellationToken) Parameters cancellationToken CancellationToken Indicates that the shutdown process should no longer be graceful. Returns Task A Task that represents the asynchronous Stop operation."
- },
- "api/Oqtane.Infrastructure.EventSubscribers.CacheInvalidationEventSubscriber.html": {
- "href": "api/Oqtane.Infrastructure.EventSubscribers.CacheInvalidationEventSubscriber.html",
- "title": "Class CacheInvalidationEventSubscriber | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class CacheInvalidationEventSubscriber Namespace Oqtane.Infrastructure.EventSubscribers Assembly Oqtane.Server.dll public class CacheInvalidationEventSubscriber : IEventSubscriber Inheritance object CacheInvalidationEventSubscriber Implements IEventSubscriber Constructors CacheInvalidationEventSubscriber(IMemoryCache) public CacheInvalidationEventSubscriber(IMemoryCache cache) Parameters cache IMemoryCache Methods EntityChanged(SyncEvent) public void EntityChanged(SyncEvent syncEvent) Parameters syncEvent SyncEvent"
- },
- "api/Oqtane.Infrastructure.EventSubscribers.html": {
- "href": "api/Oqtane.Infrastructure.EventSubscribers.html",
- "title": "Namespace Oqtane.Infrastructure.EventSubscribers | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Namespace Oqtane.Infrastructure.EventSubscribers Classes CacheInvalidationEventSubscriber"
- },
- "api/Oqtane.Infrastructure.ExampleSiteMigration.html": {
- "href": "api/Oqtane.Infrastructure.ExampleSiteMigration.html",
- "title": "Class ExampleSiteMigration | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ExampleSiteMigration Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll [SiteMigration(\"localhost:44357\", \"01.00.00\")] public class ExampleSiteMigration : ISiteMigration Inheritance object ExampleSiteMigration Implements ISiteMigration"
- },
- "api/Oqtane.Infrastructure.FileLogger.html": {
- "href": "api/Oqtane.Infrastructure.FileLogger.html",
- "title": "Class FileLogger | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class FileLogger Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class FileLogger Inheritance object FileLogger Constructors FileLogger(FileLoggerProvider, IWebHostEnvironment, IConfigManager) public FileLogger(FileLoggerProvider FileLoggerProvider, IWebHostEnvironment environment, IConfigManager configManager) Parameters FileLoggerProvider FileLoggerProvider environment IWebHostEnvironment configManager IConfigManager Fields _FileLoggerProvider protected readonly FileLoggerProvider _FileLoggerProvider Field Value FileLoggerProvider Methods BeginScope(TState) Begins a logical operation scope. public IDisposable BeginScope(TState state) Parameters state TState The identifier for the scope. Returns IDisposable An IDisposable that ends the logical operation scope on dispose. Type Parameters TState The type of the state to begin scope for. IsEnabled(LogLevel) Checks if the given logLevel is enabled. public bool IsEnabled(LogLevel logLevel) Parameters logLevel LogLevel Level to be checked. Returns bool true if enabled. Log(LogLevel, EventId, TState, Exception, Func) Writes a log entry. public void Log(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func formatter) Parameters logLevel LogLevel Entry will be written on this level. eventId EventId Id of the event. state TState The entry to be written. Can be also an object. exception Exception The exception related to this entry. formatter Func Function to create a string message of the state and exception. Type Parameters TState The type of the object to be written."
- },
- "api/Oqtane.Infrastructure.FileLoggerProvider.html": {
- "href": "api/Oqtane.Infrastructure.FileLoggerProvider.html",
- "title": "Class FileLoggerProvider | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class FileLoggerProvider Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll FileLogger should only be used in scenarios where a database is not available or tenant/site cannot be determined (ie. during startup) [ProviderAlias(\"FileLogger\")] public class FileLoggerProvider Inheritance object FileLoggerProvider Constructors FileLoggerProvider(IWebHostEnvironment, IConfigManager) public FileLoggerProvider(IWebHostEnvironment environment, IConfigManager configManager) Parameters environment IWebHostEnvironment configManager IConfigManager Methods CreateLogger(string) Creates a new ILogger instance. public ILogger CreateLogger(string categoryName) Parameters categoryName string The category name for messages produced by the logger. Returns ILogger The instance of ILogger that was created. Dispose() Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. public void Dispose()"
- },
- "api/Oqtane.Infrastructure.HostedServiceBase.html": {
- "href": "api/Oqtane.Infrastructure.HostedServiceBase.html",
- "title": "Class HostedServiceBase | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class HostedServiceBase Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public abstract class HostedServiceBase Inheritance object HostedServiceBase Derived NotificationJob PurgeJob SearchIndexJob Constructors HostedServiceBase(IServiceScopeFactory) public HostedServiceBase(IServiceScopeFactory serviceScopeFactory) Parameters serviceScopeFactory IServiceScopeFactory Properties EndDate public DateTime? EndDate { get; set; } Property Value DateTime? Frequency public string Frequency { get; set; } Property Value string Interval public int Interval { get; set; } Property Value int IsEnabled public bool IsEnabled { get; set; } Property Value bool Name public string Name { get; set; } Property Value string RetentionHistory public int RetentionHistory { get; set; } Property Value int StartDate public DateTime? StartDate { get; set; } Property Value DateTime? Methods Dispose() Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. public void Dispose() ExecuteAsync(CancellationToken) protected Task ExecuteAsync(CancellationToken stoppingToken) Parameters stoppingToken CancellationToken Returns Task ExecuteJob(IServiceProvider) public virtual string ExecuteJob(IServiceProvider provider) Parameters provider IServiceProvider Returns string ExecuteJobAsync(IServiceProvider) public virtual Task ExecuteJobAsync(IServiceProvider provider) Parameters provider IServiceProvider Returns Task StartAsync(CancellationToken) Triggered when the application host is ready to start the service. public Task StartAsync(CancellationToken cancellationToken) Parameters cancellationToken CancellationToken Indicates that the start process has been aborted. Returns Task A Task that represents the asynchronous Start operation. StopAsync(CancellationToken) Triggered when the application host is performing a graceful shutdown. public Task StopAsync(CancellationToken cancellationToken) Parameters cancellationToken CancellationToken Indicates that the shutdown process should no longer be graceful. Returns Task A Task that represents the asynchronous Stop operation."
- },
- "api/Oqtane.Infrastructure.IAliasAccessor.html": {
- "href": "api/Oqtane.Infrastructure.IAliasAccessor.html",
- "title": "Interface IAliasAccessor | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IAliasAccessor Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IAliasAccessor Properties Alias Alias Alias { get; } Property Value Alias"
- },
- "api/Oqtane.Infrastructure.IConfigManager.html": {
- "href": "api/Oqtane.Infrastructure.IConfigManager.html",
- "title": "Interface IConfigManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IConfigManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IConfigManager Methods AddOrUpdateSetting(string, string, T, bool) void AddOrUpdateSetting(string file, string key, T value, bool reload) Parameters file string key string value T reload bool Type Parameters T AddOrUpdateSetting(string, T, bool) void AddOrUpdateSetting(string key, T value, bool reload) Parameters key string value T reload bool Type Parameters T GetConnectionString() string GetConnectionString() Returns string GetConnectionString(string) string GetConnectionString(string name) Parameters name string Returns string GetInstallationId() string GetInstallationId() Returns string GetSection(string) IConfigurationSection GetSection(string sectionKey) Parameters sectionKey string Returns IConfigurationSection GetSetting(string, string, T) T GetSetting(string sectionKey, string settingKey, T defaultValue) Parameters sectionKey string settingKey string defaultValue T Returns T Type Parameters T GetSetting(string, T) T GetSetting(string settingKey, T defaultValue) Parameters settingKey string defaultValue T Returns T Type Parameters T GetSettings(string) Dictionary GetSettings(string sectionKey) Parameters sectionKey string Returns Dictionary IsInstalled() bool IsInstalled() Returns bool Reload() void Reload() RemoveSetting(string, bool) void RemoveSetting(string key, bool reload) Parameters key string reload bool RemoveSetting(string, string, bool) void RemoveSetting(string file, string key, bool reload) Parameters file string key string reload bool"
- },
- "api/Oqtane.Infrastructure.IDatabaseManager.html": {
- "href": "api/Oqtane.Infrastructure.IDatabaseManager.html",
- "title": "Interface IDatabaseManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IDatabaseManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IDatabaseManager Methods Install() Installation Install() Returns Installation Install(InstallConfig) Installation Install(InstallConfig install) Parameters install InstallConfig Returns Installation IsInstalled() Installation IsInstalled() Returns Installation"
- },
- "api/Oqtane.Infrastructure.IEventSubscriber.html": {
- "href": "api/Oqtane.Infrastructure.IEventSubscriber.html",
- "title": "Interface IEventSubscriber | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IEventSubscriber Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IEventSubscriber Methods EntityChanged(SyncEvent) void EntityChanged(SyncEvent syncEvent) Parameters syncEvent SyncEvent"
- },
- "api/Oqtane.Infrastructure.IHostResources.html": {
- "href": "api/Oqtane.Infrastructure.IHostResources.html",
- "title": "Interface IHostResources | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IHostResources Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IHostResources Properties Resources [Obsolete(\"IHostResources is deprecated. Use module or theme scoped Resources in conjunction with ResourceLevel.Site instead.\", false)] List Resources { get; } Property Value List"
- },
- "api/Oqtane.Infrastructure.IInstallable.html": {
- "href": "api/Oqtane.Infrastructure.IInstallable.html",
- "title": "Interface IInstallable | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IInstallable Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IInstallable Methods Install(Tenant, string) bool Install(Tenant tenant, string version) Parameters tenant Tenant version string Returns bool Uninstall(Tenant) bool Uninstall(Tenant tenant) Parameters tenant Tenant Returns bool"
- },
- "api/Oqtane.Infrastructure.IInstallationManager.html": {
- "href": "api/Oqtane.Infrastructure.IInstallationManager.html",
- "title": "Interface IInstallationManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IInstallationManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IInstallationManager Methods InstallPackages() void InstallPackages() RegisterAssemblies() int RegisterAssemblies() Returns int RestartApplication() void RestartApplication() UninstallPackage(string) bool UninstallPackage(string PackageName) Parameters PackageName string Returns bool UpgradeFramework() Task UpgradeFramework() Returns Task"
- },
- "api/Oqtane.Infrastructure.ILocalizationManager.html": {
- "href": "api/Oqtane.Infrastructure.ILocalizationManager.html",
- "title": "Interface ILocalizationManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ILocalizationManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ILocalizationManager Methods GetDefaultCulture() string GetDefaultCulture() Returns string GetInstalledCultures() string[] GetInstalledCultures() Returns string[] GetSupportedCultures() string[] GetSupportedCultures() Returns string[]"
- },
- "api/Oqtane.Infrastructure.ILogManager.html": {
- "href": "api/Oqtane.Infrastructure.ILogManager.html",
- "title": "Interface ILogManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ILogManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ILogManager Methods Log(Log) void Log(Log log) Parameters log Log Log(LogLevel, object, LogFunction, Exception, string, params object[]) void Log(LogLevel level, object @class, LogFunction function, Exception exception, string message, params object[] args) Parameters level LogLevel class object function LogFunction exception Exception message string args object[] Log(LogLevel, object, LogFunction, string, params object[]) void Log(LogLevel level, object @class, LogFunction function, string message, params object[] args) Parameters level LogLevel class object function LogFunction message string args object[] Log(int, LogLevel, object, LogFunction, Exception, string, params object[]) void Log(int siteId, LogLevel level, object @class, LogFunction function, Exception exception, string message, params object[] args) Parameters siteId int level LogLevel class object function LogFunction exception Exception message string args object[] Log(int, LogLevel, object, LogFunction, string, params object[]) void Log(int siteId, LogLevel level, object @class, LogFunction function, string message, params object[] args) Parameters siteId int level LogLevel class object function LogFunction message string args object[]"
- },
- "api/Oqtane.Infrastructure.IServerStartup.html": {
- "href": "api/Oqtane.Infrastructure.IServerStartup.html",
- "title": "Interface IServerStartup | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IServerStartup Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IServerStartup Methods Configure(IApplicationBuilder, IWebHostEnvironment) void Configure(IApplicationBuilder app, IWebHostEnvironment env) Parameters app IApplicationBuilder env IWebHostEnvironment ConfigureMvc(IMvcBuilder) void ConfigureMvc(IMvcBuilder mvcBuilder) Parameters mvcBuilder IMvcBuilder ConfigureServices(IServiceCollection) void ConfigureServices(IServiceCollection services) Parameters services IServiceCollection"
- },
- "api/Oqtane.Infrastructure.IServerStateManager.html": {
- "href": "api/Oqtane.Infrastructure.IServerStateManager.html",
- "title": "Interface IServerStateManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IServerStateManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IServerStateManager Methods GetServerState(string) ServerState GetServerState(string siteKey) Parameters siteKey string Returns ServerState"
- },
- "api/Oqtane.Infrastructure.ISiteMigration.html": {
- "href": "api/Oqtane.Infrastructure.ISiteMigration.html",
- "title": "Interface ISiteMigration | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ISiteMigration Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ISiteMigration Methods Down(Site, Alias) void Down(Site site, Alias alias) Parameters site Site alias Alias Up(Site, Alias) void Up(Site site, Alias alias) Parameters site Site alias Alias"
- },
- "api/Oqtane.Infrastructure.ISiteNamedOptions-1.html": {
- "href": "api/Oqtane.Infrastructure.ISiteNamedOptions-1.html",
- "title": "Interface ISiteNamedOptions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ISiteNamedOptions Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ISiteNamedOptions where TOptions : class, new() Type Parameters TOptions Methods Configure(string, TOptions, Alias, Dictionary) void Configure(string name, TOptions options, Alias alias, Dictionary sitesettings) Parameters name string options TOptions alias Alias sitesettings Dictionary"
- },
- "api/Oqtane.Infrastructure.ISiteOptions-1.html": {
- "href": "api/Oqtane.Infrastructure.ISiteOptions-1.html",
- "title": "Interface ISiteOptions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ISiteOptions Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ISiteOptions where TOptions : class, new() Type Parameters TOptions Methods Configure(TOptions, Alias, Dictionary) void Configure(TOptions options, Alias alias, Dictionary sitesettings) Parameters options TOptions alias Alias sitesettings Dictionary"
- },
- "api/Oqtane.Infrastructure.ISiteTemplate.html": {
- "href": "api/Oqtane.Infrastructure.ISiteTemplate.html",
- "title": "Interface ISiteTemplate | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ISiteTemplate Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ISiteTemplate Properties Name string Name { get; } Property Value string Methods CreateSite(Site) List CreateSite(Site site) Parameters site Site Returns List"
- },
- "api/Oqtane.Infrastructure.ISyncManager.html": {
- "href": "api/Oqtane.Infrastructure.ISyncManager.html",
- "title": "Interface ISyncManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ISyncManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ISyncManager Methods AddSyncEvent(Alias, string, int, string) void AddSyncEvent(Alias alias, string entityName, int entityId, string action) Parameters alias Alias entityName string entityId int action string AddSyncEvent(int, int, string, int, string) void AddSyncEvent(int tenantId, int siteId, string entityName, int entityId, string action) Parameters tenantId int siteId int entityName string entityId int action string AddSyncEvent(int, string, int, string) [Obsolete(\"AddSyncEvent(int tenantId, string entityName, int entityId, string action) is deprecated. Use AddSyncEvent(Alias alias, string entityName, int entityId, string action) instead.\", false)] void AddSyncEvent(int tenantId, string entityName, int entityId, string action) Parameters tenantId int entityName string entityId int action string GetSyncEvents(int, DateTime) List GetSyncEvents(int tenantId, DateTime lastSyncDate) Parameters tenantId int lastSyncDate DateTime Returns List Events EntityChanged event EventHandler EntityChanged Event Type EventHandler"
- },
- "api/Oqtane.Infrastructure.ITenantManager.html": {
- "href": "api/Oqtane.Infrastructure.ITenantManager.html",
- "title": "Interface ITenantManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ITenantManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface ITenantManager Methods GetAlias() Alias GetAlias() Returns Alias GetTenant() Tenant GetTenant() Returns Tenant SetAlias(Alias) void SetAlias(Alias alias) Parameters alias Alias SetAlias(int, int) void SetAlias(int tenantId, int siteId) Parameters tenantId int siteId int SetTenant(int) void SetTenant(int tenantId) Parameters tenantId int"
- },
- "api/Oqtane.Infrastructure.IUpgradeManager.html": {
- "href": "api/Oqtane.Infrastructure.IUpgradeManager.html",
- "title": "Interface IUpgradeManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface IUpgradeManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public interface IUpgradeManager Methods Upgrade(Tenant, string) void Upgrade(Tenant tenant, string version) Parameters tenant Tenant version string"
- },
- "api/Oqtane.Infrastructure.InstallationManager.html": {
- "href": "api/Oqtane.Infrastructure.InstallationManager.html",
- "title": "Class InstallationManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class InstallationManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class InstallationManager : IInstallationManager Inheritance object InstallationManager Implements IInstallationManager Constructors InstallationManager(IHostApplicationLifetime, IWebHostEnvironment, ILogger) public InstallationManager(IHostApplicationLifetime hostApplicationLifetime, IWebHostEnvironment environment, ILogger filelogger) Parameters hostApplicationLifetime IHostApplicationLifetime environment IWebHostEnvironment filelogger ILogger Methods InstallPackages() public void InstallPackages() InstallPackages(string, string) public static string InstallPackages(string webRootPath, string contentRootPath) Parameters webRootPath string contentRootPath string Returns string RegisterAssemblies() public int RegisterAssemblies() Returns int RestartApplication() public void RestartApplication() UninstallPackage(string) public bool UninstallPackage(string PackageName) Parameters PackageName string Returns bool UpgradeFramework() public Task UpgradeFramework() Returns Task"
- },
- "api/Oqtane.Infrastructure.Interfaces.ITokenReplace.html": {
- "href": "api/Oqtane.Infrastructure.Interfaces.ITokenReplace.html",
- "title": "Interface ITokenReplace | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Interface ITokenReplace Namespace Oqtane.Infrastructure.Interfaces Assembly Oqtane.Server.dll public interface ITokenReplace Methods AddSource(ITokenSource) void AddSource(ITokenSource source) Parameters source ITokenSource AddSource(IDictionary) void AddSource(IDictionary source) Parameters source IDictionary AddSource(Func>) void AddSource(Func> sourceFunc) Parameters sourceFunc Func> AddSource(string, ITokenSource) void AddSource(string name, ITokenSource source) Parameters name string source ITokenSource AddSource(string, IDictionary) void AddSource(string name, IDictionary source) Parameters name string source IDictionary AddSource(string, Func>) void AddSource(string name, Func> sourceFunc) Parameters name string sourceFunc Func> AddSource(string, object) void AddSource(string key, object value) Parameters key string value object AddSource(string, string, object) void AddSource(string name, string key, object value) Parameters name string key string value object ReplaceTokens(string) string ReplaceTokens(string source) Parameters source string Returns string"
- },
- "api/Oqtane.Infrastructure.Interfaces.html": {
- "href": "api/Oqtane.Infrastructure.Interfaces.html",
- "title": "Namespace Oqtane.Infrastructure.Interfaces | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Namespace Oqtane.Infrastructure.Interfaces Interfaces ITokenReplace"
- },
- "api/Oqtane.Infrastructure.LocalizationManager.html": {
- "href": "api/Oqtane.Infrastructure.LocalizationManager.html",
- "title": "Class LocalizationManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class LocalizationManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class LocalizationManager : ILocalizationManager Inheritance object LocalizationManager Implements ILocalizationManager Constructors LocalizationManager(IOptions) public LocalizationManager(IOptions localizationOptions) Parameters localizationOptions IOptions Methods GetDefaultCulture() public string GetDefaultCulture() Returns string GetInstalledCultures() public string[] GetInstalledCultures() Returns string[] GetSupportedCultures() public string[] GetSupportedCultures() Returns string[]"
- },
- "api/Oqtane.Infrastructure.LocalizationOptions.html": {
- "href": "api/Oqtane.Infrastructure.LocalizationOptions.html",
- "title": "Class LocalizationOptions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class LocalizationOptions Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class LocalizationOptions Inheritance object LocalizationOptions Properties DefaultCulture public string DefaultCulture { get; set; } Property Value string"
- },
- "api/Oqtane.Infrastructure.LogManager.html": {
- "href": "api/Oqtane.Infrastructure.LogManager.html",
- "title": "Class LogManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class LogManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class LogManager : ILogManager Inheritance object LogManager Implements ILogManager Constructors LogManager(ILogRepository, ITenantManager, IConfigManager, IUserPermissions, IHttpContextAccessor, IUserRoleRepository, INotificationRepository, ILogger) public LogManager(ILogRepository logs, ITenantManager tenantManager, IConfigManager config, IUserPermissions userPermissions, IHttpContextAccessor accessor, IUserRoleRepository userRoles, INotificationRepository notifications, ILogger filelogger) Parameters logs ILogRepository tenantManager ITenantManager config IConfigManager userPermissions IUserPermissions accessor IHttpContextAccessor userRoles IUserRoleRepository notifications INotificationRepository filelogger ILogger Methods Log(Log) public void Log(Log log) Parameters log Log Log(LogLevel, object, LogFunction, Exception, string, params object[]) public void Log(LogLevel level, object @class, LogFunction function, Exception exception, string message, params object[] args) Parameters level LogLevel class object function LogFunction exception Exception message string args object[] Log(LogLevel, object, LogFunction, string, params object[]) public void Log(LogLevel level, object @class, LogFunction function, string message, params object[] args) Parameters level LogLevel class object function LogFunction message string args object[] Log(int, LogLevel, object, LogFunction, Exception, string, params object[]) public void Log(int siteId, LogLevel level, object @class, LogFunction function, Exception exception, string message, params object[] args) Parameters siteId int level LogLevel class object function LogFunction exception Exception message string args object[] Log(int, LogLevel, object, LogFunction, string, params object[]) public void Log(int siteId, LogLevel level, object @class, LogFunction function, string message, params object[] args) Parameters siteId int level LogLevel class object function LogFunction message string args object[]"
- },
- "api/Oqtane.Infrastructure.NotificationJob.html": {
- "href": "api/Oqtane.Infrastructure.NotificationJob.html",
- "title": "Class NotificationJob | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class NotificationJob Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class NotificationJob : HostedServiceBase Inheritance object HostedServiceBase NotificationJob Inherited Members HostedServiceBase.Name HostedServiceBase.Frequency HostedServiceBase.Interval HostedServiceBase.StartDate HostedServiceBase.EndDate HostedServiceBase.RetentionHistory HostedServiceBase.IsEnabled HostedServiceBase.ExecuteJobAsync(IServiceProvider) HostedServiceBase.ExecuteAsync(CancellationToken) HostedServiceBase.StartAsync(CancellationToken) HostedServiceBase.StopAsync(CancellationToken) HostedServiceBase.Dispose() Constructors NotificationJob(IServiceScopeFactory) public NotificationJob(IServiceScopeFactory serviceScopeFactory) Parameters serviceScopeFactory IServiceScopeFactory Methods ExecuteJob(IServiceProvider) public override string ExecuteJob(IServiceProvider provider) Parameters provider IServiceProvider Returns string"
- },
- "api/Oqtane.Infrastructure.PurgeJob.html": {
- "href": "api/Oqtane.Infrastructure.PurgeJob.html",
- "title": "Class PurgeJob | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class PurgeJob Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class PurgeJob : HostedServiceBase Inheritance object HostedServiceBase PurgeJob Inherited Members HostedServiceBase.Name HostedServiceBase.Frequency HostedServiceBase.Interval HostedServiceBase.StartDate HostedServiceBase.EndDate HostedServiceBase.RetentionHistory HostedServiceBase.IsEnabled HostedServiceBase.ExecuteJobAsync(IServiceProvider) HostedServiceBase.ExecuteAsync(CancellationToken) HostedServiceBase.StartAsync(CancellationToken) HostedServiceBase.StopAsync(CancellationToken) HostedServiceBase.Dispose() Constructors PurgeJob(IServiceScopeFactory) public PurgeJob(IServiceScopeFactory serviceScopeFactory) Parameters serviceScopeFactory IServiceScopeFactory Methods ExecuteJob(IServiceProvider) public override string ExecuteJob(IServiceProvider provider) Parameters provider IServiceProvider Returns string"
- },
- "api/Oqtane.Infrastructure.SearchIndexJob.html": {
- "href": "api/Oqtane.Infrastructure.SearchIndexJob.html",
- "title": "Class SearchIndexJob | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SearchIndexJob Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class SearchIndexJob : HostedServiceBase Inheritance object HostedServiceBase SearchIndexJob Inherited Members HostedServiceBase.Name HostedServiceBase.Frequency HostedServiceBase.Interval HostedServiceBase.StartDate HostedServiceBase.EndDate HostedServiceBase.RetentionHistory HostedServiceBase.IsEnabled HostedServiceBase.ExecuteJob(IServiceProvider) HostedServiceBase.ExecuteAsync(CancellationToken) HostedServiceBase.StartAsync(CancellationToken) HostedServiceBase.StopAsync(CancellationToken) HostedServiceBase.Dispose() Constructors SearchIndexJob(IServiceScopeFactory) public SearchIndexJob(IServiceScopeFactory serviceScopeFactory) Parameters serviceScopeFactory IServiceScopeFactory Methods ExecuteJobAsync(IServiceProvider) public override Task ExecuteJobAsync(IServiceProvider provider) Parameters provider IServiceProvider Returns Task"
- },
- "api/Oqtane.Infrastructure.ServerState.html": {
- "href": "api/Oqtane.Infrastructure.ServerState.html",
- "title": "Class ServerState | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ServerState Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class ServerState Inheritance object ServerState Properties Assemblies public List Assemblies { get; set; } Property Value List IsInitialized public bool IsInitialized { get; set; } Property Value bool SiteKey public string SiteKey { get; set; } Property Value string"
- },
- "api/Oqtane.Infrastructure.ServerStateManager.html": {
- "href": "api/Oqtane.Infrastructure.ServerStateManager.html",
- "title": "Class ServerStateManager | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class ServerStateManager Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class ServerStateManager : IServerStateManager Inheritance object ServerStateManager Implements IServerStateManager Constructors ServerStateManager() public ServerStateManager() Methods GetServerState(string) public ServerState GetServerState(string siteKey) Parameters siteKey string Returns ServerState"
- },
- "api/Oqtane.Infrastructure.SiteMigrationAttribute.html": {
- "href": "api/Oqtane.Infrastructure.SiteMigrationAttribute.html",
- "title": "Class SiteMigrationAttribute | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SiteMigrationAttribute Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll [AttributeUsage(AttributeTargets.Class)] public class SiteMigrationAttribute : Attribute Inheritance object Attribute SiteMigrationAttribute Constructors SiteMigrationAttribute(string, string) public SiteMigrationAttribute(string AliasName, string Version) Parameters AliasName string Version string Properties AliasName public virtual string AliasName { get; } Property Value string Version public virtual string Version { get; } Property Value string"
- },
- "api/Oqtane.Infrastructure.SiteNamedOptions-1.html": {
- "href": "api/Oqtane.Infrastructure.SiteNamedOptions-1.html",
- "title": "Class SiteNamedOptions | Oqtane Docs - APIs and more for the Modular Blazor Application Framework",
- "keywords": "Class SiteNamedOptions Namespace Oqtane.Infrastructure Assembly Oqtane.Server.dll public class SiteNamedOptions : ISiteNamedOptions where TOptions : class, new() Type Parameters TOptions Inheritance object SiteNamedOptions Implements ISiteNamedOptions Constructors SiteNamedOptions(string, Action>) public SiteNamedOptions(string name, Action> configureOptions) Parameters name string configureOptions Action> Properties Name public string Name { get; } Property Value string Methods Configure(string, TOptions, Alias, Dictionary) public void Configure(string name, TOptions options, Alias alias, Dictionary