将查询转换为字符串时出错

时间:2015-04-24 22:29:40

标签: c# asp.net-mvc linq

我有一个问题,将查询转换为字符串...我做了我的研究,发现大多数答案是首先或单个附加到查询的末尾,这可以清楚地看到。我认为这可能一直是缓存问题所以清理解决方案。我在下面得到一个错误

  

错误1无法将类型'JobTracker.Models.Location'隐式转换为   '字符串'

有问题的代码:

public static string ClientIPName()
{
    string ClientIP = null;
    ClientIP = HttpContext.Current.Request.UserHostAddress;
    return ClientIP;
}

public static string LocationIPAssign()
{
    JobData db = new JobData();

    var workstationLocation = ClientIPName();
    var result = db.Locations
        .Where(l => l.AssignedIP == workstationLocation)
        .FirstOrDefault();

    return result;
}

初始错误:

  

无法将System.Linq.IQueryable类型隐式转换为字符串

任何想法可能导致此错误?

1 个答案:

答案 0 :(得分:4)

您的 public function isAuthorized($user) { // All registered users can add comment if ($this->action === 'add') { return true; } return parent::isAuthorized($user); } 电话会产生一个FirstOrDefault对象,您显然需要一个Location。我的猜测是string上的其中一个属性是您尝试返回的属性,因此请选择该值。

Location