Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 页面在IIS7.5中返回异常,在VS2010调试中运行良好_C#_Asp.net_Visual Studio 2010 - Fatal编程技术网

C# 页面在IIS7.5中返回异常,在VS2010调试中运行良好

C# 页面在IIS7.5中返回异常,在VS2010调试中运行良好,c#,asp.net,visual-studio-2010,C#,Asp.net,Visual Studio 2010,向现有MVC网页添加一些代码。现场的所有其他部分继续正常工作。在VS2010中运行Debug,代码可以正常运行。上传到IIS 7.5后,它返回以下异常。有什么想法吗?如果需要,可以提供附加代码 谢谢 下面是cshtml代码 @using (Html.BeginForm("RemoveContribution", "Cart")) { <input type="submit" data-role="button" data-inline="true" data-iconpos="note

向现有MVC网页添加一些代码。现场的所有其他部分继续正常工作。在VS2010中运行Debug,代码可以正常运行。上传到IIS 7.5后,它返回以下异常。有什么想法吗?如果需要,可以提供附加代码

谢谢



下面是cshtml代码

@using (Html.BeginForm("RemoveContribution", "Cart"))
{
<input type="submit" data-role="button" data-inline="true" data-iconpos="notext" data-icon="delete" data-iconpos="right" />
<input type=hidden name=Ref_Num value='@c.RefNum' />
}
@使用(Html.BeginForm(“RemoveContribution”、“Cart”))
{
}


如果您允许,MVC框架将为您处理类型转换等:

public ActionResult RemoveContribution(int? Ref_Num = null)
{
    if (Ref_Num == null)
    {
        // report an error or whatever
    }
    else
    {
        // do something with Ref_Num
    }
}

MVC框架中有很多代码支持这种功能,这样您就不必继续处理类型转换之类的问题。

看起来像
表单[“Ref_Num”]
,因此
@c.RefNum
为null……错误是关于System.Number.StringToNumber的,表单[“Ref_Num”]为null。您的方法实现了[HttpPost]还是检查了@c.RefNum的值?这是POST中的trace.axd,显示了表单集合和Ref_Num值。错误似乎暗示了其他情况。建议您提取操作顶部的RefNum值,在其周围抛出try..catch块,并验证是否可以首先提取该值。根据应用程序运行的位置,提取操作顶部的值仍会产生不同的结果。在VS2010中,该值不为null并传递。在IIS 7.5中,该值为null并引发异常。
@using (Html.BeginForm("RemoveContribution", "Cart"))
{
<input type="submit" data-role="button" data-inline="true" data-iconpos="notext" data-icon="delete" data-iconpos="right" />
<input type=hidden name=Ref_Num value='@c.RefNum' />
}
public ActionResult RemoveContribution(int? Ref_Num = null)
{
    if (Ref_Num == null)
    {
        // report an error or whatever
    }
    else
    {
        // do something with Ref_Num
    }
}