Acumatica-PXRedirectToFileException在2019R2中未重定向

Acumatica-PXRedirectToFileException在2019R2中未重定向,acumatica,Acumatica,我们目前正在进行升级,遇到了一个问题,我们无法再将用户重定向到我们的一个文件。我们已经尝试了所有不同的重定向方法,但举个例子来说,这是最容易展示的。如果您使用下面的操作并向其提供一个文件,则它不会执行任何操作。但是,如果将“false”更改为“true”(对于forcedownload),它确实会下载文件。这加强了我们在其他重定向方法中看到的内容。系统将不允许您重定向到URL中包含.ashx的URL 这是一个有意的改变还是一个bug?我们试了19.205.0023和19.207.0026 谢谢你

我们目前正在进行升级,遇到了一个问题,我们无法再将用户重定向到我们的一个文件。我们已经尝试了所有不同的重定向方法,但举个例子来说,这是最容易展示的。如果您使用下面的操作并向其提供一个文件,则它不会执行任何操作。但是,如果将“false”更改为“true”(对于forcedownload),它确实会下载文件。这加强了我们在其他重定向方法中看到的内容。系统将不允许您重定向到URL中包含.ashx的URL

这是一个有意的改变还是一个bug?我们试了19.205.0023和19.207.0026

谢谢你的帮助=)

公共PXAction视图文件;
[PXUIField(DisplayName=“查看文件”)]
[PXButton()]
受保护的虚拟void视图文件()
{
string fileName=Design.Current.ProofFile;//无论您想要什么文件,在本例中,它都来自自定义屏幕
UploadFile UploadFile=PXSelect.Select(这个,文件名);
UploadFileMaintenance fileGraph=PXGraph.CreateInstance();
var file=fileGraph.GetFile((Guid)uploadFile.FileID);
抛出新的PXRedirectToFileException(文件,false);
}

强制下载才是最好的选择,不是吗?网页只能向浏览器建议要做什么。无法保证页面能够将下载推送到浏览器,这取决于外部因素。如果您根本无法从浏览器下载文件,我认为可能发生了其他问题,请尝试从其他计算机上下载。当forceDownload等于true时,文件将在同一选项卡中下载,否则,将打开一个新选项卡。我想如果forceDownload标志为假,浏览器可能会阻止这个新选项卡。我使用了PXRedirectToFileException作为示例。在2019R2中,它不允许您重定向到~/Frames/GetFile.ashx?fileID=——在2019R2之前,这工作正常,我们可以在新选项卡中将用户重定向到PDF文件。
public PXAction<UsrDesign> viewFile;
[PXUIField(DisplayName = "View File")]
[PXButton()]
protected virtual void ViewFile ()
{
   string fileName = Design.Current.ProofFile; // whatever file you want, in our case it comes from custom screen
   UploadFile uploadFile = PXSelect<UploadFile, Where<UploadFile.name, Equal<Required<UploadFile.name>>>>.Select(this, fileName);
   UploadFileMaintenance fileGraph = PXGraph.CreateInstance<UploadFileMaintenance>();
   var file = fileGraph.GetFile((Guid)uploadFile.FileID);

   throw new PXRedirectToFileException(file, false);
}