Base solution for your next web application
Starts in:
01 DAYS
01 HRS
01 MIN
01 SEC

Activities of "sumitshah"

Thank you, we were able to successfully disable the job

Owner Entity

namespace Infogroup.IDMS.Owners
{
    [Table("tblOwner")]
    public class Owner : Entity 
    {

        [Required]
        public virtual string cCode { get; set; }

        [Required]
        public virtual string cCompany { get; set; }

        [Required]
        public virtual string cAddress1 { get; set; }

        [Required]
        public virtual string cAddress2 { get; set; }

        [Required]
        public virtual string cCity { get; set; }

        [Required]
        public virtual string cState { get; set; }

        [Required]
        public virtual string cZip { get; set; }

        [Required]
        public virtual string cPhone { get; set; }

        [Required]
        public virtual string cFax { get; set; }

        [Required]
        public virtual string cNotes { get; set; }

        [Required]
        public virtual bool iIsActive { get; set; }

        [Required]
        public virtual DateTime dCreatedDate { get; set; }

        [Required]
        public virtual string cCreatedBy { get; set; }

        public virtual string cModifiedBy { get; set; }

        public virtual DateTime? dModifiedDate { get; set; }


        public virtual int DatabaseId { get; set; }

        [ForeignKey("DatabaseId")]
        public Database DatabaseFk { get; set; }
		
    }
}

CreateOrEditOwnerDto

namespace Infogroup.IDMS.Owners.Dtos
{
    public class CreateOrEditOwnerDto : EntityDto<int?>
    {

            public string cCode { get; set; }

            public string cCompany { get; set; }

            public string cAddress1 { get; set; }

            public string cAddress2 { get; set; }

            public string cCity { get; set; }

            public string cState { get; set; }

            public string cZip { get; set; }

            public string cPhone { get; set; }

            public string cFax { get; set; }

            public string cNotes { get; set; }

            public bool iIsActive { get; set; }

            public int DatabaseId { get; set; }

            public string cCreatedBy { get; set; }

            public string cModifiedBy { get; set; }

            public DateTime dCreatedDate { get; set; }
    }
}

Thank you, but could you please explain how and where this needs to be implemented. If would be very helpful if you could share a code snippet for the implementation.

Also, say if I cache a 1000 rows of a SQL table and all the consequent requests are catered from the cache. Now, the admin adds 2 more rows to the table, when and how can we refresh the cache so that the end users always get the fresh data.

But if I override with UseRedis, everything is getting cached on redis server. I just want to cache custom tables on redis and rest all remains as is. That is, rest of the abp tables should be cached in-memory

You mean to say leave UseRedis commented right? Cause if we uncomment the code, all the caching is done on redis.

If we inject the AbpRedisCacheManager class, how can we define the connection string of the server. It always takes localhost:6379 as the connection string. My web server and the redis server would be placed on different physical servers. Below is the code snippet of the impelementation:

If I run it locally with redis server setup on my machine, everything is working as desired. But what if I want to point to a different redis server.

Thank you,

We have setup the caching of a particular table as mentioned and the same is getting cached as desired using the cacheManager.

While unit testing we came across a scenario. Post uncommenting the use of Redis as cacheManager, everything is getting saved on the redis server(setup on a separate machine as a windows service). THis includes the token validity key as well. THis key is being validated every time a api request is made from the ValidateToken method(JwtSecurityTokenHandler.cs file)

If for some reason the Redis service stops or the machine altogether reboots/shuts down, the entire site stops and the user is redirected to the login page.

THis is not the case if we have multiple web servers(load balanced) and we are using in-memory caching instead of Redis. We tried this by login into our website(the request is being served by server 1), browsing the website for a while. Then stopping the IIS of server 1 and trying to browse the site further, the request is automatically served by server2 without user getting throw out to the login page.

How can this be achieved when using distributed caching?

Also, is there a possibility that the system uses pre-defined in-memory caching for caching the token and abp tables, while for caching particular SQL tables we use distributed caching.

Answer

Hi,

we have decided to keep this issue on hold for a while as we have been busy working on other tasks. will send you the code as and when we are done with our on going release.

Thank you for the help.

Answer

Thanks for the analysis, we have checked our website and its functioning all normal with slowness in loading the login form. We are not getting any CORS error. Could you please try the secure url i.e.

https://idmsvnext.infogroup.com

We have deployed our website on an on-premise server and it is not hosted in cloud. When deployed in azure cloud, it seems all the bundles are gzipped and cloud itself is taking care of unzipping/caching the bundle files.

We checked the site you have deployed in azure and the bundle size for main.js is 4.5MB but it is cached. In our case the main.js is 4.4MB but evey time we are loading the landing page the file is getting downloaded and hence the slowness.

Answer

Hi, I upgraded to the latest version of angular and angular cli(8.3.2), earlier it was 8.0.1 and tried publishing the code again. but there seems to be hardly any change in the file size and so the performance. Below are the print screens

Please suggest.

Answer

Hi,

Thank you for the quick response.

Below are the steps, how we are deploying the website:

  1. We are publishing the web.host project(from visual studio 2017 professional edition)
  2. Similarly, we are using 'ng build --prod' command to publish the angular project
  3. Then zipping the files and sending it to the webserver
  4. On the webserver we are deploying the client and server as single website(by setting up localhost in the appsettings.production.json file)
  5. Below is the snippet of the config file:

{ "ConnectionStrings": { "Default": "Server=XX.XX.XX.XX; Database=TestDB; Trusted_Connection=False;User ID=TestUser;Password=xxxxx;" }, "App": { "ServerRootAddress": "https://localhost:XX", "ClientRootAddress": "https://localhost:XX/", "CorsOrigins": "https://localhost:XX/" } } 6) And below is the snippet of the appappconfig.production.json file

{ "remoteServiceBaseUrl": "https://idmsvnext.infogroup.com:XX", "appBaseUrl": "https://idmsvnext.infogroup.com:XX/", "localeMappings": { "angular": [ { "from": "pt-BR", "to": "pt" }, { "from": "zh-CN", "to": "zh" }, { "from": "he-IL", "to": "he" }, { "from": "es-MX", "to": "es" }, { "from": "vi", "to": "en" } ], "moment": [ { "from": "es-MX", "to": "es" }, { "from": "zh-Hans", "to": "zh-cn" }, { "from": "vi", "to": "en-gb" } ] } }

Showing 41 to 50 of 59 entries