Käyttäjän "niall" toiminnot

I closed the features of CmsKit, system crashed. I must delete all databases and migrate again.

Is there a way to reopen these features about CmsKit? Or not allowing users to close these?

CmsKitService

[18:16:51 INF] Route matched with {area = "cms-kit", action = "FindBySlug", controller = "PagesPublic"}. Executing controller action with signature System.Threading.Tasks.Task`1[Volo.CmsKit.Contents.PageDto] FindBySlugAsync(System.String) on controller Volo.CmsKit.Public.Pages.PagesPublicController (Volo.CmsKit.Public.HttpApi).
[18:16:51 WRN] ---------- RemoteServiceErrorInfo ----------
{
  "code": "Volo.Feature:010003",
  "message": "Required features are not enabled. At least one of these features must be enabled: CmsKit.PageEnable",
  "details": null,
  "data": {
    "FeatureNames": "CmsKit.PageEnable"
  },
  "validationErrors": null
}

[18:16:51 WRN] Exception of type 'Volo.Abp.Authorization.AbpAuthorizationException' was thrown.

Web

[18:16:50 INF] Skipping the execution of current filter as its not the most effective filter implementing the policy Microsoft.AspNetCore.Mvc.ViewFeatures.IAntiforgeryPolicy
[18:16:50 INF] Executing handler method XTC.BaaSo.Web.Pages.IndexModel.OnGet - ModelState is Valid
[18:16:50 INF] Executed handler method OnGet, returned result Microsoft.AspNetCore.Mvc.RazorPages.PageResult.
[18:16:50 ERR] An exception was thrown while deserializing the token.
Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted.
 ---> System.Security.Cryptography.CryptographicException: The key {02049ad8-7d73-44b0-8795-e7b42d02cee1} was not found in the key ring. For more information go to http://aka.ms/dataprotectionwarning
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status)
   at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken)
   at Microsoft.AspNetCore.Antiforgery.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext)
[18:16:50 INF] Bundling __bundles/LeptonX.Global.9325FB768F9C0093DC4664395D730921.css (17 files)
[18:16:50 INF]   > Minified /libs/abp/core/abp.css (1331 bytes -> 868 bytes)
[18:16:50 INF]   > Minified /libs/@fortawesome/fontawesome-free/css/all.css (73577 bytes -> 53572 bytes)
[18:16:50 INF]   > Minified /libs/@fortawesome/fontawesome-free/css/v4-shims.css (41312 bytes -> 33344 bytes)
[18:16:50 INF]   > Minified /libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.css (54850 bytes -> 43189 bytes)
[18:16:50 INF]   > Minified /libs/datatables.net-bs5/css/dataTables.bootstrap5.css (13491 bytes -> 11874 bytes)
[18:16:50 INF]   > Minified /libs/bootstrap-daterangepicker/daterangepicker.css (8069 bytes -> 6378 bytes)
[18:16:50 INF]   > Minified /libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-styles.css (266 bytes -> 214 bytes)
[18:16:50 INF]   > Minified /Themes/LeptonX/Global/side-menu/libs/bootstrap-icons/font/bootstrap-icons.css (74827 bytes -> 57860 bytes)
[18:16:50 INF]   > Minified /Themes/LeptonX/Global/side-menu/css/js-bundle.css (34690 bytes -> 30518 bytes)
[18:16:50 INF]   > Minified /Themes/LeptonX/Global/side-menu/css/layout-bundle.css (251958 bytes -> 247161 bytes)
[18:16:50 INF]   > Minified /Themes/LeptonX/Global/side-menu/css/abp-bundle.css (3870 bytes -> 3025 bytes)
[18:16:50 INF]   > Minified /Themes/LeptonX/Global/side-menu/css/font-bundle.css (117 bytes -> 116 bytes)
[18:16:50 INF]   > Minified /global-styles.css (348 bytes -> 279 bytes)
[18:16:50 INF] Bundled __bundles/LeptonX.Global.9325FB768F9C0093DC4664395D730921.css (542070 bytes)
[18:16:50 INF] Start processing HTTP request GET https://localhost:44380/api/abp/application-configuration?IncludeLocalizationResources=False&api-version=1.0
[18:16:50 INF] Sending HTTP request GET https://localhost:44380/api/abp/application-configuration?IncludeLocalizationResources=False&api-version=1.0
[18:16:50 INF] Received HTTP response headers after 64.8629ms - 200
[18:16:50 INF] End processing HTTP request after 65.0538ms - 200
[18:16:50 INF] Start processing HTTP request GET https://localhost:44380/api/abp/application-localization?CultureName=en&OnlyDynamics=True&api-version=1.0
[18:16:50 INF] Sending HTTP request GET https://localhost:44380/api/abp/application-localization?CultureName=en&OnlyDynamics=True&api-version=1.0
[18:16:50 INF] Received HTTP response headers after 42.4769ms - 200
[18:16:50 INF] End processing HTTP request after 42.6202ms - 200
[18:16:50 INF] Start processing HTTP request GET https://localhost:44380/api/cms-kit-public/menu-items?api-version=1.0
[18:16:50 INF] Sending HTTP request GET https://localhost:44380/api/cms-kit-public/menu-items?api-version=1.0
[18:16:51 INF] Received HTTP response headers after 897.3606ms - 403
[18:16:51 INF] End processing HTTP request after 897.6537ms - 403
[18:16:51 INF] Executed page /Index in 1549.3604ms
[18:16:51 INF] Executed endpoint '/Index'
[18:16:51 ERR] An unhandled exception has occurred while executing the request.
Volo.Abp.Http.Client.AbpRemoteCallException: Forbidden
   at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.ThrowExceptionForResponseAsync(HttpResponseMessage response)
   at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync(ClientProxyRequestContext requestContext)
   at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](ClientProxyRequestContext requestContext)
   at Volo.Abp.Http.Client.ClientProxying.ClientProxyBase`1.RequestAsync[T](String methodName, ClientProxyRequestTypeValue arguments)
   at Volo.CmsKit.Public.Menus.ClientProxies.MenuItemPublicClientProxy.GetListAsync()
   at Volo.CmsKit.Public.Web.Menus.CmsKitPublicMenuContributor.ConfigureMainMenuAsync(MenuConfigurationContext context)
   at Volo.CmsKit.Public.Web.Menus.CmsKitPublicMenuContributor.ConfigureMenuAsync(MenuConfigurationContext context)
   at Volo.Abp.UI.Navigation.MenuManager.GetInternalAsync(String name)
   at Volo.Abp.UI.Navigation.MenuManager.GetAsync(String[] menuNames)
   at Volo.Abp.AspNetCore.Mvc.UI.Theme.LeptonX.Navigation.MenuViewModelProvider.GetMenuViewModelAsync()
   at Volo.Abp.AspNetCore.Mvc.UI.Theme.LeptonX.Themes.LeptonX.Components.SideMenu.MainMenu.MainMenuViewComponent.InvokeAsync()
   at Microsoft.AspNetCore.Mvc.ViewComponents.DefaultViewComponentInvoker.InvokeAsyncCore(ObjectMethodExecutor executor, Object component, ViewComponentContext context)
   at Microsoft.AspNetCore.Mvc.ViewComponents.DefaultViewComponentInvoker.InvokeAsync(ViewComponentContext context)
   at Microsoft.AspNetCore.Mvc.ViewComponents.DefaultViewComponentInvoker.InvokeAsync(ViewComponentContext context)
   at Microsoft.AspNetCore.Mvc.ViewComponents.DefaultViewComponentHelper.InvokeCoreAsync(ViewComponentDescriptor descriptor, Object arguments)
   at Volo.Abp.AspNetCore.Mvc.UI.Widgets.AbpViewComponentHelper.InvokeAsync(Type componentType, Object arguments)
   at V1baMV6YmQplw0X98PH.UPIMWT6TrLmYa5A0bLn.ExecuteAsync()
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageCoreAsync(IRazorPage page, ViewContext context)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageAsync(IRazorPage page, ViewContext context, Boolean invokeViewStarts)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderAsync(ViewContext context)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.HtmlHelper.RenderPartialCoreAsync(String partialViewName, Object model, ViewDataDictionary viewData, TextWriter writer)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.HtmlHelper.PartialAsync(String partialViewName, Object model, ViewDataDictionary viewData)
   at s9pw74fNUuN4Eq9OcZh.SMIS7FfDqF8eAAIYmQI.<>c__DisplayClass21_0.zesArhS6o8NoyemU221.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Razor.Runtime.TagHelpers.TagHelperExecutionContext.SetOutputContentAsync()
   at s9pw74fNUuN4Eq9OcZh.SMIS7FfDqF8eAAIYmQI.ExecuteAsync()
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageCoreAsync(IRazorPage page, ViewContext context)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageAsync(IRazorPage page, ViewContext context, Boolean invokeViewStarts)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderLayoutAsync(ViewContext context, ViewBufferTextWriter bodyWriter)
   at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderAsync(ViewContext context)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ViewContext viewContext, String contentType, Nullable`1 statusCode)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ViewContext viewContext, String contentType, Nullable`1 statusCode)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResultFilterAsync>g__Awaited|30_0[TFilter,TFilterAsync](ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResultExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeResultFilters>g__Awaited|28_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)
   at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Volo.Abp.AspNetCore.Serilog.AbpSerilogMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Volo.Abp.AspNetCore.MultiTenancy.MultiTenancyMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Volo.Abp.AspNetCore.Security.AbpSecurityHeadersMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Volo.Abp.AspNetCore.Tracing.AbpCorrelationIdMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.<Invoke>g__Awaited|8_0(ExceptionHandlerMiddlewareImpl middleware, HttpContext context, Task task)
