1
Ich weiß, wir können RedirectToAction
innerhalb einer void
Methode nicht verwenden, aber wie kann ich das folgende Szenario umgehen. Bitte beachten Sie die Kommentare, die das Szenario gut erklären.RedirectToAction innerhalb einer Void-Methode
public void CertificateVerification(string regNo)
{
try
{
var _dbRegn = _db.StudentRegistrations
.Where(r => r.RegistrationNumber == regNo)
.FirstOrDefault();
//checking if registration exist
if (_dbRegn != null)
{
var _isCertificateIssued = _dbRegn.IsCertificateIssued.Value;
//checking if certificate issued
if (_isCertificateIssued)
{
string FilePath = Server.MapPath("~/Certificates/" + _dbRegn.RegistrationNumber + ".pdf"); ;
WebClient User = new WebClient();
Byte[] FileBuffer = User.DownloadData(FilePath);
if (FileBuffer != null)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", FileBuffer.Length.ToString());
Response.BinaryWrite(FileBuffer);
Response.End();
}
}
//if certificate not issued then redirect to specific page
else
{
RedirectToAction("CertificateNotApproved");
}
}
//if registration dont exist redirect to specific page
else
{
RedirectToAction("CertificateDontExist");
}
}
catch (Exception ex)
{
RedirectToAction("CertificateDontExist");
}
}