I have noticed that the menu no longer slides left when you click the "3 hypen" icon at the top in v6. I looked to see if this had been reported yet but did not see anything here in the support group. I apologize I do not know what the actual name of this activity is so hopefully my description is clear enough.
Thank you,
Matt
I have a very strange issue which I am unable to track down the root cause. I have a new Categories table which I have generated a navigation property to my Codes table to for statuses with the RAD Tool. The Category entity and DTO have a CodeId property generated however when the code is executed for GetAll in Categories I get CodeId is an invalid column name. Here is the complete error message. I am sure its something I did not do correctly however I have something similar working with two other tables without issue. I am looking for insight into what to look for as I am still learning this greate framework!
ERROR 2018-10-08 10:08:50,378 [9 ] Mvc.ExceptionHandling.AbpExceptionFilter - Invalid column name 'CodeId'.
System.Data.SqlClient.SqlException (0x80131904): Invalid column name 'CodeId'.
at System.Data.SqlClient.SqlCommand.<>c.<ExecuteDbDataReaderAsync>b__122_0(Task`1 result)
at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.ExecuteAsync(IRelationalConnection connection, DbCommandMethod executeMethod, IReadOnlyDictionary`2 parameterValues, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncQueryingEnumerable`1.AsyncEnumerator.BufferlessMoveNext(DbContext _, Boolean buffer, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncQueryingEnumerable`1.AsyncEnumerator.MoveNext(CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.AsyncQueryMethodProvider.GetResult[TResult](IAsyncEnumerable`1 valueBuffers, Boolean throwOnNullResult, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncLinqOperatorProvider.TaskResultAsyncEnumerable`1.Enumerator.MoveNext(CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncLinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext(CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteSingletonAsyncQuery[TResult](QueryContext queryContext, Func`2 compiledQuery, IDiagnosticsLogger`1 logger, Type contextType)
at F2TEK.SKUHive.Inventory.CategoriesAppService.GetAll(GetAllCategoriesInput input) in D:\Projects\C-Sharp\SKUHive\aspnet-core\src\F2TEK.SKUHive.Application\Inventory\CategoriesAppService.cs:line 55
at lambda_method(Closure , Object )
at Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync()
at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync()
at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)
at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextExceptionFilterAsync()
ClientConnectionId:b69e3411-e6c3-4533-abaa-f03557620d7a
Error Number:207,State:1,Class:16
Hi ismcagdas,
Thank you for the quick response. We were just a few screens into development of our new product and decided it would be very worthwhile to upgrade at this time.
We never touch the master branch of the framework so the issues are very limited with our merge. Here are the steps we took and the methods utilized to correct the issues.
public ProductsExcelExporter(
ITimeZoneConverter timeZoneConverter,
IAbpSession abpSession)
{
_timeZoneConverter = timeZoneConverter;
_abpSession = abpSession;
}
**After**
using _CompanyName.Product_.Storage;
public ProductsExcelExporter(
ITimeZoneConverter timeZoneConverter,
IAbpSession abpSession,
ITempFileCacheManager tempFileCacheManager)
: base(tempFileCacheManager)
{
_timeZoneConverter = timeZoneConverter;
_abpSession = abpSession;
}
<td style="width: 130px"
[hidden]="!isGrantedAny('Pages.Warehouses.Edit', 'Pages.Warehouses.Delete')">
<div class="btn-group dropdown" dropdown container="body">
<button dropdownToggle class="dropdown-toggle btn btn-sm btn-primary">
<i class="fa fa-cog"></i><span class="caret"></span> {{l("Actions")}}
</button>
<ul class="dropdown-menu" *dropdownMenu>
<li>
<a href="javascript:;"
(click)="viewWarehouseModal.show(record)">{{l('View')}}</a>
</li>
<li>
<a href="javascript:;"
*ngIf="permission.isGranted('Pages.Warehouses.Edit')"
(click)="createOrEditWarehouseModal.show(record.warehouse.id)">{{l('Edit')}}</a>
</li>
<li>
<a href="javascript:;"
*ngIf="permission.isGranted('Pages.Warehouses.Delete')"
(click)="deleteWarehouse(record.warehouse)">{{l('Delete')}}</a>
</li>
</ul>
</div>
</td>
The big items here were removing normalizedPosition and replacing with dropdown and adding the href="javascript:;" statements. 8. Updated our main.module.ts with import { BsDropdownModule } from 'ngx-bootstrap'; and then added BsDropdownModule.forRoot(), in the @NgModule imports section
At this point we believe we have rectified the challenges with a single screen so the others must be updated accordingly. At this point we can add, view, delete, and edit any of the information on this screen as before and the Action performs as expected.
We did notice in the users.component.html button input that the class dropdown-toggle was repeated as shown below. We are assuming this is not a requirement and does not need it replicated.
<button dropdownToggle class="dropdown-toggle btn btn-sm btn-primary dropdown-toggle">
One thing we did notice that is not our code. Previously the sample Dashboards page had values that would randomly populate to show graphs and data, now all of them just show "No data" as a message.
If you feel other steps are required or items should be checked please let me know. I posted all of this here in hopes to help others with their upgrade challenges and a reminder for myself.
Thanks again for your help.
Matt
This is my first upgrade between releases of ASPNetZero and I am wondering if there are specific details I missed. I had a compile issue with the ExeclExporter and found the corrected code within the product itself with the TempCache. My environment is AspNet Core with Angular 6. I was using v5.6.2.
All of my Angular Actions are not working. I am assuming a change was done in either the input or div statements so the question is where do I find the details of the breaking change so I know what action I need to take to correct the non-functioning Action events on the screen now. Is there a script I should run or do I need to do diff's on the framework code to just "learn" how to fix this.
Thank you,
Matt
So does this just automatically use this table if a record exists? I have been unable to locate any documentation on this table is utilized by the framework. Meaning, if I load all the fields from the language XML file the framework will use this table without any other coding or configuration?
amitjpat - this is a great question from my perspective as I just learned how to get ANZ with Core and Angular 6 working and additionanl documentation would be beneficial.
First, deploy your ASP.NET solution by right-clicking on the Web.Host project and selecting publish. You will need to set your appsettings.production.json as Publish is a release which equals production. At this point its like any other IIS ASP.NET release. You should be able to point to the URL you specified in your appsettings.production.json file, if you also matched it in IIS. I recommend this first to verify IIS is hosting your application correctly.
Once the above step is complete you will need to install cors.exe and rewrite_amd64.msi on your web server. These items are very important to support the web.config and appsettings.json files in your angular application. To deploy your angular portion perform ng build --prod to create the dist directory for deployment. Also, make sure to add the web.config file from the root of your angular directory that was included with your download.
Deploy this to your root IIS folder. I recommend looking at the Azure release documentation on ASPNETZero.com as it does give some details on setups not stated here.
Everything above assumes you are hosting on a Windows 2016 web server. If everything is deployed correctly and setup in IIS the application should execute as expected.
Good luck!
Matt
Is it possible for each tenant to have a different language file to allow them to rename screen labels and information? I have a situation where two tenants use the same fields however their business model has a different name for some of the screen labels.
Thanks,
Matt
I found the answer was an issue with not having the web solution file in the root directory based on the tool looking in WebContentDirectoryFinder.cs. *.Web.sln file must be in the same directory so do not remove or move this file.
I am using AspNet-Core with Angular version 5.6.2 with a new project. When I try to Generate from the RAD Tool I keep getting the following error message. All messages have been included for clarity:
-> WarehousesAppService.cs is being generated.
-> IWarehousesAppService.cs is being generated.
-> WarehouseConsts.cs is being generated.
-> CreateOrEditWarehouseDto.cs is being generated.
-> WarehouseDto.cs is being generated.
-> GetAllForLookupTableInput.cs is being generated.
-> GetAllWarehousesInput.cs is being generated.
-> GetWarehouseForView.cs is being generated.
-> GetWarehouseForEditOutput.cs is being generated.
-> Warehouse.cs is being generated.
-> AppPermissions.cs is being modified.
-> AppAuthorizationProvider.cs is being modified.
-> SKUHiveDbContext.cs is being modified.
-> CustomDtoMapper.cs is being modified.
Running add-migration...
System.Exception: Could not find content root folder!
at F2TEK.SKUHive.Web.WebContentDirectoryFinder.CalculateContentRootFolder() in D:\Projects\C-Sharp\SKUHive\aspnet-core\src\F2TEK.SKUHive.Core\Web\WebContentFolderHelper.cs:line 30
at F2TEK.SKUHive.EntityFrameworkCore.SKUHiveDbContextFactory.CreateDbContext(String[] args) in D:\Projects\C-Sharp\SKUHive\aspnet-core\src\F2TEK.SKUHive.EntityFrameworkCore\EntityFrameworkCore\SKUHiveDbContextFactory.cs:line 15
at Microsoft.EntityFrameworkCore.Design.Internal.DbContextOperations.CreateContext(Func1 factory) at Microsoft.EntityFrameworkCore.Design.Internal.DbContextOperations.CreateContext(String contextType) at Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations.AddMigration(String name, String outputDir, String contextType) at Microsoft.EntityFrameworkCore.Design.OperationExecutor.AddMigrationImpl(String name, String outputDir, String contextType) at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.<>c__DisplayClass3_0
1.b__0()
at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action) Could not find content root folder! -> warehouses.component.ts is being generated. -> warehouses.component.html is being generated. -> create-or-edit-warehouse-modal.component.html is being generated. -> create-or-edit-warehouse-modal.component.ts is being generated. -> view-warehouse-modal.component.html is being generated. -> view-warehouse-modal.component.ts is being generated. -> main.module.ts is being modified. -> main-routing.module.ts is being modified. -> app-navigation.service.ts is being modified. -> service-proxy.module.ts is being modified. -> SKUHive.xml is being modified.
Code generation is complete. Press ENTER to exit...
I never received this message with my demo application so I am confused on why it is occuring on my branded project.
Thank you for the details. Is version 6.0 being released soon?