【发布时间】:2025-12-24 22:25:21
【问题描述】:
如何从静态函数中获取包含数据库中所有数据和参考数据的列表?我尝试使用db.Configuration.LazyLoadingEnabled = true;,但该函数只返回项目信息,参考数据为空。
public static Project GetProject(Guid ProjectID)
{
if (!ProjectID.Equals(null))
{
using (var db = new dbEntity())
{
return db.Projects.Single(Project => Project.Id.Equals(ProjectID));
}
}
return null;
}
错误:
ObjectContext 实例已被释放,不能再使用 用于需要连接的操作。
我在哪里调用函数:
@{var project = StaticMethods.GetProject(Guid.Parse(ViewContext.RouteData.Values["id"].ToString()));}
@for(var item in project.Users().ToList()){
....
}
【问题讨论】:
-
Project的结构是什么 -
@MichaelRandall 它是一个自动生成的模型,来自 db ``` public System.Guid Id { get;放; } 公共字符串名称 { 获取;放; } 公共字符串号码 { 获取;放; } 公共虚拟 ICollection
用户 { 获取;放; } ``` -
另外,如果
ProjectID是null,if (ProjectID.Equals(null))将抛出 NullReferenceException。
标签: c# asp.net-mvc entity-framework