gpt4 book ai didi

asp.net-mvc-4 - 在 Web.config 上添加 标记后,不会在 ASP.Net MVC 4 应用程序上创建 .mdf 文件

转载 作者:行者123 更新时间:2023-12-05 00:32:40 25 4
gpt4 key购买 nike

我正在尝试 ASP.Net MVC 4 tutorial .当我添加以下代码并构建应用程序时,我期望 Movies.mdf 文件将在 下创建App_Data 上的文件夹解决方案资源管理器 .但是,该目录中没有创建任何内容。知道为什么吗?

<connectionStrings>
<add name="DefaultConnection"
connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcMovie-2012213181139;Integrated Security=true"
providerName="System.Data.SqlClient"/>
<add name="MovieDBContext"
connectionString="Data Source= (LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>

使用:
.NET 框架 4
VS 2010

最佳答案

在我的机器上有一个完整的 MS SQL 2012 实例,而不是 SqlExpress,我遇到了这个问题。我发现通过让应用程序继续运行(而不是在 VS 捕获异常时在 Visual Studio 中停止它),我在浏览器中收到了一条有用的消息:

Directory lookup for the file "c:\users\chris\documents\visual studio 2012\Projects\MvcApplication1\MvcApplication1\App_Data\aspnet-MvcApplication1-20140225162244.mdf" failed with the operating system error 5(Access is denied.). CREATE DATABASE failed. Some file names listed could not be created. Check related errors.



这说明问题在于 sql 服务对我的应用程序目录没有写权限。

授予它权限有点棘手,因为所需的用户名没有出现在资源管理器 GUI 中(在 Windows 8 专业版中)以确保安全。 Sql Server 默认实例的用户名是 NT SERVICE\MSSQLSERVER (例如它是 NT SERVICE\MSSQL$InstanceName )我不得不手动输入它,然后给它写权限。我只是在 App_data 目录上执行此操作。

然后它起作用了。

关于asp.net-mvc-4 - 在 Web.config 上添加 <connectionStrings> 标记后,不会在 ASP.Net MVC 4 应用程序上创建 .mdf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13123515/

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