如何将用户存储在C#MVC中的SQLEXPRESS数据库中

本文关键字:中的 SQLEXPRESS 数据库 C#MVC 用户 存储 | 更新日期: 2023-09-27 18:11:38

我只是在学习MVC,我想把数据存储在SQLEXPRESS中,而不是提供的MDF文件中。

我上网了解到我应该更改Web.config,所以我注释掉并替换了连接字符串,如下所示:

  <connectionStrings>
    <!--<add name="ApplicationServices"
         connectionString="data source=.'SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
         providerName="System.Data.SqlClient" />-->
    <add name="ApplicationServices"
         connectionString="data source=.'SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=BuySellDB"/>
  </connectionStrings>

我希望System.Security.Membership能自动创建一个新的数据库和表来保存我的信息,但它没有——相反,它只是因为在那里找不到数据库而失败了。如果不存在新的数据库和表,我该如何配置它来创建新的数据库或表?

编辑:我在asp.net/mvc上观看教程视频,了解了如何使用DropCreateDatabaseIfModelChanges自动创建或重新创建必要的数据库和模式。我希望有一些方法可以将aspnet_*表包括在其中。。。。

如何将用户存储在C#MVC中的SQLEXPRESS数据库中

您必须使用命令promt自己创建数据库。

启动命令提示符并执行"aspnet_regsql"。向导将启动并帮助您创建数据库。

这是一个不错的示例=>http://www.ezineasp.net/post/How-to-Create-Aspnetdb.aspx

如果你想放弃这个项目。想想

  • 按照我的指示创建数据库
  • 从中创建一个sql脚本
  • 首次启动时在应用程序中使用SqlClient构建数据库

您可以检查数据库是否存在于global.asax"Application_Start"方法中

protected void Application_Start(Object sender, EventArgs e) 
{
 //... check if your database already exists, if not DO IT ;)
}

在您想要的场景中,您的数据库是一个有效的sql express MDF文件。

通常是共享解决方案的最佳方式,否则您将不得不担心数据库配置、设置数据库、哪个服务器等。如果您仍然想这样做,您需要在visualstudio的服务器资源管理器中右键单击数据连接,并发布数据库并生成脚本(如果您有任何自定义内容(,否则请使用aspnet_regsql。

然而,我仍然强烈建议,如果您共享此应用程序,请将其保存在app_Data文件夹中,并让其他用户选择是否希望它在其他地方运行。他们可以使用相同的方法发布他们认为合适的内容。