C# EF6和x27;嵌套';DbContexts-这会导致问题吗

C# EF6和x27;嵌套';DbContexts-这会导致问题吗,c#,.net,entity-framework,C#,.net,Entity Framework,下面的例子将说明我的问题: namespace ConsoleApplication1 { class Program { static void Main(string[] args) { UserService.CreateUser("NewUser"); } } public static class UserService { public static void CreateUser(string userName) {

下面的例子将说明我的问题:

namespace ConsoleApplication1
{
class Program
{
    static void Main(string[] args)
    {
        UserService.CreateUser("NewUser");
    }
}

public static class UserService
{
    public static void CreateUser(string userName)
    {
        // DB Context created to CREATE the new user
        using (var db = new TestEntities())
        {
            User userToAdd = new User();
            userToAdd.name = userName;
            userToAdd.jobTitle = JobService.LookupJob(userName);
            db.Users.Add(userToAdd);
            db.SaveChanges();
        }
    }
}

public static class JobService
{
    public static string LookupJob(string userName)
    {
        // 'nested' using, which opens up a new connection to 'read'
        using (var db = new TestEntities())
        {
            return db.JobTitlesNames.Single(a => a.userName = userName).title;
        }
    }
}

public class TestEntities : DbContext
{

}
}
这是一个非常棘手的例子,我有一个更大规模的场景。我想我的问题是:这种“嵌套”DbContext创建方法是否会在大规模应用程序中导致应用程序/sql问题。我知道这种结构是不好的做法,通常每个业务事务都应该使用相同的DbContext(在本例中,业务事务正在创建一个新用户),但是如果“嵌套”DbContext只用于读取数据,而不进行修改,这仍然是危险的吗

我所拥有的真实世界系统大量使用这种结构,偶尔会降低到4-5个嵌套级别。我遇到了(这里不打算详细讨论,这个问题更多的是理论)数据库读取/提交问题,我想知道这是否是原因

谢谢