我开发了一个客户端.NET WinForms应用程序.此应用程序用于使用数千条记录填充数据库.对于数据层,我使用EF6.
当我在本地工作并运行应用程序时,每件事都按预期工作.插入速度非常快(约2分钟内超过500000条记录).
现在我正在尝试在托管服务器上使用远程数据库,我注意到插入非常慢(大约2分钟内少于500条记录).这意味着比本地慢1000倍.
如果我尝试使用SQL Server Management Studio在远程数据库中插入500条记录,则操作将在不到1秒的时间内完成.
我的客户端应用程序出现问题吗?
这里的插入功能:
public void SetDemoDimCustomer()
{
DWContext dc = null;
try
{
dc = DWContext.Create(SqlServerInstance, DbName);
dc.Configuration.AutoDetectChangesEnabled = false;
dc.Database.ExecuteSqlCommand("DELETE FROM DimCustomer");
dc.Database.ExecuteSqlCommand("DBCC CHECKIDENT ('DimCustomer', RESEED, 0)");
DimCustomer objCustomer;
List<DimCustomer> lstDemoCustomers = new List<DimCustomer>();
int length = 100;
for (int i = 0; i < length; i++)
{
objCustomer = new DimCustomer();
objCustomer.Name = "Customer " + (i + 1);
objCustomer.CustomerBKey = (i + 1).ToString();
lstDemoCustomers.Add(objCustomer);
}
dc.DimCustomer.AddRange(lstDemoCustomers);
dc.SaveChanges();
}
catch (Exception) …Run Code Online (Sandbox Code Playgroud) 我正在asp.net mvc中开发一个Web应用程序。我的应用程序使用多个数据库。正在使用的数据库取决于登录的用户。我在两个级别上管理登录:
示例:在“主”数据库中,我在用户表中有一条记录,其中包含:-用户名=用户1-databaseToUse =“ specificDb1”
对于同一个用户,在名为“ specificDb1”的“特定”数据库中,我在用户表中有一条记录,其中包含管理用户身份验证所需的全部内容。
我想要实现的是:
第1点和第2点没有问题。问题出在第3点。我对(主数据库和特定数据库)数据库都使用EntityFramework 6 Code First。
关于身份的配置部分,我在Startup.Auth.cs中看到:
app.CreatePerOwinContext(ApplicationDbContext.Create);
app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create);
app.CreatePerOwinContext<ApplicationSignInManager>(ApplicationSignInManager.Create);
Run Code Online (Sandbox Code Playgroud)
我应该更改身份配置中的某些内容吗?
提前致谢。