我正在学习实体框架,目前我正面临一个问题,我需要大约10秒钟才能从数据库中检索数据或更新行,就好像我的代码实际上停留了一段时间的时间,即使调试它一切正常。实体框架CodeFirst延迟经验
代码本身实际上按预期工作,除了这个延迟。
在谷歌上搜索,在这里我没有发现其他人与这个问题有关的实体框架。
我认为这可能与我的CodeFirstMySQLEntities
类构造函数有关,但不确定。
如果有人能为我提供指导,我将不胜感激。
这是主代码:
namespace CodeFirstMySQL
{
class Program
{
static void Main(string[] args)
{
UserRepository userRepository = new UserRepository();
userRepository.Update("Klein", "OtherName");
//delay experienced here
Console.WriteLine("done");
Console.ReadLine();
}
}
}
这是的DbContext代码:
namespace CodeFirstMySQL.Database
{
public class CodeFirstMySQLEntities : DbContext
{
public CodeFirstMySQLEntities() : base("CodeFirstMySQLEntities") { }
public DbSet<UserModel> Users { get; set; }
}
}
这是的usermodel代码:
namespace CodeFirstMySQL.Database.Models
{
public class UserModel
{
[Key, StringLength(100)]
public string firstName { get; set; }
[StringLength(100)]
public string lastName { get; set; }
}
}
这是存储库的代码:
namespace CodeFirstMySQL.Database.Repositories
{
public class UserRepository
{
public void Insert(UserModel user)
{
using (var context = new CodeFirstMySQLEntities())
{
context.Users.Add(user);
context.SaveChanges();
}
}
public void Delete(string firstName)
{
using (var context = new CodeFirstMySQLEntities())
{
UserModel user = context.Users.FirstOrDefault(x => x.firstName == firstName);
context.Users.Remove(user);
context.SaveChanges();
}
}
public void Update(string lastNameOld, string lastNameNew)
{
using (var context = new CodeFirstMySQLEntities())
{
UserModel user = context.Users.FirstOrDefault(x => x.lastName == lastNameOld);
user.lastName = lastNameNew;
context.SaveChanges();
}
}
public IList<UserModel> GetUsers()
{
using (var context = new CodeFirstMySQLEntities())
{
return context.Set<UserModel>().ToList();
}
}
}
}
连接字符串:
<connectionStrings>
<add name="CodeFirstMySQLEntities" connectionString="Server=localhost; Database=CodeFirst; Uid=root; Pwd=" providerName="MySql.Data.MySqlClient"/>
</connectionStrings>
您是否在本地调试到SQL Server的远程实例? – 2013-03-19 18:04:14
不,你可以看到连接字符串指向'本地主机' – 2013-03-19 18:04:55
啊,是的,看起来是正确的过去... – 2013-03-19 18:07:11