将Kentico的生产数据库复制到开发中

时间:2019-08-13 16:37:36

标签: c# sql-server kentico kentico-mvc

我们有带有MVC的Kentico 11.0.26。

试图通过复制生产表来建立Kentico数据库的开发实例。使用SSMS创建新数据库,然后使用导入数据向导复制表。没有发生错误,可能是由于新数据库。

由于开发SQL Server不接受SQL身份验证,因此不得不更改连接字符串。新的连接字符串:

   <add name="CMSConnectionString" connectionString="Server=sql-server;Database=Kentico_DB;Trusted_Connection=True;MultipleActiveResultSets=False;Encrypt=True; TrustServerCertificate=True; Connection Timeout=30;" />

似乎我可以使用管理员帐户登录,但此后立即收到此错误:

  

[异常:[SimpleDataClass.AddIDWhere]:对象缺少ID   列”值,则无法执行该操作。]
  CMS.DataEngine.SimpleDataClass.AddIDWhere(DataQuery q,String   columnName)+153 CMS.DataEngine.SimpleDataClass.Update()+377
  CMS.DataEngine.AbstractInfoBase 1.UpdateData() +341
CMS.DataEngine.AbstractInfoProvider
3.SetInfo(TInfo信息)+761
  CMS.Membership.UserInfoProvider.SetUserInfoInternal(UserInfo用户)   +601 CMS.Membership.AuthenticationHelper.FinalizeAuthenticationProcess(UserInfo   用户,Int32 siteId)+273
  CMS.Membership.AuthenticationHelper.AuthenticateUser(String userName,   字符串密码,字符串siteName,布尔登录名,   AuthenticationSourceEnum源)+1478
  CMS.MembershipProvider.CMSMembershipProvider.ValidateUser(String   用户名,字符串密码)+48
  CMSPages_logon.Login1_Authenticate(对象发送者,   AuthenticateEventArgs e)在   C:\ kentico-cms \ CMS \ CMSPages \ logon.aspx.cs:500
  System.Web.UI.WebControls.Login.AttemptLogin()+155
  System.Web.UI.WebControls.Login.OnBubbleEvent(对象来源,EventArgs   e)+111 System.Web.UI.Control.RaiseBubbleEvent(对象源,   EventArgs参数)+50 System.Web.UI.Page.ProcessRequestMain(Boolean   includeStagesBeforeAsyncPoint,布尔值includeStagesAfterAsyncPoint)   +5445

1 个答案:

答案 0 :(得分:0)

我们可以将数据库从azure导出到BLOB,因为azure将为您提供.bacpac文件。
然后您可以通过导入数据层应用程序使用SSMS还原文件。