有人能帮我吗?我花了很多时间来解决这个问题,什么都没有
这是我的实体和帮助对象:
public class Course
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
public ObjectId Id { get; set; }
[BsonRepresentation(BsonType.ObjectId)]
[BsonElement("_etag")]
public ObjectId Etag { get; set; }
[BsonElement("group")]
public KeyValueEntity<string> Group { get; set; }
[BsonElement("values")]
public GroupValuesCourse[] Values { get; set; }
}
public class KeyValueEntity<T>
{
[BsonElement("key")]
[JsonProperty("key")]
public string Key { get; set; }
[BsonElement("value")]
[JsonProperty("value")]
public T Value { get; set; }
public override string ToString()
{
return Value?.ToString();
}
}
public class GroupValuesCourse
{
[BsonElement("group")]
public KeyValueEntity<string> GroupKeys { get; set; }
[BsonElement("values")]
public KeyValueEntity<string>[] ValueKeys { get; set; }
}
和我的存储库
public async Task<IEnumerable<KeyValueEntity<string>>> GetAllForGroupAsync(string groupName, string subGroupName)
{
return await mongoDbContext.MongoDataBase.GetCollection<Course>("courses").AsQueryable()
.Where(courseGroup => courseGroup.Group.Value == groupName)
.SelectMany(courseGroups => courseGroups.Values)
.Where(subgroup => subgroup.GroupKeys.Value == subGroupName)
.SelectMany(groups => groups.ValueKeys)
.OrderBy(value => value.Value)
.ToListAsync();
}
执行后,告诉我:系统。FormatException:元素“group”与Gillie类的任何字段或属性都不匹配。就业中心。领域KeyValueEntity`1[[System.String,System.Private.CoreLib,Version=4.0.0.0,Culture=neutral,PublicKeyToken=7cec85d7bea7798e]]。但我确信映射是正确的。有人能帮我找出错误吗?
我已经用这个小技巧自己实现了。我使用了Select and First而不是SelectMany,现在可以使用了。据我所知,mongodbDriver不支持这样的硬质量。所以这是我的结果
public async Task<IEnumerable<KeyValueEntity<string>>> GetAllForGroupAsync(string groupName, string subGroupName)
{
return async coursesCollection.AsQueryable()
.Where(courseGroup => courseGroup.Group.Value == groupName)
.SelectMany(courseGroups => courseGroups.Values)
.Where(subGroup => subGroup.GroupKeys != null)
.Where(subgroup => subgroup.GroupKeys.Value == subGroupName)
.Select(groups => groups.ValueKeys)
.FirstAsync();
}
这似乎是理所当然的。对于某些课程,组为空。也许会以某种方式过滤掉。我添加了一个where子句作为示例来消除它们。
public async Task<IEnumerable<KeyValueEntity<string>>> GetAllForGroupAsync(string groupName, string subGroupName)
{
return await mongoDbContext.MongoDataBase.GetCollection<Course>("courses").AsQueryable()
.Where(courseGroup => courseGroup.Group != null)
.Where(courseGroup => courseGroup.Group.Value == groupName)
.SelectMany(courseGroups => courseGroups.Values)
.Where(subgroup => subgroup.GroupKeys.Value == subGroupName)
.SelectMany(groups => groups.ValueKeys)
.OrderBy(value => value.Value)
.ToListAsync();
}
问题:这是我的XMLfile.on第6行我得到错误“元素类型的内容”属性“必须匹配”(描述?,元*,(bean|ref|idref|value|null|list|set|map|props)?)".".
我是8Java的新手。我有一个A类对象的列表,其中A的结构如下: 现在我有了一个类A的元素L的列表,在这个列表中,我想用inactive=false更新一个名为name="test "的元素。 我可以通过编写for循环并创建一个新列表来非常轻松地做到这一点。 但是我如何使用Java8流API呢?
我正在用WebStorm做一个项目。昨天我安装了nvm&nodist来管理多个版本的Node。今天开始我的项目(在yarn start和npm start上)时,我遇到了这个错误。 抱歉,Nodist有问题。无法解析节点版本规范%s:%s 11.13.0找不到任何匹配的版本 我已经尝试修复重新安装的节点11版本,但错误仍然在这里。 有人能帮帮我吗?
问题内容: 我陷入了反应路由器路由。我收到错误消息: 这是我的 app.js : 我的 App.js 如下所示: 我的 Home.js 如下所示: 这是我的项目的层次结构: 如您所 料* ,我使用 browserify 构建 app.js 并创建 bundle.js, 并且在 index.html的 脚本标记中使用了 bundle.js * 这是我在项目中使用的所有版本。 因此,当我尝试转到“ h
> POJO摘要 对方法预授权筛选器。 在传递完全填充的对象(存在正确的用户和组组合)时,安全筛选器引发以下异常: 原因是: 请提供地址相同的指针。
如何获取属性中具有特定文本的跨度?我正在尝试提取文本“星星”后面的数字。那么我怎么能选择一个包含文本“rating_sprite星”的 span 标签,并且我希望从属性中提取值“star5”,以便我可以从文本中获取 5。 目前我没有收到任何元素! HTML代码段如下所示