Starts in:
2 DAYS
3 HRS
28 MIN
11 SEC
Starts in:
2 D
3 H
28 M
11 S

Activities of "wojt"

  • ABP Framework version: v5.3.2
  • UI type: Blazor Server
  • DB provider: EF Core

Hi

I note the Chat module is not available for Blazor Server UI - last comment was 8 months ago that it was planned. Is it currently in the road map?

Thanks

  • ABP Framework version: v5.2-rc 1 (CLI & Suite)
  • UI type: Blazor Server
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): no
  • Exception message and stack trace:
  • Steps to reproduce the issue:
      1. Create new solution using ABP Suite and above settings
      1. Run lib-install
      1. Fix the known start up issues (flag-icon)
      1. Add some entities using ABP Suite,without using migrations in sutie (in my case, a Product, a Supplier, and Categories).
      1. Add relationships: Product->Supplier (1:1), Product:Categories (1:many)
      1. Fix razor.cs pages DataGrid SortDirections
      1. Add Migration and Update Database
      1. Run solution

Straight away, on every first run, I get exceptions. They vary, but this is one example: Error: System.InvalidOperationException: ExecuteReader requires the command to have a transaction when the connection assigned to the command is in a pending local transaction. The Transaction property of the command has not been initialized. ... at Volo.Abp.LanguageManagement.EntityFrameworkCore.EfCoreLanguageTextRepository.GetList(String resourceName, String cultureName)

But I also get exceptions reporting the DataReader connection has not been closed, null reference exceptions, etc. If you Reload the page, it then works fine. Error: System.NullReferenceException: Object reference not set to an instance of an object. at Volo.Abp.AspNetCore.Components.Web.LeptonTheme.Components.ApplicationLayout.MainHeader.MainHeader.xpWj9u1bVH()

Then navigate to an entity list page (e.g. Products), and on the first time I access it: Error: System.InvalidOperationException: The ConnectionString property has not been initialized. at Microsoft.Data.SqlClient.SqlConnection.PermissionDemand() at Microsoft.Data.SqlClient.SqlConnectionFactory.PermissionDemand(DbConnection outerConnection) at Microsoft.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource 1 retry, DbConnectionOptions userOptions) at Microsoft.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSourcretry, DbConnectionOptions userOptions) ...[snip] at Test52.Blazor.Pages.Products.GetNullableSupplierLookupAsync(String newValue) in C:\Users\wojt\source\repos\Tests\Test52\src\Test52.Blazor\Pages\Products.razor.cs:line 225 at Test52.Blazor.Pages.Products.OnInitializedAsync() in C:\Users\wojt\source\repos\Tests\Test52\src\Test52.Blazor\Pages\Products.razor.cs:line 65 at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync() at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)

Again, reload the page and it works fine.

NOW, for even more errors, add a Category, add a Product, and then try adding a Category to a Product (i.e. use the 1 to many relationship): Error: System.ObjectDisposedException: Cannot access a disposed context instance. A common cause of this error is disposing a context instance that was resolved from dependency injection and then later trying to use the same context instance elsewhere in your application. This may occur if you are calling 'Dispose' on the context instance, or wrapping it in a using statement. If you are using dependency injection, you should let the dependency injection container take care of disposing context instances. Object name: 'Test52DbContext'.

The offending line in this case is in the ABP Suite-generated method SetCategoriesAsync in ProductManager.cs: var query = (await _categoryRepository.GetQueryableAsync()) .Where(x => categoryIds.Contains(x.Id)) .Select(x => x.Id);

Repo is here: https://github.com/wojtj/Test52

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

The ABP Suite template used to generate the Entity razor.cs file needs updating for the DataGrid changes in Blazorise 1.0. It currently generates: private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<SupplierDto> e) { CurrentSorting = e.Columns .Where(c => c.Direction != SortDirection.None) .Select(c => c.Field + (c.Direction == SortDirection.Descending ? " DESC" : "")) .JoinAsString(","); CurrentPage = e.Page; await GetSuppliersAsync(); await InvokeAsync(StateHasChanged); }

SortDirection has replaced Direction, and SortDirection.Default has replaced SortDirection.None It should be:

private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<SupplierDto> e) { CurrentSorting = e.Columns .Where(c => c.SortDirection != SortDirection.Default) .Select(c => c.Field + (c.SortDirection == SortDirection.Descending ? " DESC" : "")) .JoinAsString(","); CurrentPage = e.Page; await GetSuppliersAsync(); await InvokeAsync(StateHasChanged); }

Showing 1 to 3 of 3 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 20, 2024, 13:06