IIS 7.5在MVC4中找不到ActionLink资源

时间:2013-04-17 10:35:07

标签: c# asp.net-mvc-3 iis-7.5 html.actionlink

在我的MVC应用程序中,@Html.ActionLink控件在我的本地计算机上运行正常。 actionlink重定向到指定的操作。但是当托管在服务器中时,会出现错误“找不到资源。请检查网址”。查看代码

@Html.ActionLink(" ", "ExportToQR", "WPCheckout", new { UserID = Request.QueryString["UserID"], Partnerid = Request.QueryString["Partnerid"] }, new { @class = "btnMakeQR" })

按钮图像类

 .btnMakeQR
        {
            background: url(../Images/Generate_QR_Code.png) no-repeat top left;
            display: block;
            width: 111px;
            height: 25px;
            text-indent: -9999px; 
        }

控制器代码

public class WPCheckoutController : Controller
{
     public ActionResult ExportToQR()
     {
       // logic to get encoding value for "qrcode" from database
        QRCodeEncoder encoder = new QRCodeEncoder();
        Bitmap img = encoder.Encode(qrcode);
        string path = Server.MapPath(@"/Images/QRCode.jpg");        
        img.Save(path, ImageFormat.Jpeg);        
        return base.File(path,"image/jpeg","OrderDetails.jpg");  

     }
}

我的代码中有什么错误。 ?。有什么建议。
修改
这是我在悬停按钮图像时得到的网址。

 http://localhost/WPCheckout/ExportToQR?UserID=1013&Partnerid=ph111

1 个答案:

答案 0 :(得分:1)

查看代码,似乎您创建了一个文件/Images/QRCode.jpg。我猜你的意思是~/Images/QRCode.jpg

在第一种情况下,文件将被命名为http://localhost/Images/QRCode.jpg,由于限制问题,IIS应用程序可能无法读取该文件。在后一种情况下,它将变为http://localhost/WPcheckout/Images/QRCode.jpg

参考this comment/xxx~/xxx可能会有所不同。