Sequence不包含匹配元素 - EntityFramework

use*_*948 22 c# wcf entity-framework wcf-data-services ef-code-first

我正在使用EF 6.1.0并且正在创建WCF服务.

首先,我创建了一个包含我的实体,Mappers和Context的类库,用于初始化EF.我还创建了一个包含上下文实例化的类,并拥有以下代码:

public IQueryable<[Entity]> GetAll()
{
    return context.[Entity].AsQueryable();
}
Run Code Online (Sandbox Code Playgroud)

另一方面,我在同一个项目上创建了一个WCF服务,并在.svc文件中调用函数GetAll(),如下所示:

public List<[Entity]> GetList()
{
    [iObject] repository = new [Object](new Context());
    return repository.GetAll().ToList();
}
Run Code Online (Sandbox Code Playgroud)

该项目正在建设中.我甚至检查了配置,它位于正确的数据库中.但是,应该创建的数据库和表不存在,并且返回中显示错误"Sequence contains no matching element".

如果这个令人困惑,您可以使用Code First Entity Framework向我指出WCF服务的一些链接.

Cei*_*isc 62

我有一个错误,我收到了System.InvalidOperationException消息,Sequence contains no matching element因为我.HasColumnType()在表配置中传递了不正确的字符串值.

  • 哦,我的上帝.我们可以为此抛出更糟糕的错误吗?感谢发布,节省了我很多时间. (9认同)
  • 由于模型中的属性错误,我收到了错误:[Column(TypeName ="decimal(9,4)")] (5认同)
  • 谢谢先生,你结识了我的一天. (3认同)

小智 11

我刚刚遇到了同样的问题.Code First from database向导生成其中一列作为[Column(TypeName = "date")].

打电话.saveChanges()导致了Sequence contains no elements.

将定义的列更改[DataType(DataType.DateTime)]为按预期工作后.


Rah*_*one 6

添加迁移或更新数据库时,我也遇到了同样的错误.

原因是我使用了错误的列类型

[Column("ImageType", TypeName = "varchar(20)")]
public string ImageType
{
     get;
     set;
}
Run Code Online (Sandbox Code Playgroud)

但当我从varchar中删除20时,它开始为我工作

[Column("ImageType", TypeName = "varchar")]
public string ImageType
{
    get;
    set;
}
Run Code Online (Sandbox Code Playgroud)