如何使用现有数据库在MVC(C#)中进行开发

时间:2018-07-17 17:05:15

标签: c# asp.net-mvc azure

我正在构建一个应用程序,该应用程序将使用当前托管在Azure SQL上的大型数据库。我也想使用ASP.net身份。此外,由于安全限制,我的本地计算机无法连接到Azure SQL数据库(我无法删除它们,它们是公司的IT策略)。

在开发时,以下任一项有意义吗?还是我不知道的另一种选择?

  1. 将大型数据库中的字段(可能还有几行示例数据)添加到Visual Studio默认使用的localdb中?如果这样做,我该如何在上线时迁移到现有的Azure数据库?

  2. 在Azure上托管开发应用程序。鉴于我需要在每次更改时都上载应用程序,所以这不是理想的选择。

2 个答案:

答案 0 :(得分:1)

  1. 您可以为进行小规模测试和演示而这样做。本质上是为了与ASP中的数据库交互,您可以创建数据库实例,并带有指向本地实例的引用链接。只要它们完全相同,您就可以在需要上线的时候更改指向公司数据库的链接。但是,您应该小心,因为使用相对较小的数据集意味着所有内容将相对平稳,快速地运行,但是如果您的编码草率,则可能会使大数据集的运行速度变慢。
  2. 在开发方面,我会亲自在本地进行小规模开发,直到您对结果感到满意为止。但是,在您进行全面发布之前,我将在一个小部分中进行试运行,以突出显示您可能已经推入的所有错误,并在天蓝色的情况下将其暂停。然后,在排除了明显的错误之后,您就可以安全得多了。

答案 1 :(得分:0)

在开发发行版分离的环境中工作:

  1. 首先需要远程数据库的 Intranet 副本,然后使用代码优先方法继续工作,
  2. 将数据库反向转换为代码优先:
  3. 启用数据库迁移:https://msdn.microsoft.com/en-us/library/dn579398(v=vs.113).aspx
  4. 首先使用以下代码将身份框架添加到Intranet数据库:https://docs.microsoft.com/en-us/aspnet/identity/overview/getting-started/adding-aspnet-identity-to-an-empty-or-existing-web-forms-project
  5. 在以后的任务中仔细维护迁移代码,发布代码后,远程数据库将自动更新