C# 如何在使用POST的输入中设置文本?

C# 如何在使用POST的输入中设置文本?,c#,asp.net-mvc,asp.net-mvc-3,razor,C#,Asp.net Mvc,Asp.net Mvc 3,Razor,当我点击submit时,我想发布以下内容来创建。仅当我点击submit时,我得到一个对象引用错误,该错误引用了id=debugTxt的输入值。我怀疑是因为我丢失了对象状态,所以出现了这个错误 所以我的问题是,如何使用来自模型的初始视图设置文本,并允许用户在发布时进行更新 @using (Html.BeginForm("Create", "PhysDoc")) { <table> <tr> <td class="title

当我点击submit时,我想发布以下内容来创建。仅当我点击submit时,我得到一个对象引用错误,该错误引用了id=debugTxt的输入值。我怀疑是因为我丢失了对象状态,所以出现了这个错误

所以我的问题是,如何使用来自模型的初始视图设置文本,并允许用户在发布时进行更新

@using (Html.BeginForm("Create", "PhysDoc"))
{
    <table>
        <tr>
           <td class="title">Debug Mode</td>
           <td>
                This input does the initial GET correctly.  On POST I get object ref error related to the value inside @Model.
                <input type="text" id="debugTxt" name="debugModeTxt" value="@Model.DebugMode" />
            </td>  
        </tr>
        <tr>
            <td>
                <input type="submit" value="Submit" />
            </td>
        </tr>
    </table>                
}
例外情况如下:


value=“@Model.DebugMode”
如果我更改
value=“True”
我的代码工作正常。但这并没有给我一个等于Model.DebugMode的初始值

试试这个。。。使用HTML帮助程序并为字段指定默认值,如下所示:

@Html.TextBox("[name]", @Model.DebugMode)
如果这不起作用,你能详细说明结果吗



调用
返回视图(“Index”)时,没有将模型传递给Index。您只是在调用视图,因此确实会得到一个空引用异常。

试试这个。。。使用HTML帮助程序并为字段指定默认值,如下所示:

@Html.TextBox("[name]", @Model.DebugMode)
如果这不起作用,你能详细说明结果吗




调用
返回视图(“Index”)时,没有将模型传递给Index。您只是在调用视图,因此确实会得到一个空引用异常。

只是确认一下,模型没有正确填充您希望设置为输入默认值的值?如果是这种情况,那么您可以从调用视图的控制器发布代码吗?(您也应该考虑为您的文本框使用@ HTML.TrimBox([lambda表达式])。使映射更容易!@ Levib -不完全正确。更新QueTeNoSO您的错误在Opthoc的代码中。正确吗?您能提供该方法的签名吗?@ Levib -在视图中抛出错误。<代码> value =“@Model.Debug
是发生异常的地方。它永远不会进入Create()请显示用于接收这些值的ActualRESULD方法,以确认您的模型是否没有正确填充,您希望将其设置为输入的默认值吗?如果是这种情况,那么请将代码从调用该视图的控制器中发布(您还应该考虑使用@ html。TeBBOXOFF(λ表达式))。对于您的文本框。使映射更容易!@levib-不完全是。已更新的问题因此您的错误出现在PhysDoc.Create()的代码中,对吗?您可以提供该方法的签名吗?@levib-该错误将在视图中引发。
value=“@Model.Debug
是异常发生的地方。它永远不会进入Create()。请显示接收这些值的ActionResult方法。这是改进后的方法。现在将调用Create方法。但是在Create()完成并调用View(“Index”)之后关于这一行,我又回到了同样的错误。如果你在代码中设置断点,debugModeTxt是否填充了适当的数据?我不知道这是什么意思。debugModeTxt参数是真实的,就像它应该的一样。更新工作没有错误。的确!谢谢你的帮助。这是一个非常恼人的错误。这是一个很好的改进现在调用Create方法。但是在Create()完成并调用View(“Index”)之后关于这一行,我又回到了同样的错误。如果你在代码中设置断点,debugModeTxt是否填充了适当的数据?我不知道这是什么意思。debugModeTxt参数是真实的,就像它应该的一样。更新工作没有错误。的确!谢谢你的帮助。这是一个非常恼人的错误。干得好