Under Review
Last Updated: 22 Jun 2021 16:25 by ADMIN
ben
Created on: 15 Jun 2021 19:37
Category: ComboBox
Type: Bug Report
0
ComboBox ItemTemplate - In Published Application IdentityUser<Guid> Cannot Be used in ItemTemplate

GitHub Repo - https://github.com/benhysell/BlazorGridPagingIssue

Expected Behavior - In the ComboBox ItemTemplate show the user's email address along with user name

Actual Behavior - Works fine debugging in Visual Studio, however in a published application the browser throws exception and will not display user's email address in the ItemTemplate.

Steps To Reproduce

  • Clone and start debugging application
  • Navigate to https://localhost:5001/createWeather
  • This is a simple form with two ComboBoxes, one for weather data and one for user data
  • In debug the ComboBoxes work as expected, each has an ItemTemplate that shows the desired data.
  • Stop debugging and publish the applicaiton
  • ie -- dotnet publish -o "YOUR DESIRED OUPUT DIRECTORY" -r win-x64 --self-contained
  • Navigate to the output directory and run .\BlazorGrid.Server.exe
  • In the browser navigate to https://localhost:5001/createWeather
  • The page now throws an exception
  • Also notice how the user's email address is no longer shown for the User in the comobobox drop down.

Details

Ran across this in a larger application...I have a class that inherits from Microsoft.AspNetCore.Identity.IdentityUser<Guid> and wanted to display all of my users in a ComboBox with a custom ItemTemplate consisting of the Name and Email.  This works great in debug, however every time I publish/deploy the Email address is not shown.  The example repo is a stripped down version of the larger application reproducing the error.

The application is making an OData call to the backend to retrieve the Users...in the repo we do not goto a database, in the live application we do.  In both instances the user's Email is not shown in the ItemTemplate, even though one can see via the browser's network traffic tab the results from the OData call include the email address for the users.

This issue does not just affect the email property, I was unable to get any of the properties listed on Microsoft.AspNetCore.Identity.IdentityUser<Guid> to render in a published application in the ItemTemplate for the Combobox. 

Note - all of the properties in Microsoft.AspNetCore.Identity.IdentityUser<Guid> are marked as 'virtual'.  I attempted to re-create this issue with a different class, in the repo I used the WeatherForecast class and created a virtual TemperatureK property...this however worked in debug and release without issue.  One can see this in the OData Weather Forecasts ComboBox on the same page, https://localhost:5001/createWeather.

1 comment
ADMIN
Svetoslav Dimitrov
Posted on: 22 Jun 2021 16:25

Hello Ben,

Thank you for the detailed explanation and runnable application. We are currently investigating the issue you have described and will get back to you as soon as possible.

Regards,
Svetoslav Dimitrov
Progress Telerik

Love the Telerik and Kendo UI products and believe more people should try them? Invite a fellow developer to become a Progress customer and each of you can get a $50 Amazon gift voucher.