vs2015up3项目开发后发布部署时数据库文件如何处理

chonghanyu 2016-07-29 01:28:57
在开发pc上用vs2015up3项目开发,并用iis express测试都正常。测试时在项目目录下执行dotnet ef migrations add Initial 和
dotnet ef database update
会在生成相关的数据库文件。

[参照微软官方操作说明(此链接)](https://docs.asp.net/en/latest/publishing/iis.html ""),发布新网站后并放置到服务器上(winserver2012r2)后,没有发现其附带测试中生成的数据库,也没有发现自动生成该数据库,浏览无数据访问的页面时一切正常,但导致涉及数据库的页面就会导致错误。(错误原因可以理解,因为没有拷贝数据库,程序也没自动生成。问题是关于数据库这块我应该怎么处理,应该注意些什么。拷贝过来并修改项目中的数据库连接,还是其他操作?)

appsettings.json文件内容

{

"ConnectionStrings": {

"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=aspnet-ceshi;Trusted_Connection=True;MultipleActiveResultSets=true"
},

}

想请教下,在部署到iis的时候数据库这方面怎么处理,我在服务器上项目发布的文件夹中执行dotnet ef migrations add Initial系统报错提示“no executable found matching command “dotnet-ef”” 后来查到一些资料如Windows Server 2012 R2 Standard搭建ASP.NET Core环境图文教程 但是依然没有解决数据库的问题。

另,网站在不断开发中,版本迭代很快,虽然测试的时候在开发pc上可以用 dotnet ef migrations add xxxxx 和dotnet ef database update进行数据库的更新升级,但如何在已发布到iis的网站进行相关的操作?
...全文
280 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
chonghanyu 2016-08-05
  • 打赏
  • 举报
回复
[quote=引用 4 楼 quan01994 的回复:]不是这个错误。
quan01994 2016-08-01
  • 打赏
  • 举报
回复
连接写错了,写成Data Source=(local);Initial Catalog=JobSite;Integrated Security=True
chonghanyu 2016-07-29
  • 打赏
  • 举报
回复
[quote=引用 1 楼 sp1234 的回复:] 请问下,我在iis的服务器上安装了sqlserver,导入数据库后,在数据连接时,我应该注意那些地方。
bidisty 2016-07-29
  • 打赏
  • 举报
回复
数据库要自己在服务器上部署
  • 打赏
  • 举报
回复
asp.net(以及其它流行的、大一些的 web 网站开发工具)发布的文件,通过 ftp 客户端直接传到网站上,网站既更新完毕了。 因此,IIS、数据库系统,都是服务器提供商负责安装配置的(你也可以把自己看做一个服务商)。而asp.net 网站的发布更新与其安装过程根本就是无关的。 当你第一次上传 asp.net 应用之前,你应该要求服务商的技术人员设置好 IIS 下的虚拟网站目录、在本地 SQL Server 系统中创建aspnet-ceshi 数据库,运行数据库脚本而创建所有的数据库对象。然后你才上传 asp.net 网站并理解开始服务运行。 当你的 asp.net 应用新版本更新了数据库,你需要把数据库更新脚本交给服务商去跑到 SQL Server 管理客户端上去运行一下,或者你的 asp.net 应用应该自动读取这些 DDL 脚本并传送给 SQL Server 数据库。 EF codefirst 模型并没有做到真正的 code first,它还是要要成桌面登录到服务器上,在服务器本地手动执行数据库升级操作。说白了,EF code first 其实在这方面还是纠缠于 DB first 思路,很是垃圾。真正的 code first 是自动升级数据库的,而不需要手动操作。 但是话说回来,你们除了这个,还有什么运行时稳定、安全地升级数据库的框架没有?如果没有核心技术,甚至连使用 ADO.NET 发送一些 DDL 查询语句来升级数据库都不会,只靠 EF code first 之类的,那么也就没有什么更好的办法了。你说它不好,但是可能你选择别的什么东西都同样搞不好。

62,244

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