I am using AspNetZero Core+Angular.
I am receiving an "internal server error" response to an ajax call, but there is no output in the log file to figure out what is throwing the exception.
The HTTP response looks like this:
{"error":"Internal Server Error","result":null,"success":false}
And there are no errors in the Log.txt (there is Info logging, so I know logging is working).
I have writing an exception handler, but it never fires.
public class MyExceptionHandler : IEventHandler<AbpHandledExceptionData>, ITransientDependency
{
public void HandleEvent(AbpHandledExceptionData eventData)
{
//TODO: Check eventData.Exception!
}
}
I have tried overriding the exception filter which (I think) is producing the ajax wrapped exception response object, and injected it - but it also does not fire.
public class MyExceptionFilter : AbpExceptionFilter, ITransientDependency
{
public MyExceptionFilter(IErrorInfoBuilder errorInfoBuilder, IAbpAspNetCoreConfiguration configuration)
:base(errorInfoBuilder, configuration)
{
}
protected override void HandleAndWrapException(ExceptionContext context, WrapResultAttribute wrapResultAttribute)
{
base.HandleAndWrapException(context, wrapResultAttribute);
}
}
Where do I go from here?
Thanks
I have a basically default template, and everything works on localhost, but not when I deploy to Azure.
My Azure deployment is, the Angular site is hosted as an Azure Blob Storage static website, and the .net Core API is an App Service.
These are the symptoms I am experiencing.
Note: I do ensure that I reset the Azure CORS config when I'm testing the ASP ones
Thanks,
Appendix: Rick Strahls enable all origins
services.AddCors(options =>
{
options.AddPolicy(DefaultCorsPolicyName,
builder => builder.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
});
Hi,
I am building a mobile front-end for our application - and the requirement for the user to enter the tenant name is cumbersome.
For the web, this makes sense, and is not a problem, because each customer will be given a custom domain (3rd level), which provides the requisite tenancy information for the backend code.
For mobile applications, however - one cannot create a copy of the app in the app store, for each tenant (Apple app store violation - and would also just be a PITA) - so I understand why the user needs to specify a tenant when logging in.
It is, however, cumbersome for the user.
I could provide a dropdown to choose the tenant - however, because this would need to be a public API call (unauthenticated), it's a security/privacy concern - exposing the list of customer names.
Ideally, the user would log in using email/password, then be presented with a list of all tenancies which matched those credentials, allowing the user to pick one.
What would be your recommendation around achieving this?
I'm getting "ABP.io" search results coming up while Im trying to researching topics on my ASP.NET Zero site.
I'd like to know, it appears that ABP and aspnetboilerplate are both Volosoft (as are their paid counterparts) - what is the difference between ABP them all?
Thanks,
I have written an IAsyncActionFilter which needs to access the UOW after the Controller has executed its action.
My ActionFilter consumes IDbContextProvider<ProductDbContext> so that I can call "GetDbContext" after the inner action has executed.
When I do so however, I get:
System.ArgumentNullException: Value cannot be null. (Parameter 'unitOfWork') at Abp.EntityFrameworkCore.Uow.UnitOfWorkExtensions.GetDbContext[TDbContext](IActiveUnitOfWork unitOfWork, Nullable`1 multiTenancySide, String name)
I expect this is before my filter is scheduled to "wrap" the UOW filter - meaning that the UOW is not available when my filter starts, and the UOW has already been disposed by the time my filter regains control.
How do I get my filter to execute in the correct order?
Thanks,
It appears that the Project Name that is chosen during project generation, is utilized throughout localization code, such as XML files for messages. This is not a great choice, as the Project Name is usually an internal moniker, that is development friendly, not exposed to the customer. The product name is something else entirely, based on marketing choices.
The Project Name leaks through to the user interface in localized messages. Can you please implement something to allow us to control what product name appears in the various localization resources?
I.e
Have 2 text inputs in your project generator website, one for the project name (as you do today), which is utilised for the licensing, and another called "Product Name", which is used in the user interface elements, and can be changed at any time without affecting licensing.
Thanks.