维护网站的在线(Azure)和离线版本

本文关键字:离线 版本 Azure 网站 在线 维护 | 更新日期: 2023-09-27 18:29:36

注意:不确定问题的提问方式是否正确。这就是我对这个问题的看法,但这个问题完全有可能从一个完全不同的角度来解决,由于无知,我没有意识到这一点

问题
是否有一个内置数据库可用于开箱即用的MVC解决方案?如果是,我如何找到它的连接字符串?

当前字符串是Azure的,看起来是这样的(坦率地说,它把我吓得魂飞魄散,因为我大部分都不懂)。

<add name="DefaultConnection" connectionString="
  Data Source=(LocalDb)'v11.0;
  Initial Catalog=aspnet-Plong-20141107210818;
  Integrated Security=SSPI;
  AttachDBFilename=|DataDirectory|'aspnet-Plong-20141107210818.mdf" 
  providerName="System.Data.SqlClient" />

背景信息
我正在开发一个网站并将其发布到Azure。它与数据库有一些连接,我使用的是代码优先和实体框架。一切都很好(也许除了在显示之前上传和初始化页面需要几秒钟的时间,如果我只对Razor的标记进行了更改,这会很烦人)。

事实上,一切都是自动设置的,我根本不需要配置太多。现在,由于以下原因,它正在咬我的坐着设备。

我需要能够在本地主机上运行我的网站(如果你愿意的话,可以使用F5),因为我将离线(或者至少在非常糟糕的连接下)。我现在可以这么做,除了联系数据库引用的页面,我在那里得到了下面的错误。

我知道问题是什么——没有先使用代码设置本地DB。我想知道是否有懒人的解决方案(使用一些内置的DB和代码先行)。如果是,我该在哪里设置它?我更喜欢保持对默认连接字符串的引用尽可能完整,但如果我需要编辑它(或者,很可能添加一个新的连接字符串并引用它),我该如何学习正确的连接字符串?!(是的,我知道,这是我为让Azure为我配置一切而付出的代价。羞愧地低头。)

{"无法检查模型兼容性,因为数据库不包含模型元数据。只能为使用代码优先或代码优先迁移创建的数据库检查模型兼容性。"}

维护网站的在线(Azure)和离线版本

据我所知,这不是到SQLAzure的连接字符串,而是本地(开发)数据库的连接字符串。它将在App_Data文件夹中创建一个.mdf文件。您可以在Azure仪表板中的某个位置找到到SQL Azure的连接字符串。我使用例如在开发和生产之间切换

    public MyContext : DbContext
    {
      public MyContext()
#if DEBUG
          : base("development")
#else
          : base("production")
#endif
      {
      }
    }

不过,您也可以使用web.configweb.debug.configweb.release.config的XML转换。请注意,在本地运行应用程序时并没有真正使用web.debug.config,因此将开发连接字符串放在web.config中,并以发布模式发布应用程序,以便进行web.release.config的XML转换。

编辑:获取SQL Azure连接字符串

到达管理门户并单击SQL数据库。单击数据库并转到Dashboard。在右侧,您可以看到"显示连接字符串"。它看起来像这样:

Server=tcp:xxx.database.windows.net,1433;Database={your_db_name};User ID={your_user_id};Password={your_password_here};Trusted_Connection=False;Encrypt=True;Connection Timeout=30;