当我在VS 2017 Package Manager控制台中使用dotnet ef工具时,我收到一条关于需要更新EF Core工具的警告消息: PM> dotnet ef migrations list -s ../RideMonitorSite
The EF Core tools version '2.1.1-rtm-30846' is older than that of the runtime '2.1.2-rtm-30932'. Update the tools for the latest features and bug fixes.
20
我有一个db模型,其表如下:
A *-1 B 1
基于这个模式,我创建了一个实体数据模型,它允许我加载数据库中的所有内容。由于我还在Linq查询中使用B,所以我加载如下所示:
using(MyEntities entities = new MyEntities()){
var result = from a in entities.As.Include("B") where a.Code == 123 && a.B.Code == 321 select a;
}
结果可以由用户进一步过滤,因此我将根据用户的选择构建过滤器,如下所示:
int filterVa
我正在将一个应用程序升级到EF 2.2,但是当我尝试进行简单的连接时,使用EFCore 2.2.6会抛出“必须是一个可减少的节点”ArgumentException。
喜欢
var list = (from a in db.TableA().Include("TableC")
join b in inMemoryList on a.Id equals b.AId
select a).ToList();
如果我更改为
var list = (from a in db.TableA().ToList()
join b in inMemory
我首先得到了一个代码EF,我希望对更复杂的select语句使用原生sql。当我试图执行:
using (VaultsDbContext db = new VaultsDbContext())
{
var contracts = db.Contracts.SqlQuery("select * from Contracts").ToList<Contract>();
}
我得到了:
无法为类型为“DskVault.Models.DbModels.MetaProps”的属性“MetaProps”创建值。只支持原始类型或枚举类型的属性。
MetaProps是一
我正在尝试使用EF Core,但我需要在我的一个表上使用sql server数据类型hierarchyid。
是否可以将我的c#类中的字段指定为hierarchyid类型?
我可以在不破坏EF的情况下手动将EF创建为hierarchyid类型吗?
编辑:我尝试过这样做:
public class Entity
{
public int Id { get; set; }
public string Name { get; set; }
public SqlHierarchyId HierarchyId { get; set; }
}
虽然有人建议EF core 2.1支持
我在ef 5应用程序中使用ef pattren。create()方法存在于IDbSet中,在ef7的DbSet中不存在该方法。
Create()方法在EF5中的描述如下:
为该集合的类型创建实体的新实例。请注意,此实例未添加或附加到集合。如果将底层上下文配置为创建代理,并且实体类型满足创建代理的要求,则返回的实例将是一个代理。
代码示例:
public interface IRepository<T> where T : IDisposable {
T Create();
}
public class Repository<T> : IReposito
以前,回到EF Frameowrk时代,当需要与实体相关的实体时,以下方法就足够了。
private IQueryable<T> EntitySet(params Expression<Func<T, object>>[] includes)
{
var set = Context.Set<T>().Where(x => !x.IsDeleted);
if (includes != null)
{
foreach (var include in includes
我有一个具有抽象类的存储库项目,使用EF核心来为依赖的MVC项目获取数据。在存储库中,include()方法出现在存储库中.Set()之后的智能感知中,而不是出现在MVC项目的控制器中。如何使include()对控制器可用?谢谢。 public abstract class RepositoryBase < T >: IRepositoryBase < T > where T: class {
protected PCC_FITContext RepositoryContext {
get;
set;
}
public Reposit
我目前正在使用asp.net-core 2.1和几个.NET核心2.1库。其中两个项目基于ef 2.1库和一个模型库。现在我需要开发一个引用这两个项目的Windows服务,我想我可以简单地将它们切换到netStandard2.0。
根据,这是可能的,但是我在asp.net核心项目中有以下设置(使用SDK2.1.400):
<TargetFramework>netcoreapp2.1</TargetFramework>
但是它无法编译:
NU1202 Package Microsoft.AspNetCore.App 2.1.0 is not compatible with
以下是一些有效的EF6迁移代码:
Database.SetInitializer<CmContext>(null);
var settings = new MigrationsConfiguration();
var migrator = new DbMigrator(settings);
migrator.Update();
使用EF Core的等价物是什么?
我有一个需求,我需要查看通过IQueryable由EF运行的查询中涉及的所有表
有人能做到这一点吗?
让我们用一个例子
var cars = await (from car in DbContext.Cars
from salesperson in DbContext.SalesPersons.Where(x=>x.Id == car.SalesPersonId)
.Select(x=>x.Car));
现在让我们说,在salespersons表和Cars表中有一个CountryId列
我需要检测到上面的IQueryable使用的是汽车和SalesPerson
然后