Hello,
I'm using the default BackgroundWorkerManager and several PeriodicBackgroundWorkers (Sync versions). Sometimes none of background workers are started at all (and no "DEBUG Start background worker: <worker name>" messages in the output) until workManager.Start() is executed explicitly. So the question is if it's required to run workManager.Start() explicitly (didn't find information on the documentation, previously workers started working without workManager.Start())? Is the any condition for starting workManager automatically?
Asp.Zero 12.4.2.
Thanks.
Hello.
Is it possible to force the UI (both mvc and angular) to send true/false values instead of strings ("true"/"false")? And *null *instead of "" (empty string) for null values? System.Text.Json serializer requires this.
Thanks.
Hello.
I found, that issuing a new token takes too much time when AbpUserTokens table has more than a few thousands records. This is caused by the way UserRepository adds new record to the table.
AbpUserStore.cs:
public virtual async Task AddTokenValidityKeyAsync(...)
{
...
await UserRepository.EnsureCollectionLoadedAsync(user, u => u.Tokens, cancellationToken);
user.Tokens.Add(new UserToken(user, TokenValidityKeyProvider, tokenValidityKey, null, expireDate));
...
}
In the tickets with similar issue (https://support.aspnetzero.com/QA/Questions/10764/Bad-performance-due-to-AbpUserTokens-table, https://support.aspnetzero.com/QA/Questions/10764/Bad-performance-due-to-AbpUserTokens-table) the suggesting was to clear the table from time to time. But what is the purpose of the stored information at all? Where is the data from this table used? Is it possible to skip saving tokens info at all and what side effects will I get then?
P.S. Asp.net zero 12.0
Hi,
Can not login into application.
Nothing happens when we enter credentials and click "Log in" button.
Also there are many errors of loading static resources: .css and .js files.
We login as default "admin" account. We use ASP.NET CORE MVC & jQuery version of template for .NET Core 3.1 framework, template version 8.1.0. Running project Feeder.Web.Mvc from VS 2019 in Windows 10.
Thanks!
Hi,
Hangfire dashboard is missing after login to the web-host service.
Hangfire was enabled as described in documentation: https://aspnetboilerplate.com/Pages/Documents/Hangfire-Integration
Looks like the problem is related to permissions. We can see in debugger that
IsGranted(AppPermissions.Pages_Administration_HangfireDashboard)
returns "false".
In file Index.cshtml
@if (WebConsts.HangfireDashboardEnabled && IsGranted(AppPermissions.Pages_Administration_HangfireDashboard))
{
<li><a href="@WebConsts.HangfireDashboardEndPoint">Hangfire</a></li>
}
But It looks like corresponding permission is already set in permissions UI:
We login as default "admin" account. We use ASP.NET CORE & Angular version of template (two separate VS solutions), template version 7.2.3. Running web-host part from VS 2017 in Windows 10.
Thanks!
Hi,
When we run web-host in Debian, the service is unable to return static files.
That causes the login page to be loaded without styles!
The issue can be reproduced on server side with the command: curl -L http://localhost:5000/view-resources/Views/Ui/Login.css the response is:
<head>
<title>[myproject] - Error</title>
<link href="/view-resources/Views/Error/Index.css" rel="stylesheet" />
</head>
<body>
<div class="m-error_container">
<span class="m-error_title">
<h1>
404
</h1>
</span>
<p class="m-error_subtitle">
Oops! You're lost.
</p>
<p class="m-error_description">
We can not find the page you're looking for.<br>
<a href="/" class="link">Home page</a>.
</p>
</div>
</body>
and the log is:
INFO 2019-11-29 06:02:27,454 [14 ] soft.AspNetCore.Hosting.Internal.WebHost - Request starting HTTP/1.1 GET [http://localhost:5000/view-resources/Views/Ui/Login.css](http://localhost:5000/view-resources/Views/Ui/Login.css)
INFO 2019-11-29 06:02:27,523 [14 ] soft.AspNetCore.Hosting.Internal.WebHost - Request finished in 68.6452ms 302
INFO 2019-11-29 06:02:27,524 [18 ] soft.AspNetCore.Hosting.Internal.WebHost - Request starting HTTP/1.1 GET http://localhost:5000/Error?statusCode=404
INFO 2019-11-29 06:02:27,529 [18 ] ft.AspNetCore.Routing.EndpointMiddleware - Executing endpoint '<myproject>.Web.Controllers.ErrorController.Index (<myproject>.Web.Core)'
INFO 2019-11-29 06:02:27,569 [18 ] ore.Mvc.Internal.ControllerActionInvoker - Route matched with {action = "Index", controller = "Error", area = ""}. Executing controller action with signature Microsoft.AspNetCore.Mvc.ActionResult Index(Int32) on controller <myproject>.Web.Controllers.ErrorController (<myproject>.Web.Core).
INFO 2019-11-29 06:02:27,611 [18 ] ore.Mvc.Internal.ControllerActionInvoker - Executing action method <myproject>.Web.Controllers.ErrorController.Index (<myproject>.Web.Core) - Validation state: Valid
INFO 2019-11-29 06:02:27,613 [18 ] ore.Mvc.Internal.ControllerActionInvoker - Executed action method <myproject>.Web.Controllers.ErrorController.Index (<myproject>.Web.Core), returned result Microsoft.AspNetCore.Mvc.ViewResult in 2.0744ms.
INFO 2019-11-29 06:02:27,615 [18 ] Core.Mvc.ViewFeatures.ViewResultExecutor - Executing ViewResult, running view Error404.
INFO 2019-11-29 06:02:27,664 [18 ] Core.Mvc.ViewFeatures.ViewResultExecutor - Executed ViewResult - view Error404 executed in 50.8185ms.
INFO 2019-11-29 06:02:27,664 [18 ] ore.Mvc.Internal.ControllerActionInvoker - Executed action <myproject>.Web.Controllers.ErrorController.Index (<myproject>.Web.Core) in 94.943ms
INFO 2019-11-29 06:02:27,665 [18 ] ft.AspNetCore.Routing.EndpointMiddleware - Executed endpoint '<myproject>.Web.Controllers.ErrorController.Index (<myproject>.Web.Core)'
INFO 2019-11-29 06:02:27,665 [18 ] soft.AspNetCore.Hosting.Internal.WebHost - Request finished in 141.3386ms 200 text/html; charset=utf-8
In the meantime the main (login) page is returned OK: curl -L http://localhost:5000
<head>
<title>[myproject]</title>
<link href="/view-resources/Views/Ui/Login.css" rel="stylesheet" />
</head>
<div class="login-form">
<h1>Log in</h1>
<form method="post">
<div class="login-form-row">
<label for="TenancyName">Tenancy name</label>
<input type="text" id="TenancyName" name="TenancyName" placeholder="Tenancy name">
</div>
<div class="login-form-row">
<label for="UsernameOrEmailAddress">User name or email</label>
<input type="text" id="UsernameOrEmailAddress" name="UserNameOrEmailAddress" placeholder="User name or email">
</div>
<div class="login-form-row">
<label for="password">Password</label>
<input type="password" id="password" name="Password" placeholder="Password">
</div>
<div class="login-form-row">
<input type="checkbox" id="rememberMe" name="RememberMe" value="true">
<label for="rememberMe">Remember me</label>
</div>
<button type="submit" class="login-form-button">Log in</button>
<input name="__RequestVerificationToken" type="hidden" value="[del]" /></form>
</div>
The same commands on developer's machine (Windows) works OK, returning requested .css file, and the log is:
INFO 2019-11-29 14:16:13,183 [19 ] soft.AspNetCore.Hosting.Internal.WebHost - Request starting HTTP/1.1 GET [http://localhost:5000/view-resources/Views/Ui/Login.css](http://localhost:5000/view-resources/Views/Ui/Login.css)
INFO 2019-11-29 14:16:13,195 [16 ] NetCore.StaticFiles.StaticFileMiddleware - Sending file. Request path: '/view-resources/Views/Ui/Login.css'. Physical path: '<mypath>\aspnet-core\src\<myproject>.Web.Host\wwwroot\view-resources\Views\Ui\Login.css'
INFO 2019-11-29 14:16:13,195 [16 ] soft.AspNetCore.Hosting.Internal.WebHost - Request finished in 11.6626ms 200 text/css
We use ASP.NET CORE & Angular version of template (two separate VS solutions), template version 7.2.3. We running as Kestrel on Debian 10 and .NET Core 2.2.7 with simple command: dotnet myproject.Web.Host.dll
Binaries were published from Visual Studio 2017 using simple publishing to a folder ("File System" publish method).
Thanks!
Hi,
When we run web-host in Debian, the service starts but is not accessible from the outside of the box.
In the meantime the service can be successfully accessed inside the box, e.g. with the command: curl -L http://localhost:5000 No firewall involved, service just binds to the localhost network interface instead of external interface.
We use ASP.NET CORE & Angular version of template (two separate VS solutions), template version 7.2.3. We running as Kestrel on Debian 10 and .NET Core 2.2.7 with simple command: dotnet <myproject>.Web.Host.dll Binaries were published from Visual Studio 2017 using simple publishing to a folder ("File System" publish method).
We have tried to put Kestrel configuration options in appsettings.json Something similar to config example described here: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.2#listenoptionsusehttps-1
{
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://*:5555"
}
}
}
}
But looks like service does not use this configuration.
Thanks!