我在问问题时不太清楚我的名字,所以请原谅我,我也没有接受任何正式的培训,但是我很沮丧。
我正在从.Net 4.7.1到.Net Core 2.1进行中期升级,我的解决方案由两部分组成:一个用于MVC的IIS Web应用程序和一个控制台应用程序,IIS应用程序显示数据,而控制台应用程序执行所有实际处理。
在我需要从数据库中获取内容之前,在为控制台应用程序启动此端口之前,我只会
using (var db = new ApplicationDbContext())
{
SomethingModel model = db.X.First(x => x.Whatever == whatever);
}
Run Code Online (Sandbox Code Playgroud)
就像我从数据库中获得我想要的数据一样,butttt您认为我可以使用Core 2.1做到这一点吗?
我已经将所有代码都移植了下来,所有的参考文件都已解决,据我所知,它已经可以运行了。除非我无法从数据库中调用数据并陷入困境,否则google只显示代码优先和ef的东西,或者我不知道im真正在问什么。
因此,如果有人可以帮助它,我们将不胜感激
-更新1 ---
错误是非静态字段,方法或属性Program._db要求对象刷新
DbModel在IIS App的Data / ApplicationDbContext.cs中定义,如下所示
public ApplicationDbContext(DbContextOptions<ApplicationDbContext>
options)
: base(options)
{
}
Run Code Online (Sandbox Code Playgroud)
-控制台应用程序的Program.cs
class Program
{
private ApplicationDbContext _db { get; }
public Program(ApplicationDbContext context)
{
_db = context;
}
static void Main(string[] args)
{
new ExecutionEngine(_db).Run();
}
}
Run Code Online (Sandbox Code Playgroud)