gpt4 book ai didi

c# - 是否可以使用 .Net EF Core 从现有数据库加载部分对象方案?

转载 作者:太空宇宙 更新时间:2023-11-03 22:29:30 26 4
gpt4 key购买 nike

我有一个使用 .net ef 创建的数据库表,其方案如下:

任务(id,标题,描述,状态)

我目前有一个完全使用这个方案的服务器,并且有一个代表这个对象的类

public class Task {

[Key]
public Guid Id { get; set; }

public string Title { get; set; }

public string Description { get; set; }

public string Status { get; set; }

}

我现在想在另一个只需要 Id 和 Status 的项目上设置另一个单独的统计服务器(只读)

public class Task {

[Key]
public Guid Id { get; set; }

public string Status { get; set; }

}

是否可以使用 .net ef core 将上下文与不代表完整方案的对象链接到我现有的数据库表?

编辑:我添加了一个图像来更好地表示所需的情况 enter image description here

最佳答案

如果我对您的理解正确,那么您有一个数据库和两个使用该数据库的项目。第一个项目处理任务,第二个项目获取有关任务的统计信息。在这种情况下,最好将两个项目组合成一个解决方案。在解决方案中,您应该使用您的实体(领域模型)提取类库。作为您的实体的示例:

public class Task {

[Key]
public Guid Id { get; set; }

public string Title { get; set; }

public string Description { get; set; }

public string Status { get; set; }

}

您还应该将访问层(dbContext、dbSet、存储库等)提取到单独的类库中。

两个项目都应该使用这两个库。每个项目都应该有自己的一组 View 类。作为 View 类的示例是:

public class Task {

public Guid Id { get; set; }

public string Status { get; set; }

}

您可以将域模型(实体)映射到您自己的 View 模型或使用类似 Automapper 的工具(第二种情况更好)。

关于c# - 是否可以使用 .Net EF Core 从现有数据库加载部分对象方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58732051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com