C# EF 代码首先部署到 Godaddy

Posted

技术标签:

【中文标题】C# EF 代码首先部署到 Godaddy【英文标题】:C# EF Code First Deploy to Godaddy 【发布时间】:2013-05-16 22:14:45 【问题描述】:

我在首先使用 EF 代码将我的应用程序部署到 godaddy 主机时遇到问题。我不希望我的应用创建数据库,因为数据库已经存在。

所以我在这里阅读了一些帖子并将其放入结构中:

Database.SetInitializer<myContext>(null);

现在写入临时文件时出现权限错误。

任何人都有将它部署到 Godaddy 共享主机的成功经验?

当项目使用 Model first 和 edmx 文件时,它部署得很好。

发布后我能够立即使用它..

我所要做的就是移动:

Database.SetInitializer<myContext>(null);

到 global.asax Application_Start

【问题讨论】:

我很想看看结果如何。由于信任级别,我一直无法让 EF 与 GoDaddy 共享主机合作。 【参考方案1】:

你能发布你收到的服务器错误吗?

将 db 初始化程序设置为 null 应该可以正常工作。我已经试过了。如果您发布异常,我们可能会找出发生这种情况的确切原因

【讨论】:

【参考方案2】:

您应该使用开发中生成的数据库,并从代码中删除数据库初始化程序。根据我的经验,如果我没有删除数据库初始化程序,我总是会遇到问题。

我以前遇到过一些问题。我正在使用不同的托管站点。我当时部署了我的 MVC 3 Code First 应用程序。当我部署应用程序时,我没有删除数据库初始化程序,因此应用程序删除了数据库并尝试再次创建它。但是当它创建数据库时,它得到了一个权限错误。问题是,数据库实际上是在服务器中删除的,但在托管站点 cpanel 中,它仍然存在。我向支持部门发送了一张票,问题就解决了。

【讨论】:

以上是关于C# EF 代码首先部署到 Godaddy的主要内容,如果未能解决你的问题,请参考以下文章

EF 代码首先告诉我对已经在 db 中的 db 对象进行迁移

如何首先将 EF Core 代码与 azure synapse 一起使用

升级到 .NET 4.5 和 EF5。不再能够部署 WCF 服务。

EF代码首先插入多行

C# EF6 代码优先实体状态

先用生产数据库部署实体框架代码