Thank you Shi Wei,
When i don't inherit the MyApplicationAppService in my application service, it just means that:
ITransientDependency/ IScopedDependency / ISingletonDependencyCurrentUser / CurrentTenantIs there any impact on the UOW scope? All along I've not inherited MyApplicationAppService and I realized that for my DB transactions to complete, I keep needing to add
using(var uow = _unitOfWorkManager.Begin(requiresNew: true)){
...
Does that relate to inheriting MyApplicationAppService? Or is that because everything is happening in a single UOW for the websocket connection?
Thank you ShiWei,
I've sent the file.
Once application launched, go to https://localhost:44349/htmlpage.html then send a message. You will see this in your dev tools
Then, you will see the BE error console as raised above (snippet):
Method may only be called on a Type for which Type.IsGenericParameter is true. etc...
To resolve the error, check out my commented code in MessagingHub.cs. Swap out the method overload. However this would not allow us to pass a callback function.
Hi ShiWei,
I've noticed a similar error message pop up whenever I try to call this method in ICommunicationService
Task HandleMessage(string connectionId, string message, System.Func<string, string, Task> signalCallback)
I've made CommunicationService inherit MyApplicationAppService and the moment this method is called, it throws an error with the same message as shown above
In MessagingHub the error is thrown when the code at line 50 is called

the signalCallback passed into HandleMessage is being defined in MessagingHub:
public async Task SendMessage(string connectionId, string message)
{
_logger.LogInformation(">>> Sending WebRTC message to {connectionId}: {message}", connectionId, message);
await Clients.Client(connectionId).SendAsync("ReceiveWebRtcMessage", message);
}
Do you have any insights to the error message and possible resolution for it? I have some suspicion that it is something to do with Func<string, string, Task> callback function passed as a parameter
Hi,
I am aware of the local event bus. However would prefer to use the conventional EventHandler<TEventArgs> delegate to set up events as some other parts of our application has used those and we would like to ensure code consistency.
Are you able to provide any insights as to why the dependency injection was failing?
Thanks
Specifically, we want TenantId property to be available on OpenIdApplication table. We want to be able to map openIdapplication based on tenantId. We also need it to be visible on the Create / Update and View UI screens
thanks,
fyi managed to solve new question issue by removing
serverBuilder.SetIssuer(new Uri(configuration["AuthServer:Authority"]!));
Also, do you happen to know the change you made in this ticket: https://abp.io/qa/questions/7297/3a130461-8b69-1a8a-743f-133fccbac906
We are having the exact same issue whereby the issuer still defaults to the main domain of the backend (api.mydomain.com) instead of the subdomain (tenant.api.mydomain.com).
Hi managed to get it resolved. We realised that as part of our CI/CD pipeline, we were running dotnet publish "MyApp.sln"
During the creation of artifacts, the last project to be published is NOT the HttpApi.Host project. Hence, appsettings.json for HttpApi.Host was overwritten by another project appsettings.json.
The resolution was to only publish the needed artifact
i.e. dotnet publish "MyApp.HttpApi.Host/MyApp.HttpApi.Host.csproj"
Note: the commands are not exactly as used in our project but conveys the idea (we also added flags such as -c Release etc)
Will post the results here soon
Manage to solve with this -> https://abp.io/docs/latest/framework/fundamentals/object-extensions?_redirected=B8ABF606AA1BDF5C629883DF1061649A
Thank you, will close the ticket