控制器中的.NET MVC var返回了不正确的结果



我到底缺了什么。我在向MVC模型添加变量时遇到问题:

var clientnumber returns the correct value (ex. 123)
var companyname returns the correct value  (ex. foo)
var blah returns "System.Web.Mvc.ContentResult" for both the clientnumber 
and companyname

控制器:

var clientnumber = GetClientNumber().ToString();
var companyname = GetCompanyName().ToString();
var blah = new UserExperience { client_number = clientnumber, us_name = 
companyname };
MYSQL.UserExperiences.Add(blah);
MYSQL.SaveChanges();

型号:

`public partial class UserExperience
{
public int ID { get; set; }
public string client_number { get; set; }
public string us_name { get; set; }
}`

您的方法GetClientNumberGetCompanyName没有返回您认为它们返回的内容。你最大的线索是.ToString()的使用。毕竟,如果(正如您所假设的(它们返回字符串值,那么为什么需要对它们调用.ToString()呢?

他们正在返回System.Web.Mvc.ContentResult对象。对象的默认字符串表示形式是其类名。

我们看不到这些方法或关于它们的任何东西,但它们似乎不是你想在这里使用的方法。它们很可能是控制器动作。您不需要ContentResult,而是需要一个字符串值。与其调用其他MVC控制器操作,不如调用所需的任何逻辑来获得这些操作所获得的值。

最新更新