我给Simple.Data打了个电话,在那里我想限制要返回的列。但是我遇到问题了..。
这样做很好:
var db = Database.Open();
var questionIdRow = db.Question.FindByFriendlyId(friendlyId);
if (questionIdRow == null) return Guid.Empty;
return questionIdRow.QuestionId;但是,以下内容不起作用(我得到了一个Simple.Data.UnresolvableObjectException‘列未找到’)
var db = Database.Open();
var questionIdRow = db.Question.FindByFriendlyId(friendlyId)
.Select(db.Question.QuestionId);
if (questionIdRow == null) return Guid.Empty;
return questionIdRow.QuestionId;我从Simple.Data文档中得到的印象是,这是限制选定列所需做的全部工作。请注意,所选内容只是选择稍后引用的同一列。
在var questionIdRow =行上抛出实际的异常。
,有人能给我指点吗?
发布于 2013-01-31 23:32:01
这是一个常见的问题,实际上在我们进入1.0之前就已经不推荐FindBy了。问题是FindBy立即返回一个记录,所以不能继续调用它的查询方法。
正确的方法是调用FindAllBy并以第一个或FirstOrDefault结尾:
var db = Database.Open();
var questionIdRow = db.Question.FindAllByFriendlyId(friendlyId)
.Select(db.Question.QuestionId)
.FirstOrDefault();
if (questionIdRow == null) return Guid.Empty;
return questionIdRow.QuestionId;https://stackoverflow.com/questions/14635966
复制相似问题