[18:16:51 INF] Executing endpoint '/Public/CmsKit/Pages/Index'
[18:16:51 INF] Route matched with {page = "/Public/CmsKit/Pages/Index", action = "", controller = "", area = ""}. Executing page /Public/CmsKit/Pages/Index
[18:16:51 INF] Skipping the execution of current filter as its not the most effective filter implementing the policy Microsoft.AspNetCore.Mvc.ViewFeatures.IAntiforgeryPolicy
[18:16:51 INF] Executing handler method Volo.CmsKit.Public.Web.Pages.Public.CmsKit.Pages.IndexModel.OnGetAsync - ModelState is Valid
[18:16:51 INF] Start processing HTTP request GET https://localhost:44380/api/cms-kit-public/pages/Error?api-version=1.0
[18:16:51 INF] Sending HTTP request GET https://localhost:44380/api/cms-kit-public/pages/Error?api-version=1.0
[18:16:51 INF] Received HTTP response headers after 71.9637ms - 403
[18:16:51 INF] End processing HTTP request after 72.1478ms - 403
[18:16:51 ERR] ---------- RemoteServiceErrorInfo ----------
{
  "code": "Forbidden",
  "message": "Forbidden",
  "details": null,
  "data": null,
  "validationErrors": null
}

Well, I will include all the pre-built modules in AdministrationService. So, which modules need do this at https://commercial.abp.io/modules?

