gpt4 book ai didi

c# - 找不到用于带有 Entity Framework 的 MVC 4 的数据库

转载 作者:行者123 更新时间:2023-12-03 05:09:17 25 4
gpt4 key购买 nike

我尝试首先使用 C# 和 Entity Framework 代码学习 MVC 4。我已经创建了模型,创建了数据库并用种子数据填充了它。我有一个 ContextInitializer 类,每次测试时都会删除并创建数据库。当我运行它时,我可以看到我的数据填充在我的网站上,我可以编辑、创建和删除它。但我真的不知道它存储在哪里。

我查看了 webconfig 文件并看到连接字符串如下:

"Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-CCConsolidation-20140610143008;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-CCConsolidation-20140610143008.mdf"

我登录了 localdb,但根本看不到该数据库。没有任何错误。我尝试更改连接字符串并将其指向 Windows Azure 上的数据库,但仍然无法在任何地方看到该数据库。我在 App_Data 文件夹中也没有看到 mdf 文件。

所以我的问题有两个:

1)我的数据库隐藏在哪里?

2) 需要时如何将其部署到 Windows Azure?就像更改连接字符串一样简单吗?我已经尝试过了,但没有成功。

请帮忙!

注意:我在这个网站上看到了一些“类似”的问题,但答案让我看看我所做的 webconfig。我已经追踪到我的本地数据库,但仍然找不到它。

我指的问题是Where does ASP.NET MVC 4 stores accounts information?

我错过了什么吗?

<小时/>

更新了我的 Windows Azure 连接字符串:

"Data Source=xxxx.database.windows.net;Initial Catalog=CCConsolidation;Integrated Security=False;Database=xxxx;User ID=xxxx@yyyy;Password=xxxxxx;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False;AttachDBFilename=aspnet-CCConsolidation.mdf"

有人发现此连接字符串有任何问题吗?我在Webconfig中使用它来替换SQL Express,但没有创建数据库。

最佳答案

LocalDB 是 SQL Server 2012 中的一项新功能。它是一个简单的命令行可执行文件(不是服务),可以按需启动和停止数据库实例。这与应用程序的 App_Data 和旧的 AttachFile 无关。

您可以使用命令行启动、停止、删除或创建实例,例如:

SqlLocalDb create "MyInstance"
SqlLocalDb start "MyInstance"
SqlLocalDb info "MyInstance"
SqlLocalDb stop "MyInstance"
SqlLocalDb delete "MyInstance"

如果您想从 SSMS 连接到数据库,则需要指定以下数据库:

(localdb)\MyInstance

此数据库的优点是您不需要安装整个 SQL Server 实例、启动和停止服务、创建登录名、授予权限等。

database files are inside your Windows user profile folder ,并且该过程是在您自己的凭据下运行的,因此您也不需要向任何文件夹授予权限。

您可以在这里获取有关 LocalDB 的大量信息:Getting Started with SQL Server 2012 Express LocalDB

关于c# - 找不到用于带有 Entity Framework 的 MVC 4 的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24191838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com