Hi,
"brackets" in text means missing localization most of the time. Is it possible to access your app somehow to reproduce this problem ?
This is not a localization issue because when the page loads, the brackets are automatically removed. We cannot provide access to our application due to restricted settings. Can you provide a clue or any solution to this problem?
Hi @kansoftware
We contact with them via email but as I can see, this is the default behaviour of Metronic and I think most likely they will not offer a solution to this problem.
Any update related this issue?
Hi @kansoftware
We will report this issue to Metronic but I think grouping menu items and decreasing the main menu item number will be more user friendly.
Have you created a ticket on the Metronic support portal? If Yes, what is the expected time for a response?
We are upgrading our project from ASP.NET Zero 8 to 12.1 (Metronic V6 to V8). Currently, we are encountering issues with the main header menu. Upon increasing the number of menu items in the list, some items have become invisible, and the scrollbar is not visible to check the bottom menu items. Project Type: ASP .NET Core + jQuery.
Thanks
Currently our application is a multi tenant with single host database. But now we are switching to multi database i.e. tenant specific database. We use stored procedures, user defined functions, triggers, and so on in sql for our application.
I there a way I can manage this scripts for tenant database, so that I don't need do it manually in sql each time I create a new tenant. Also how can I maintain that for all tenant database whenever I create a new procedure.
Currently our application is a multi tenant with single host database. But now we are switching to multi database i.e. tenant specific database. We were using stored procedures to perform task. I have a StoredProcedureCalling.cs class. So my doubt is, what changes are required to be made in my StoredProcedureCalling.cs for multi-database so that during execution it will use the tenant specific database.
Below is the definition of StoredProcedureCalling.cs
using Abp.Data; using Abp.EntityFrameworkCore; using Microsoft.Data.SqlClient; using System.Data; using System.Data.Common; using CDP.EntityFrameworkCore.Repositories; using CDP.EntityFrameworkCore; using Microsoft.EntityFrameworkCore; using Abp.Domain.Entities; using System.Threading.Tasks;
namespace CDP.StoredProcedures { public class StoredProcedureCalling<TEntity, TPrimaryKey> : CDPRepositoryBase<TEntity, TPrimaryKey>, IStoredProcedureCalling<TEntity, TPrimaryKey> where TEntity : class, IEntity<TPrimaryKey> { private readonly IActiveTransactionProvider _transactionProvider;
public StoredProcedureCalling(IDbContextProvider<CDPDbContext> dbContextProvider, IActiveTransactionProvider transactionProvider)
: base(dbContextProvider)
{
_transactionProvider = transactionProvider;
}
public DbCommand CreateCommand(string commandText, CommandType commandType, params SqlParameter[] parameters)
{
var command = Context.Database.GetDbConnection().CreateCommand();
command.CommandText = commandText;
command.CommandType = commandType;
command.Transaction = GetActiveTransaction();
foreach (var parameter in parameters)
{
command.Parameters.Add(parameter);
}
return command;
}
public void EnsureConnectionOpen()
{
var connection = Context.Database.GetDbConnection();
if (connection.State != ConnectionState.Open)
{
connection.Open();
}
}
public DbTransaction GetActiveTransaction()
{
return (DbTransaction)_transactionProvider.GetActiveTransaction(new ActiveTransactionProviderArgs
{
{"ContextType", typeof(CDPDbContext) },
{"MultiTenancySide", MultiTenancySide }
});
}
}
}
And I have ActionItemAppService where I am calling the procedure
public class ActionItemsAppService : CDPAppServiceBase, IActionItemsAppService { private readonly IStoredProcedureCalling<Tenant, int> _storedProcedureCalling; public ActionItemsAppService(IDbContextProvider<CDPDbContext> dbContextProvider,IActiveTransactionProvider transactionProvider) { _storedProcedureCalling = new StoredProcedureCalling<Tenant, int>(dbContextProvider, transactionProvider); }
public async Task<List<GetActionItemsForViewDto>> GetAllActionItemsList(GetAllActionItemsInput input)
{
List<GetActionItemsForViewDto> ActionItemList = new List<GetActionItemsForViewDto>();
_storedProcedureCalling.EnsureConnectionOpen();
List<IDataRecord> outputPostDataReader = new List<IDataRecord>();
SqlParameter[] parameters = new SqlParameter[]
{
new SqlParameter(){ Direction=ParameterDirection.Input, SqlDbType =SqlDbType.BigInt,ParameterName="@TenantID",Value=AbpSession.TenantId},
};
try
{
using (var command = _storedProcedureCalling.CreateCommand("GetAllActionItems", CommandType.StoredProcedure, parameters))
{
using (var dataReader = await command.ExecuteReaderAsync())
{
if (dataReader.HasRows)
{
outputPostDataReader = dataReader.Cast<IDataRecord>().ToList();
}
}
foreach (var user in outputPostDataReader)
{
var ActionItem = new GetActionItemsForViewDto
{
Id = user.GetInt64(user.GetOrdinal("Id")),
Title = user.GetString(user.GetOrdinal("Title")),
};
ActionItemList.Add(ActionItem);
}
}
}
catch (Exception ex)
{
throw new UserFriendlyException(ex.Message + " " + ex.StackTrace);
}
return ActionItemList;
}
}
I tried this code but now i am not able to change language. I just want to change language but do not want to change date format and numeric / decimal format.