I have another question, how to include cms in publicweb? Is there documentation for this?

I added it in microserver-pro template, it is works.

But how add a ChatUser?

Cool, resolved !

But is it possible not to modify the AdministrationService? In my product architecture, CmsKit will be offered as a separate MicroService like as ProductService. AdministrationService will do not reference other modules. If possible, I would like to resolve it in the ProductService.

Fine, the tables about CmsKit is appears in database, but permissions of role about CmsKit not found , so i can't see cmskit at sidemenu.

Features of cmskit is opend.

I checked the database, found some values of cmskit in table about permission.

OK, I sended.

and this is my code

ProductServiceDbContext .cs

using Microsoft.EntityFrameworkCore;
using XTC.BaaSo.ProductService.Products;
using Volo.Abp.Data;
using Volo.Abp.EntityFrameworkCore;
using Volo.CmsKit.EntityFrameworkCore;
using Volo.CmsKit.Newsletters;
using Volo.CmsKit.UrlShorting;
using Volo.CmsKit.Polls;
using Volo.CmsKit.Comments;
using Volo.CmsKit.Users;
using Volo.CmsKit.Reactions;
using Volo.CmsKit.Ratings;
using Volo.CmsKit.Tags;
using Volo.CmsKit.Pages;
using Volo.CmsKit.Blogs;
using Volo.CmsKit.MediaDescriptors;
using Volo.CmsKit.Menus;
using Volo.CmsKit.GlobalResources;

