C# 使用EF打开到DB的连接以执行临时查询
我是一个asp.net硬核,EF+MVC=ME+WTF 我的任务是打开与每个生产数据库服务器的连接。运行一个简单的查询“从t1中选择顶部1*,其中f1>1” 我想我可以使用system.data.sqlclient构建conn字符串,打开conn并执行查询 这似乎不起作用。每一次连接都要花很长时间 如何让db对象的实例使用EF执行此操作。我已经看到了大量的dbcontext示例,但我甚至不知道如何获得它以及它是什么 我需要连接到20个独立的DB1、TBL1、FLD1并执行上面的查询。如果它们都成功了,则返回int 200到MVC视图,即使其中一个视图失败,也只返回503C# 使用EF打开到DB的连接以执行临时查询,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我是一个asp.net硬核,EF+MVC=ME+WTF 我的任务是打开与每个生产数据库服务器的连接。运行一个简单的查询“从t1中选择顶部1*,其中f1>1” 我想我可以使用system.data.sqlclient构建conn字符串,打开conn并执行查询 这似乎不起作用。每一次连接都要花很长时间 如何让db对象的实例使用EF执行此操作。我已经看到了大量的dbcontext示例,但我甚至不知道如何获得它以及它是什么 我需要连接到20个独立的DB1、TBL1、FLD1并执行上面的查询。如果它们都成
谢谢 您可以使用
Database.Connection
在EF中获取对底层DbConnection
的引用
例如:
var dbConn = context.Database.Connection;
var cmd = dbConn.CreateCommand();
cmd.CommandText = "SELECT TOP 1 * from t1 WHERE f1 > 1";
var results = cmd.ExecuteReader();
更多关于
A-如果您不知道该实体
using (var context = new BloggingContext())
{
var blogNames = context.Database.SqlQuery<string>(
"SELECT Name FROM dbo.Blogs").ToList();
}
using (var context = new BloggingContext())
{
var blogs = context.Blogs.SqlQuery("SELECT * FROM dbo.Blogs").ToList();
}
问题是什么?我们该怎么回答呢?