Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过连接字符串命名数据库(已删除App_数据)_C#_Asp.net Mvc_Entity Framework - Fatal编程技术网

C# 通过连接字符串命名数据库(已删除App_数据)

C# 通过连接字符串命名数据库(已删除App_数据),c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我想知道在连接字符串中我的数据库的命名位置,如下所示: <connectionStrings> <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Initial Catalog=MyDatabase;Integrated Security=True" providerName

我想知道在连接字符串中我的数据库的命名位置,如下所示:

<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Initial Catalog=MyDatabase;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>

就我所阅读的内容而言,名称应该放在
|DataDirectory |
旁边,但事实是我已经删除了
App_Data
文件夹,因为我不想在我的项目中有这样一个名称的文件夹,所以不会创建文件
.mdf
,我也不想创建

我想要的是,当进入Visual Studio Express 2013 for Web内部的
服务器资源管理器
视图时,我可以看到具有我在上面选择的名称的数据库,无论它是什么

其他

  • 我想知道没有
    应用程序数据
    文件夹的优点/缺点是什么

感谢您的帮助。

没有任何优点/缺点。Visual Studio在应用程序数据中创建临时数据库,以便您可以在本地对其进行测试。我更喜欢在项目之外托管数据库(这只是我个人的喜好)

一旦应用程序准备好进行生产。我们需要将数据库托管在单独的SQL Server中。比如说,

<add name="ConnectionString" 
   connectionString="Server=tcp:database.windows.net,1433;Database=MyDatabase;User ID=TheUsername;Password=ThePassword;Trusted_Connection=False;Encrypt=True;" />

您提出了多个问题。你应该坚持一次只问一个问题。请参阅此有关应用程序数据文件夹的信息。初始目录=MyDatabase;这里,mydatabase是您的数据库名称。您希望在应用程序中使用MDF(在这种情况下,您最好使用
App\u Data
),还是希望在SQL Server实例中使用常规DB(在这种情况下,您应该创建它)?@Kuzgun:我已经测试过了,现在我知道我的问题出在哪里了。
Server Explorer
显示的是
连接字符串的名称,而不是数据库字符串的名称@SLaks:我想要一个常规的SQL Server实例,用于创建它时使用的
code-First
。这两者之间的区别是什么?如果我想重命名
App\u Data
文件夹,可能吗?是的,可能。但您必须手动设置权限,因为App_数据是服务器进程为写访问配置的唯一位置之一。你重命名它仅仅是因为你不喜欢这个名字吗?如果是这样,那就不是打破标准惯例的好理由。我没什么好说的,只是我不喜欢文件夹的命名惯例。我认为现在只需删除它,并使用
服务器资源管理器
就可以了。@Federico您不想像msm8bball所说的那样重命名App_数据。App_数据是标准名称,除了数据库之外,它还服务于其他用途。如果您不喜欢位于App_数据内部的数据库,可以将其托管在SQL Server中。这就是我所做的,但我甚至不希望在我的项目中使用
App_数据
App_开始
。没有它们,应用程序似乎可以正常工作,所以它们不会那么重要。