Hi,
That's weird. Could you please share a simple project with me? i will check it.
my email is shiwei.liang@volosoft.com
I send it thanks
Hi,
I recommend upgrading, because 8.1.1 has serious performance issues
Thanks
Hi,
Could you upgrade to 8.1.3?
Is there a way to solve it without upgrading? For example, can we solve as override something in our project?
Thanks
Hi,
Can you share the full error logs?
Hi,
Actually, current user has permission and it didn't throw exception from other appService with this tenant. It throwed exception when we use tenant just EventHandler.cs. So I think that we need to add tenant information in ClaimsPrincipal, is it possible or can you advice any other option? Thanks
Hi, I created an article to show how to hide ABP related endpoints on Swagger UI by simply checking from the settings page. Your requirement is almost the same, so you can follow this article and update it according to your needs.
Also, please notice if you want to hide ABP-related endpoints on Swagger UI on development time, you can use the built-in option: https://docs.abp.io/en/abp/latest/API/Swagger-Integration#hide-abp-endpoints-on-swagger-ui
Thanks, I used this method to hide endpoints before. But, we want t o manage this option dynamically. For example, if admin user select some module from UI, then we want to show it on swagger. Otherwise, users should not see this module's endpoints Is it possible?
I recommend you instead do this in a normal API controller instead of an App service as you want to return a file rather than some wrapped ajax/json response - which is what the dynamic API part of ABP will do with the AppServices.
Here is an example returning and ICS file.
[HttpGet] [AllowAnonymous] public FileResult ICS(Guid id) { var appointment = _attendanceRepo.GetAllIncluding(c => c.CalendarEvent, d => d.CalendarEvent.OwnerCalendar.Owner).First(d => d.Id == id); string output = $"BEGIN:VCALENDAR" + rt + $"VERSION:2.0" + rt + $"BEGIN:VEVENT" + rt + $"UID: calendr-" + appointment.Id + rt + $"DTSTART:" + string.Format("{0:yyyyMMddTHHmmssZ}", appointment.CalendarEvent.Start) + rt + $"DTEND:" + string.Format("{0:yyyyMMddTHHmmssZ}", appointment.CalendarEvent.End) + rt + $"SUMMARY:" + appointment.CalendarEvent.EventName + " with " + appointment.CalendarEvent.OwnerCalendar.Owner.FullName + rt + $"LOCATION:" + appointment.CalendarEvent.Location + rt + $"END:VEVENT" + rt + $"END:VCALENDAR" + rt ; HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK); var stream = new MemoryStream(Encoding.UTF8.GetBytes(output ?? "")); result.Content = new StreamContent(stream); return File(stream, "text/ics", fileDownloadName: appointment.CalendarEvent.EventName + ".ics"); }
Hi, Thank you for your comment. But, we used ajax request successfully in Angular. So, I think that we should achieve this in MVC.
Newtonsoft
I used AbpSystemTextJsonSerializerOptions configuration in our module template solution, it works actually. And, I send also response data from swagger. (I used NetTopologySuite library also).
But, when I used this module in our other module solution as a package reference, it throws self referencing loop exception.
The problem is here, the other solution which uses our module template module. I also add AbpSystemTextJsonSerializerOptions configuration in its HttpApiHostModule and WebHostModule.
Can you please confirm whether you are implementing ISoftDelete for your parent entity also, in your case for Model entity ?
Thank
Hi,
Actually, I added ISoftDelete interface in only child entities. Do we have to use it in both parent and child tables? We used only hard deletion in a parent entity.
Now I added it to the parent entity as well and it worked.
Thanks