namespace XTC.BaaSo.ProductService.EntityFrameworkCore;

[ConnectionStringName(ProductServiceDbProperties.ConnectionStringName)]
public class ProductServiceDbContext : AbpDbContext<ProductServiceDbContext>, ICmsKitProDbContext, ICmsKitDbContext
{
    public DbSet<Product> Products { get; set; }
    public DbSet<NewsletterRecord> NewsletterRecords { get; set; }
    public DbSet<NewsletterPreference> NewsletterPreferences { get; set; }
    public DbSet<ShortenedUrl> ShortenedUrls { get; set; }
    public DbSet<Poll> Polls { get; set; }
    public DbSet<PollUserVote> PollUserVotes { get; set; }
    public DbSet<PollOption> PollOptions { get; set; }

    public DbSet<Comment> Comments { get; set; }

    public DbSet<CmsUser> User { get; set; }

    public DbSet<UserReaction> Reactions { get; set; }

    public DbSet<Rating> Ratings { get; set; }

    public DbSet<Tag> Tags { get; set; }

    public DbSet<EntityTag> EntityTags { get; set; }

    public DbSet<Page> Pages { get; set; }

    public DbSet<Blog> Blogs { get; set; }

    public DbSet<BlogPost> BlogPosts { get; set; }

    public DbSet<BlogFeature> BlogFeatures { get; set; }

    public DbSet<MediaDescriptor> MediaDescriptors { get; set; }

    public DbSet<MenuItem> MenuItems { get; set; }

    public DbSet<GlobalResource> GlobalResources { get; set; }

    public ProductServiceDbContext(DbContextOptions<ProductServiceDbContext> options)
        : base(options)
    {

    }

    protected override void OnModelCreating(ModelBuilder builder)
    {
        base.OnModelCreating(builder);

        builder.ConfigureProductService();
        builder.ConfigureCmsKitPro();
        builder.ConfigureCmsKit();
    }
}

ProductServiceEntityFrameworkCoreModule.cs

using Microsoft.Extensions.DependencyInjection;
using XTC.BaaSo.ProductService.Products;
using Volo.Abp.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.MySQL;
using Volo.Abp.Modularity;
using Volo.CmsKit.EntityFrameworkCore;

namespace XTC.BaaSo.ProductService.EntityFrameworkCore;

[DependsOn(
    typeof(AbpEntityFrameworkCoreMySQLModule),
    typeof(AbpEntityFrameworkCoreModule),
    typeof(ProductServiceDomainModule)
)]
[DependsOn(typeof(CmsKitProEntityFrameworkCoreModule))]
public class ProductServiceEntityFrameworkCoreModule : AbpModule
{
    public override void PreConfigureServices(ServiceConfigurationContext context)
    {
        ProductServiceEfCoreEntityExtensionMappings.Configure();
    }

    public override void ConfigureServices(ServiceConfigurationContext context)
    {
        context.Services.AddAbpDbContext<ProductServiceDbContext>(options =>
        {
            options.ReplaceDbContext<ICmsKitDbContext>(); 
            options.ReplaceDbContext<ICmsKitProDbContext>();
            /* Remove "includeAllEntities: true" to create
             * default repositories only for aggregate roots */
            options.AddDefaultRepositories(includeAllEntities: true);
            options.AddRepository<Product, EfCoreProductRepository>();
        });

        Configure<AbpDbContextOptions>(options =>
        {
            options.Configure<ProductServiceDbContext>(c =>
            {
                c.UseMySQL(b =>
                {
                    b.MigrationsHistoryTable("__ProductService_Migrations");
                });
            });
        });
    }
}

