"BassaSolutions" की गतिविधियाँ

सवाल
  • ABP Framework version: v4.3.3

How is it possible to change the retry count of specific jobs?

With hangfire, this attribute can be used: [AutomaticRetry(Attempts = 0)]. But it doesnt seem to work with ABP. We need different retry attempt counts for each job.

  • ABP Framework version: v4.3.3
  • UI type: Blazor Server
  • DB provider: EF Core

We use iOptions for our settings management throught all application modules (some of which do use the ABP framework).

As ABP provides the ISettingManager, and we want to manage the settings in the UI, we moved all settings to ISettingManager & created UI pages as described in the ABP documentation. Of course we must not have references to the ABP framework in each modules, so for providing the settings we have to stay with iOptions.

Now is there a way to update the iOptions (initialized from appsettings.json) when the ISettingManager is updated? Of course this only applies on restart, as we use iOptions and not iOptionsSnapshot, but we still need to somehow 'merge' these 2.

We saw that the ABP LDAP module does the same (use iOptions combined with ISettingManager), but it seems to have to get the settings values each time when iOptions is read, and not when the settings in ISettingManager change. This is not an option for us.

This is the example similiar to the ABP LDAP application. This does not work, as it has to be called each single time when iOptions is read, and not once when the settings are stored.

Code Snipped:

   public class FhirOptionManager : AbpDynamicOptionsManager<FhirOptions>
    {
        protected ISettingProvider SettingProvider { get; }

        public FhirOptionManager(IOptionsFactory<FhirOptions> factory, ISettingProvider settingProvider)
            : base(factory)
        {
            SettingProvider = settingProvider;
        }

        protected override async Task OverrideOptionsAsync(string name, FhirOptions options)
        {
            options.Endpoint = await GetSettingOrDefaultValue(MySettings.SettingsFhirEndpoint, options.Endpoint);
        }

        protected virtual async Task<string> GetSettingOrDefaultValue(string name, string defaultValue)
        {
            var value = await SettingProvider.GetOrNullAsync(name);
            return value.IsNullOrWhiteSpace() ? defaultValue : value;
        }
    }

Thank you for your time!

When using blazor server, Audit Logs shows "/_blazor" for each HttpRequest property. Altough websockets are used, there should still be proper information in the Auditlog, so we know for which request it is.

  • ABP Framework version: v4.3.3
  • UI type: Blazor Server
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes

Audit logging:

When the paramter is larger than 2000 characters, no parameters are logged.

Is it possible to cut off the parameters at 2000 chars and still log them? The same way 'comments' in audit logs corrently works.

  • ABP Framework version: v4.3.2
  • UI type: Blazor
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): no
  • Exception message and stack trace:
  • Steps to reproduce the issue:"

With 4.3.2, we added a Blazor.Server Startup Project to our existing Blazor Project. On Blazor WASM, ABP automatically shows Error Dialogs for exceptions, e.g. for validations or UserFriendlyExceptions.

On Server side blazor no dialog is shown, instead, the whole client freezes. What must be done to get the ABP Error Dialog on Blazor.Server?

How to reproduce:

  1. Use new 4.3.2 (or 4.3.3) startup template with blazor
  2. Start blazor.server
  3. Throw UserFriendlyException

Thanks you!

सवाल
  • **ABP Framework version:**4.2.0
  • UI type: Blazor
  • DB provider: EF Core
  • **Tiered (MVC) **: yes

There are 2 main issues:

  • The startup is extremly slow
    • First call of the website (just test abp commercial startup template with blazor) needs 10-20 seconds.
    • When using a microsoft blazor client example, its 5 times faster
  • Responsiveness of UI elements of ABP blazor (e.g. abp table) is really bad.
    • e.g. When hovering over dropdowns it has ~500ms delay before it opens. Moving throw a page where things happen feels very slow.
    • When implementing our own blazor page within the abp application, without using abp blazor ui (only injected abp services), everything works without any delay, fast as expected.

My questions:

  • Are there known issues that lead to this bad performance?
  • Is this beeing worked on? Will the performance (of these 2 issues, but mainly the startup time!) improve in the future?
  • Is there anything that can be done now to improve it? (e.g. certain abp features that should not be used together with blazor?)
  • ABP Framework version: 4.2.0
  • UI type: Blazor
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes

In the documentation, there is no information on how to use all our company brand colors with ABP commercial Lapton Theme. https://docs.abp.io/en/abp/latest/UI/Blazor/Branding

What we did:

/* Your Global Styles */
.btn.btn-primary {
  color: #fff;
  background-color: #1fb787;
  border-color: #12b581;
}

.lp-opened-sidebar .lp-sidebar, .lp-closed .lp-sidebar {
    background: #1fb787;
	background: linear-gradient(7deg, #1fb787, #78c6be);
}

:root {
    --primary: #1fb787;
    --secondary: #78c6be;
    --sidebar-bg: #1fb787;
}

header {
    background: #78c6be;
}

Now there are still many small things missing, like focused inputfield color or cancel btn colors,..

Is there somewhere a documentation what needs to be done to change all colors?

Thank you!

  • ABP Framework version: v3.3.1

Documentation https://docs.abp.io/en/abp/latest/Background-Jobs says that the jobsname can be set via an argument: [BackgroundJobName("emails")]

But in Hangfire, the jobname is then still "HangfireJobExecutionAdapter<EmailArgs>.Execute" instead of "emails".

How can the jobname be set?

  • ABP Framework version: v3.3.1

Good morning,

I have hangfire job parameters that needs a custom serializer to be serialized.

For newtonsoft, I can add it like this:

    var settings = new JsonSerializerSettings {Formatting = Formatting.Indented};
    settings.Converters.Add(new LhirModelsJsonConverter());
    var serializedData = JsonConvert.SerializeObject(bundle, settings);

How is it possible to define this custom serializer for a specific job, so that it is automatically used for serialization and deserialization of its arguments? I do not want to manually serialize the data before each insert and deserialize on the worker.

I use hangfire with the abp backgroundjob interface:

  [BackgroundJobName("lhirInsert")]
  public class FhirInsertArgs
  {
      public LhirData LhirData { get; set; }
  }
    _backgroundJobManager.EnqueueAsync(new LhirInsertArgs
    {
        LhirData = serializedData
    });

Best regards and thank you for your help, Kevin

19 प्रविष्टियों में 11 से 19 दिखा रहा है
Made with ❤️ on ABP v8.2.0-preview Updated on मार्च 25, 2024, 15:11