asp.net - 为什么实体框架的上下文对象在控制器中声明但不能在存储库中时可以访问其属性?
问题描述
我是实体框架的新手。我正在尝试将它与 ASP.NET MVC 一起使用。当我创建实体框架模型类的对象时,即控制器中的上下文,然后上下文可以访问它的属性,即模型名称、SaveChanges
属性等,但是当我在存储库中使用它时,InfoLayerRepository
即使已初始化,上下文也不会访问任何内容。
为什么?
内部控制器:
public ActionResult Create()
{
EFTestEntities context = new EFTestEntities();
Info info = new Info()
{
Name = "Hunain",
FatherName = "Hafeez Ullah Khan"
};
context.Info.Add(info);
context.SaveChanges();
return View();
}
内部回购:
using EFTest.Models;
namespace EFTest.DAL
{
public class InfoLayer
{
EFTestEntities context = new EFTestEntities();
Info info = new Info()
{
Name= "Hunain",
FatherName= "Hafeez Ullah Khan"
};
}
}
注意:我将实体数据模型保存在 MVC 的 Models 文件夹中。
解决方案
推荐阅读
- python - 使用 Python 日志记录消息和标准错误
- json - 带 curl 的 Keycloak POST(创建用户和组)
- javascript - 使变量与对象方法相等
- windows - 如何检测正在进行的 webex 会议或 google 会议
- bash - 如何使用自定义文件夹中的所有脚本,例如 macOS 中的本机 shell 命令
- javascript - 在本地捕获 mux.monitor 对象
- python - 如何从不同表中的字段创建复合外键?
- node.js - TypeORM - 如何在不先获取关系的情况下使用外键插入表
- jupyter-notebook - 使用 sys.stdout 时 jupyter 笔记本单元未终止
- firefox - 如何通过命令行编辑 about:config 中的配置,而无需重新启动 Firefox 来应用它?