Prerequisites
Please answer the following questions before submitting an issue. YOU MAY DELETE THE PREREQUISITES SECTION.
- What is your product version? 8.1.0
- What is your product type (Angular or MVC)? MVC
- What is product framework type (.net framework or .net core)? >net core
Hi,
we have deployed the application on a production environment which consists of a web farm, a load balancer and 2 IIS servers (windows server 2019). When trying to export results to Excel, I get an error that the file can't be found or does not exist.
Note that we also have a pre production environment with only 1 IIS server and no load balancer. And export to Excel works fine on this environment.
I think the the problem is that the file is being saved on a temp file cache.

Do you have any sample code on how to override this behaviour and save the file temporarily somewhere other than cache?
Thanks and Regards
5 Answer(s)
-
0
Hi @ashvinu
Do you use Redis ? If not, you should switch to Redis, see https://aspnetboilerplate.com/Pages/Documents/Caching#redis-cache-integration. Default memory cache will cause problems in such an environment.
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image) -
0
Hello, no we are not using Redis.
I have tried using IDistributedCache.
I haved added the following in the Startup.cs
services.AddDistributedSqlServerCache(options => { options.ConnectionString = _appConfiguration["ConnectionStrings:Default"]; options.SchemaName = "dbo"; options.TableName = "CacheForTokens"; });and have modified the TempFileCacheManager.cs as follows:
public class TempFileCacheManager : ITempFileCacheManager { private readonly IDistributedCache _cacheManager; public TempFileCacheManager(IDistributedCache cacheManager) { _cacheManager = cacheManager; } public void SetFile(string token, byte[] content) { _cacheManager.Set(token, content); } public byte[] GetFile(string token) { return _cacheManager.Get(token) as byte[]; } }I see that the token and value is saved successfully in the table when I try to export to Excel,

but I am still getting the file not found error

Do you have any idea about what is missing to get this working?
Thanks and Regards
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image) -
0
Hello,
we figured out that the problem is actually with the direction server on the production environment.
The redirection is not able to read after the "?" in the url, for example: https://website/File/DownloadTempFile?fileType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet&fileToken=dd24ea6494374d4a8d5565e605eea86c&fileName=AuditLogs.xlsx
We are trying to look for a solution, but just in case you have any idea, please let us know.
Thanks and Regards
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image) -
0
Hi @ashvinu
I'm not sure but maybe / charecter here
application/vnd.openxmlformats-officedocument.spreadsheetml.sheetcauses the problem. Could you encode query string values and try in that way ?Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image) -
0
Hello,
the infrastructure guy on our side managed to solve the problem with the redirection server and we are now able to download Excel using the IDistributedCache.
Thanks and Regards Kirtee
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image)