I saw the code of migrations, but not found nothing about CmsBlogs

using System;
using Microsoft.EntityFrameworkCore.Migrations;

#nullable disable

namespace XTC.BaaSo.ProductService.Migrations
{
    /// <inheritdoc />
    public partial class CMSKit : Migration
    {
        /// <inheritdoc />
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.CreateTable(
                name: "NewsletterRecords",
                columns: table => new
                {
...
                },
                constraints: table =>
                {
...
                })
                .Annotation("MySql:CharSet", "utf8mb4");

            migrationBuilder.CreateTable(
                name: "Polls",
                columns: table => new
                {
...
                },
                constraints: table =>
                {
...
                })
                .Annotation("MySql:CharSet", "utf8mb4");

            migrationBuilder.CreateTable(
                name: "PollUserVotes",
                columns: table => new
                {
...
                },
                constraints: table =>
                {
...
                })
                .Annotation("MySql:CharSet", "utf8mb4");

            migrationBuilder.CreateTable(
                name: "ShortenedUrls",
                columns: table => new
                {
...
                },
                constraints: table =>
                {
...
                })
                .Annotation("MySql:CharSet", "utf8mb4");

            migrationBuilder.CreateTable(
                name: "NewsletterPreferences",
                columns: table => new
                {
...
                },
                constraints: table =>
                {
...
                })
                .Annotation("MySql:CharSet", "utf8mb4");

            migrationBuilder.CreateTable(
                name: "PollOptions",
                columns: table => new
                {
...
                },
                constraints: table =>
                {
...
                })
                .Annotation("MySql:CharSet", "utf8mb4");

            migrationBuilder.CreateIndex(
                name: "IX_NewsletterPreferences_NewsletterRecordId",
                table: "NewsletterPreferences",
                column: "NewsletterRecordId");

            migrationBuilder.CreateIndex(
                name: "IX_PollOptions_PollId",
                table: "PollOptions",
                column: "PollId");
        }

        /// <inheritdoc />
        protected override void Down(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.DropTable(
                name: "NewsletterPreferences");

            migrationBuilder.DropTable(
                name: "PollOptions");

            migrationBuilder.DropTable(
                name: "PollUserVotes");

            migrationBuilder.DropTable(
                name: "ShortenedUrls");

            migrationBuilder.DropTable(
                name: "NewsletterRecords");

            migrationBuilder.DropTable(
                name: "Polls");
        }
    }
}

Hi, liangshiwei

  1. add codes follow you
  2. run dotnet ef migrations add CMSKit at ProductService.EntityFrameworkCore
  3. run DbMigrator, throw exception

[12:16:23 ERR] An exception occurred while iterating over the results of a query for context type 'XTC.BaaSo.ProductService.EntityFrameworkCore.ProductServiceDbContext'. MySqlConnector.MySqlException (0x80004005): Table 'BaaSo_Product.CmsBlogs' doesn't exist at MySqlConnector.Core.ServerSession.ReceiveReplyAsyncAwaited(ValueTask`1 task) in

Vastaus

Hi Anjali_Musmade,

I succeeded :)

Is like this?

$.ajax({
    type: "POST",  // Or "GET" depending on your scenario
    url: "/ToDo1s?handler=Handle&param1=hello&param2=world",  // Add URL of your handler method
    success: function (data) {
        console.log(data);
    },
    error: function (error) {
        console.error(error);
    }
});
public class IndexModel : ProdutServicePageModel
{
    public string NameFilter { get; set; }

    public async Task<IActionResult> OnPostHandleAsync(string param1, string param2)
    {
        Console.WriteLine($"{param1} {param2}");
        return NoContent();
    }
}

need OnPostHandlerAsync method

Näytetään 21 - 30/35 tietueesta
Made with ❤️ on ABP v8.2.0-preview Updated on maaliskuuta 25, 2024, 15.11