Activities of "liangshiwei"

Hi,

Actually, Volo.Abp.AspNetCore.Mvc.UI.Theme.Commercial is empty project, It just depends on the Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared project.

So , You don't need take the source code of Lepton theme.

Some possible suggestions:

  1. You can develop a new theme from scratch and completely replace Lepton theme, this way you don't need the source code of Lepton theme.
  2. You only need to change the theme style and layout page, in this way, some codes of the Lepton theme can be reused, such as dynamic switching styles
Answer

Long story short, Swashbuckle (or more specifically ASP.Net Core's ApiExplorer) does not support generation of descriptions for OData controllers

https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/1951#issuecomment-758281116

Example project has been updated: https://github.com/realLiangshiwei/Qa727

Can you provide a simaple project to reproduce the problem?

Answer

Hi,

You should return Entity instead of Dto and always return IQueryable as a best practice, see: https://docs.microsoft.com/en-us/odata/webapi/first-odata-api#update-the-controller

Example :

private readonly IDimAssetClassRepository _dimAssetClassRepository;

public DimAssetClassController(IDimAssetClassRepository dimAssetClassRepository)
{
    _dimAssetClassRepository = dimAssetClassRepository;
}

[EnableQuery]
public IQueryable<DimAssetClass> Get()
{
    return _dimAssetClassRepository.GetDbSet().AsQueryable();
}

Replace your ConfigureOdata method with the following code:

private void ConfigureOdata(ServiceConfigurationContext context)
{
    context.Services.AddOData();
    context.Services.AddAssemblyOf<MetadataController>();

    Configure<MvcOptions>(options =>
    {
        foreach (var outputFormatter in options.OutputFormatters.OfType<OutputFormatter>().Where(x => x.SupportedMediaTypes.Count == 0))
        {
            outputFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/prs.odatatestxx-odata"));
        }

        foreach (var inputFormatter in options.InputFormatters.OfType<InputFormatter>().Where(x => x.SupportedMediaTypes.Count == 0))
        {
            inputFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/prs.odatatestxx-odata"));
        }
    });
}

Hi,

This is a big question, it takes a lot of effort to do this.

Here are some of my suggestions(just an idea):

  1. JWT cannot be changed, it is designed to be immutable.
  2. When you change the tenant, the current user must also change
  3. You can provide a Http API and use code to get Token.
  4. Replace token in local storage in angular code.
  5. Refresh the page to get the application configuration

Hi,

See https://github.com/abpframework/abp/pull/7333, You can use the ConfigureAll method in v4.3

Hi,

May be you can get the new token on the server side and replace the token in the browser local storage.

Hi,

Yes, the JsTreeScriptContributor depends on jquery. try:

options
    .ScriptBundles
    .Configure(typeof(Volo.Abp.Identity.Web.Pages.Identity.Users.IndexModel).FullName, bundle =>
    {

        bundle.AddContributors(typeof(RemoveJqueryScriptContributor));
    });

options
    .ScriptBundles
    .Configure(typeof(Volo.Abp.Identity.Web.Pages.Identity.OrganizationUnits.IndexModel).FullName, bundle =>
    {

        bundle.AddContributors(typeof(RemoveJqueryScriptContributor));
    });

Hi,

Unfortunately, it is currently not possible. The tenant must be determined before logging in.

Showing 5271 to 5280 of 5965 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 11, 2024, 11:11