Base solution for your next web application

Activities of "chrisweinmuellner"

Product Version: 11.1 Angular .netCore

NameValueofString is generated in service-proxies as representation of c# NameValue<string>. The only place this appears is in DemoUiComponents. So when I deleted DemoUiComponents today and regenerated service-proxies.ts, suddenly my project wouldn't compile any more, because components create-or-edit-webhook-subscription-modal.component.ts and menu-search-bar.component.ts depended on a class NameValueofString in service-proxies.ts

I don't find it healthy and possibly even intentional that a random component or a shared component depend on an exposed Demo class on the backend, so maybe create a simple class in shared/utils that does the same but is actually independent of whether the demo component on the backend is still in the project.

  • Production Version 11.1
  • Angular
  • .net Core
  • Theme Default, but applies to all themes

When receiving notifications (I only tried to reproduce with custom notifications, but my impression is that it applies to your default notifications too), the unreadNotificationCount on header-notifications.component isn't increased, the list of current notifications doesn't update without a page reload and subsequently no desktop push notification is created. After investigating and adding a try-catch-block in onNotificationReceived, this error trace pops up:

TypeError: date.toFormat is not a function
    at DateTimeService.formatDate (date-time.service.ts:163:21)
    at UserNotificationHelper.format (UserNotificationHelper.ts:104:41)
    at UserNotificationHelper.show (UserNotificationHelper.ts:138:28)
    at onNotificationReceived (header-notifications.component.ts:71:46)
    at header-notifications.component.ts:82:17
    at _ZoneDelegate.invoke (zone.js:372:1)
    at Object.onInvoke (core.mjs:25548:1)
    at _ZoneDelegate.invoke (zone.js:371:1)
    at Zone.run (zone.js:134:1)
    at NgZone.run (core.mjs:25402:1)

Tracing it back reveals that userNotification.notification.creationTime is supposed to be either Date or DateTime. It is a json datestring, but it is typeof "string". As a workaround, I implemented this:

function onNotificationReceived(userNotification) {
    if (typeof(userNotification.notification.creationTime) == "string") {
        userNotification.notification.creationTime = new Date(Date.parse(userNotification.notification.creationTime));
    }
    self._userNotificationHelper.show(userNotification);
    self.loadNotifications();

It fixes the immediate problem and desktop notifications work again, but I suppose there is a deeper issue here, so maybe you could have a look. I'm not aware of any changes that might have caused this on my codebase.

Also, while testing I stumbled upon an issue with the same message getting 10 and more calls to onNotificationReceived, but I can't reproduce easily, so maybe just be on the lookout for something similar.

Product Version 11.1, asp.net Core + Angular, Default Theme

As far as I can tell all your templates all use the css class "form-control" for form elements including <select>. This makes the dropdown caret on the right side of the select disappear. When exchanging this for class "form-select" only for select elements, the caret reappears while not changing anything else and makes IMHO for a better UX where he can discern clearly between a text input field and a pure dropdown.

@ismcagdas , I had probably a similar problem, and didn't know why the powertools just didn't do anything. Of course the .net Core 2.2 Runtime was missing. But I only found out after trying to call the Powertools from the commandline. Maybe you could make a sanity check for the Power Tools in the UI whether all requirements are correctly installed, or at least leave the command window open after completion if there was an error executing, that would help immensely because the error message would have said right away that the runtime was missing.

Or as a final suggestion, just update it to a runtime (e.g. 6? ;)) which is definitely installed along with the Visual Studio version you require anyways, that would save the most trouble ;).

Showing 1 to 4 of 4 entries