ASP.NET MVC变量返回空运行时错误

时间:2018-07-17 00:05:51

标签: c# asp.net asp.net-mvc razor

我正在尝试使用Razor页面和ASP.NET MVC构建Web应用程序。我已经构建了与控制台应用程序相同的程序,但是无法使其用作Web应用程序。我不确定自己到底在做什么错,花了数周时间浏览教程,并多次重做。我有一种感觉,我没有正确获取表单变量或不能正确返回变量,但不确定。

我始终收到错误 RuntimeBinderException:无法对空引用执行运行时绑定,并且不确定我所缺少的内容。如果有人可以提供帮助或提出建议,我将非常感激。

型号:

public string newWriting { get; set; }
public string newWord { get; set; }
private static string _userWriting;
private string _userWord;
public int _repeatCount = 0;

public int ProcessCount()
{
    CheckWriting(_userWriting, _userWord);
    return _repeatCount;
}
public void CheckWriting(string _userWriting, string _userWord)
{
    int count = 0;
    string[] _userSplit = _userWriting.Split();
    for(int i = 0; i < _userSplit.Length; i++)
    {
    if (_userSplit[i] == _userWord + "." || _userSplit[i] == _userWord + "," || _userSplit[i] == _userWord + "!" || _userSplit[i] == _userWord + "?" || _userSplit[i] == _userWord)
       {
          count++;
       }
    }
      _repeatCount = count;
  }

视图:表格

<h1>Add a category</h1>
<p>Add a category here:</p>
<form action="/form/result" method="post">
<label for="newWriting" name="newWriting" type="text">
<input id='newWriting' name="newWriting" type="text">
<label for="newWord" name="newWord" type="text">
<input id='newWord' name='newWord' type='text'>
<button type="submit">Add</button>

&Display(返回null的内容)

<p> You used @Model.GetUserWord() @Model.GetRepeatCount() number of times.</p>

控制器:

[HttpGet("/form/result")]
public ActionResult RepeatCount()
{
return View();
}
[HttpPost("/form/result")]
  public ActionResult Create(RepeatCounter viewModel)
  {
    string newWriting= viewModel.newWriting;
    string newWord = viewModel.newWord;
    return View("RepeatCount");
  }
}

0 个答案:

没有答案