Hi, EngincanV We are blocked with our solution due to this issue. Any updates on this?
Hi, I got your solution. But haven't had time to examine it yet. I'll check it asap.
Hi, the package Volo.Abp.Studio.Extensions.StandardSolutionTemplates is used by ABP CLI and ABP Studio to provide solution templates. Are you trying to install it manually? It's recommended to let ABP Studio CLI or GUI handle the installation for you. (This is not a package that can be used in your own applications)
I initially tried running the CLI tool to create a new tiered MVC solution and the error was thrown. I then checked via a manual install in VS Studio and was unable to install the package due to a missing nuspec file. It seems ABP Studio was unable to install the package by itself.
Okay, thanks for the explanation. Can you please try to clear your NuGet cache locally (by using the below command) and then try to open ABP Studio, or run an ABP CLI command?
dotnet nuget locals all --clearABP Studio CLI & GUI, uses the local cached NuGet package to seamlessly work. So, clearing the cache and re-installing the extension probably will fix this problem.
Thank you - this resolved the issue.
Great to hear that. Regards.
okay i think i have found the problem but i need a solution for my case. this error happens because i removed JsonSerializer Converters that is type of ObjectToInferredTypesConverter to use IAsyncEnumerable from my controllers.
private void ConfigureJsonSerializerForAsyncEnumarable(ServiceConfigurationContext context, IConfiguration configuration) { context.Services.Configure<JsonOptions>(options => { options.JsonSerializerOptions.Converters.RemoveAll(x => x.GetType() == typeof(ObjectToInferredTypesConverter)); }); }i need to keep this code since i need to serialize json responses asynchronously from my controller. But this is effecting the validations in extra properties.
Is there any other way that i can have both of the worlds.
Hi, you may create a new a custom JsonConverter for IAsyncEnumerable like the below:
using System;
using System.Collections.Generic;
using System.Text.Json;
using System.Text.Json.Serialization;
namespace YourNamespace;
public class AsyncEnumerableConverter : AsyncEnumerableConverter<object>
{
}
public class AsyncEnumerableConverter<T> : JsonConverter<IAsyncEnumerable<T>>
{
public override IAsyncEnumerable<T> Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
throw new NotSupportedException("Reading IAsyncEnumerable from JSON is not supported.");
}
public override void Write(Utf8JsonWriter writer, IAsyncEnumerable<T> value, JsonSerializerOptions options)
{
writer.WriteStartArray();
var enumerator = value.GetAsyncEnumerator();
try
{
while (enumerator.MoveNextAsync().GetAwaiter().GetResult())
{
JsonSerializer.Serialize(writer, enumerator.Current, options);
}
}
finally
{
enumerator.DisposeAsync().AsTask().GetAwaiter().GetResult();
}
writer.WriteEndArray();
}
}
Then without removing ObjectToInferredTypesConverter instead add the new jsonconverter by configuring the JsonOptions:
context.Services.Configure<JsonOptions>(options =>
{
options.JsonSerializerOptions.Converters.Add(new AsyncEnumerableConverter());
// You should NOT have the line that removes ObjectToInferredTypesConverter here anymore
});
Please let me know, if it fixes your problem or not. Regards.
Hi, it seems in your
App.razorfile (under Components folder), you should setbaseas follows (update the related base tag's href):<base href="/Session/Onboarding/" />The <base> HTML element specifies the base URL to use for all relative URLs in a document. There can be only one <base> element in a document. Ref: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
Thanks for the reply. It got me part of the way there. When I inspect the site in the dev tools, I find this (anonymized):
<base href="https://example.com/Session/Onboarding/"/> <link rel="stylesheet" href="/__bundles/Blazor.LeptonXTheme.Global.CAA2ECE4806C50A68D939A44E6A93296.css"/> <!--Blazor:{"type":"server","prerenderId":"f4d6a03ab97348018c0d875fcf169a80","key":{"locationHash":"77D12F14A8105320B1AAED6AE7E689DA0EC4483270A645E84079EAA0FFDF550D:13","formattedComponentKey":""},"sequence":0,"descriptor":"CfDJ8ITznUnAEA5LhmAaoLF2zWfBOj\u002BTmLcQNghn9qm/WEkxl3OpTBOO6ZDruOFDaqWoOKL8an9rpsMvWgg/aiWQjqkCyf3OCYBnfCLgdFa6aPeAx0I40P6A95FBBS86w9KjLAWsyFARSg5FiQPJD84789OQdlYXq/1rSf0zkgWLsbvmhEG3G2Gua2q5gBPPKFuLLx7/nc2IiquJsyGMN7Kw6uN7ZGIyw8T0tNw2xkI0CLeACiNU5vcWlW5bq\u002BAiQs/QmrasxbpD8rZfafF0ptPquegF8YgnQG9gtpS3b6NLoWdKiOyqxM3x3gbIv/ngKt2ASzONfw7xu\u002Be4sKMbmLeyF7dq6VrNMdFiP23TcExs5mZiVhtaOv93hQXnxcbawYllFv/ReFFBIbfNfObVG\u002By0iRQK2J3hw2h1ty/5EZkVJ1beh3lCkEPNU9aLaMbtJVj/qZB7Hvwnoa0/AiZpmLsktPDVjmprPwetvRNInS5Z1szCbiwBaBEeGtQsuIQK4HwfUzSSs3DLybbhO0lOWLpj3ktHhU90/jVpueJg9Vg55xs1zLeySaLb19mpBPCsN2RevENRafuomXcYbv8bpzs9O9M="}--> <!--Blazor:{"prerenderId":"f4d6a03ab97348018c0d875fcf169a80"}--> <link href="_content/Volo.Abp.AspNetCore.Components.Web.LeptonXTheme/side-menu/css/bootstrap-dim.css" type="text/css" rel="stylesheet" id="lpx-theme-bootstrap-dim"/> <link href="_content/Volo.Abp.AspNetCore.Components.Web.LeptonXTheme/side-menu/css/dim.css" type="text/css" rel="stylesheet" id="lpx-theme-color-dim"/> <link href="_content/Volo.Abp.AspNetCore.Components.Web.LeptonXTheme/side-menu/css/layout-bundle.css" type="text/css" rel="stylesheet" id="lpx-layout-bundle"/> <link href="_content/Volo.Abp.AspNetCore.Components.Web.LeptonXTheme/side-menu/css/abp-bundle.css" type="text/css" rel="stylesheet" id="lpx-abp-bundle"/> <link href="_content/Volo.Abp.AspNetCore.Components.Web.LeptonXTheme/side-menu/css/blazor-bundle.css" type="text/css" rel="stylesheet" id="lpx-blazor-bundle"/> <link href="_content/Volo.Abp.AspNetCore.Components.Web.LeptonXTheme/side-menu/css/font-bundle.css" type="text/css" rel="stylesheet" id="lpx-font-bundle"/> <link rel="stylesheet" href="/global-styles.css">Most of these references work now. But consider the Blazor.LeptonXTheme.Global CSS file. Its URL begins with
/, meaning that the browser won't use the<base>tag in determining which URL to request. (global-styles.cssalso has this issue, but because it's referenced directly inApp.razorit's a simple fix.At the end of the generated HTML the same problem occurs:
<script src="/__bundles/Blazor.LeptonXTheme.Global.1F883E5288FF593E79FDC82FAD923D8A.js"></script>So, how can I adjust the URLs that LeptonX stuff comes from?
Hi, you are deploying to IIS, right? You may add a rewrite rule to the web.config file:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Rewrite LeptonX Bundles" stopProcessing="true">
<match url="^__bundles/(.*)$" />
<action type="Rewrite" url="/Session/Onboarding/__bundles/{R:1}" />
</rule>
<rule name="Rewrite global-styles.css" stopProcessing="true">
<match url="^global-styles.css$" />
<action type="Rewrite" url="/Session/Onboarding/global-styles.css" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Can you please, try this approach and let me know if it fixes your problem or not?
Regards.
Hi, the package Volo.Abp.Studio.Extensions.StandardSolutionTemplates is used by ABP CLI and ABP Studio to provide solution templates. Are you trying to install it manually? It's recommended to let ABP Studio CLI or GUI handle the installation for you. (This is not a package that can be used in your own applications)
I initially tried running the CLI tool to create a new tiered MVC solution and the error was thrown. I then checked via a manual install in VS Studio and was unable to install the package due to a missing nuspec file. It seems ABP Studio was unable to install the package by itself.
Okay, thanks for the explanation. Can you please try to clear your NuGet cache locally (by using the below command) and then try to open ABP Studio, or run an ABP CLI command?
dotnet nuget locals all --clear
ABP Studio CLI & GUI, uses the local cached NuGet package to seamlessly work. So, clearing the cache and re-installing the extension probably will fix this problem.
Hi, I've checked and reproduced the problem. Indeed the specified tests are failing, this is weird to see that because we have a testing pipeline that runs before releasing modules. I'll investigate this situation.
Btw, your solution to the problem is correct, we will add the same code to the module class.
Thanks for reporting.
Hi, you're right, version selection is currently missing in the new ABP Studio CLI and Studio GUI. The team is aware of this and plans to prioritize bringing it back (there is an internal issue to support that asap). Thanks for your understanding.
As a workaround, you can use the old CLI and specify a version using the --old flag:
abp new YourProjectName --version <version> --old
Note that this uses ABP's old templating system, not the current ABP Studio templates.
Regards.
Hi, in the
GetWaitingEventsAsyncmethod, a new optional parameter was added, and your problem seems to related to package version inconsistency. I know you've already cleaned your solution, rebuilt it, and checked the .dll files, but it looks like one of your .csproj files may have an incorrect package version.Could you please check your .csproj files and confirm that all package versions are correct?
I use a Directory.Packages.props file to manage all NuGet package versions, and I’ve confirmed that every ABP-related package is set to version 9.0.4.
Okay, thanks for confirming. Interestingly, it throws a System.TypeLoadException, which suggests that the method's signature has changed. It looks like one of your NuGet packages is referencing an older version of ABP's EventBus package.
To assist you better, could you share your solution via email (support@abp.io) along with the ticket number? This will allow me to check it directly in your application and help resolve the issue.
Hi, the package Volo.Abp.Studio.Extensions.StandardSolutionTemplates is used by ABP CLI and ABP Studio to provide solution templates. Are you trying to install it manually? It's recommended to let ABP Studio CLI or GUI handle the installation for you. (This is not a package that can be used in your own applications)
Hi, https://abp.io/support/questions/8763/Issue-Creating-Proxies-8665#answer-3a18255f-5677-e4bf-a992-db36d7ae7d9c can you check this answer to see if it fixes your problem?