The compiler error you’re seeing (CS8795: “Partial method … must have an implementation part because it has accessibility modifiers”) happens when the Mapperly source generator doesn’t run / doesn’t generate code for that [Mapper] class.
In that case, your public override partial … Map(...) declarations remain “unimplemented”, and C# reports CS8795.
In ABP v10, the correct pattern (public override partial ...) is valid only if:
Ensure you installed ABP Mapperly integration package in the project where the mapper class exists:
Volo.Abp.MapperlyEnsure the module registers Mapperly (at least in that layer):
using Volo.Abp.Modularity;
using Volo.Abp.Mapperly;
[DependsOn(typeof(AbpMapperlyModule))]
public class YourModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
context.Services.AddMapperlyObjectMapper<YourModule>();
// or (if you want it as default provider)
// context.Services.AddMapperlyObjectMapper();
}
}
.csproj where the mapper lives:<ItemGroup>
<PackageReference Include="Riok.Mapperly" Version="*" PrivateAssets="all" />
</ItemGroup>
Then Clean + Rebuild (not just Build).
<RunAnalyzers>false</RunAnalyzers> or similar build settings).After these, the generated file for your mapper should appear under Dependencies → Analyzers → Riok.Mapperly (VS) / Generated files, and the CS8795 error will disappear.
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
BlazorOneDbContext at design-time to generate the initial migration.IdentityPasskeyData.Transports because it is a string[]. Relational EF Core providers (including MySQL) can’t map array primitives by default, so migration scaffolding fails.This issue is related to the newly introduced passkey entities in ABP 10.1.x. Update your solution to the latest patch of the ABP 10.1 line (or newer) and re-run migrations.
Volo.Abp.* packages to the latest stable version compatible with your stack.dotnet restoreUntil you can upgrade, you can prevent EF Core from trying to map the array property by ignoring it in OnModelCreating (or mapping it using a value converter to JSON/text).
Ignore example (quickest to unblock migrations):
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.Entity<IdentityPasskey>(b =>
{
b.OwnsOne(x => x.PasskeyData, pb =>
{
pb.Ignore(x => x.Transports);
});
});
}
Note: Ignoring means
Transportswon’t be stored in the database. If you need it persisted, use a converter (e.g., JSON serialization into alongtext/textcolumn) instead.
Sources (validated):
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
503 (Service Unavailable) from https://nuget.abp.io/<your-guid>/v3/index.json means the ABP private NuGet feed endpoint was reachable, but the service (or a gateway in front of it) temporarily could not serve package downloads. This is not caused by missing packages in your project; it’s a feed availability/network issue.dotnet restore --disable-parallel
(Disabling parallelism often reduces repeated download failures during intermittent feed issues.)
dotnet nuget locals all --clear
dotnet restore --disable-parallel
Ensure your ABP private feed is correctly configured in NuGet.config
nuget.abp.io/.../v3/index.json source configured (and not overridden by another NuGet.config higher in the directory tree).NuGet.config is copied into the image and used during restore.If it continues (likely account/feed-side or connectivity from your environment)
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
In ABP 10.x the FAQ widget parameters are groupName and sectionName. Your dynamic widget usage is passing sectionName, but the docs example shows a mismatch (name = "Development"). This typically results in the widget endpoint failing and the UI showing “This part of content couldn’t be loaded.” after the upgrade.
Fix your widget invocation by using sectionName (not sectionName="Faq" with an old/incorrect parameter name mapping like name), and ensure the values match an existing FAQ Group + Section in CMS Kit:
If you use the Dynamic Widget tag helper:
[Widget Type="Faq" groupName="Client" sectionName="Faq"]
If you render it directly (recommended to verify quickly):
@await Component.InvokeAsync(
typeof(FaqViewComponent),
new
{
groupName = "Client",
sectionName = "Faq"
}
)
After changing it, restart the app and hard refresh the page. The widget content is loaded via an internal widget endpoint; if that endpoint throws due to parameter mismatch, you’ll only see the generic “couldn’t be loaded” message on the UI.
If it still fails after this change, the issue is no longer the parameters; it will be a server-side exception inside the widget endpoint. In that case, check the server logs for the request that serves the widget content (it will show the real exception).
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
What to do (verified, non-speculative steps you can apply immediately):
Use Ollama via an OpenAI-compatible endpoint (preferred path in ABP)
If you keep “Ollama” provider: pick a model that supports the needed capabilities
Validate that the Ollama endpoint is reachable from the server host
http://localhost:11434. This only works if Ollama is running on the same machine as the ABP application host.localhost will point to the ABP host, not the Ollama host. Update the Base URL accordingly.No verified source is available that lists which exact Ollama models are compatible with the AI Management playground tool-calling flow, so I can’t give a definitive model list.
Links (validated):
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
If you want both AI Management and MCP Management UI today in ABP 10.2 RC, choose MVC / Razor Pages UI.
Make sure you meet these requirements, otherwise MCP menu won’t appear even on MVC:
About “Switch to Preview” failing and the errors you see:
SqlException: column 'Leaved' invalid indicates a database schema mismatch (you’re running code that expects a newer DB schema).Conclusion / what to pick now:
Links (verified):
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
/api/abp/api-definition) for the method you’re calling:
The API description of the ... IWorkspaceAppService.GetListAsync method was not found!Could not find ApiDescriptionModel for action ... Workspace, May be the generate-proxy.json is not up to date.abp generate-proxy -t csharp -u https://localhost:44340/
If your solution is modular / the endpoints are in a specific module, generate with module name:
abp generate-proxy -t csharp -u https://localhost:44340/ -m YourModuleName
generate-proxy.json (or app-generate-proxy.json) embedded, orIn your MVC (client) module, keep (or add) the VFS embedding:
Configure<AbpVirtualFileSystemOptions>(options =>
{
options.FileSets.AddEmbedded<YourMvcClientModule>();
});
bin/obj (or dotnet clean), rebuild, restart both the Host and the MVC app.In RC builds, API surface and route/action metadata can change between RC1/RC2; if your MVC app still carries proxy metadata generated against an older build, ABP can’t match IWorkspaceAppService.GetListAsync to any action in the API definition model and throws exactly this error.
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
This is not an API/auth configuration regression in your app. It’s a known limitation of ABP Studio’s built-in browser: the Swagger UI OAuth/OpenID Connect flow completes visually, but Swagger UI cannot persist/use the access token, so requests are sent without the Authorization: Bearer ... header (exactly like your curl example). As a result, the API challenges the Bearer scheme and you get 401.
Fix / Workaround
HttpApi.Host (or gateway) app → Copy Url./swagger.Authorization: Bearer <token> and the request will succeed.No code changes are required in your solution for this specific issue.
Link (verified):
https://abp.io/docs/latest/solution-templates/microservice/api-gateways
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
CORE_OPTIONS provider (it’s normally provided by CoreModule.forRoot(...)). After upgrading, it is commonly caused by TypeScript paths mappings that override how @abp/* and @volo/* packages are resolved (especially in microservice solutions / Studio-generated workspaces).tsconfig.json (the one used by the app, e.g. apps/angular/tsconfig.json):{
"compilerOptions": {
"paths": {
"@abp/*": ["node_modules/@abp/*"],
"@volo/*": ["node_modules/@volo/*"]
}
}
}
rm -rf node_modules package-lock.json yarn.lock
npm install # or yarn
npm start
forRoot (otherwise CORE_OPTIONS really won’t be registered):import { CoreModule } from '@abp/ng.core';
@NgModule({
imports: [
CoreModule.forRoot(/* your options */),
],
})
export class AppModule {}
Links:
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.