创建 ASP.Net 会员数据库的代码
在我自己写这篇文章之前,是否有 ac# 方法可以创建由 aspnetregsql 安装的表、存储过程和视图?
Before I write this myself, is there a c# method out there floating around that will create the tables, sprocs, and views that get installed by aspnetregsql?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
据我所知,没有 API 可以直接执行此操作 -
aspnet_regsql.exe
工具无论如何都只是引用磁盘上的脚本文件。如需了解如何自行实现此功能:
您可以通过
Process.Start
手动执行aspnet_regsql.exe
。或者您可以从命令行运行该程序,并使用命令行选项转储脚本。然后将这些脚本编辑为与数据库无关(或不由您决定),将这些脚本存储为应用程序中的嵌入式资源,在运行时提取它们,并使用
SqlConnection
和ExecuteNonQuery
针对数据库运行这些脚本。以下是
aspnet_regsql.exe
的命令行选项:http://msdn.microsoft.com/en-us/library/ms229862(v=vs.80).aspx
这是我使用过的一些代码实施第二个选项:
As far as I know there is no API to do this directly - the
aspnet_regsql.exe
tool just references script files on disk anyhow.For a head start on how to implement this yourself:
You can manually execute
aspnet_regsql.exe
viaProcess.Start
.Or you can run the program from the command line, with command line options to dump out the script. Then edit those scripts to be DB agnostic (or don't - up to you), store those scripts as embedded resources in your application, extract them at runtime, and use a
SqlConnection
andExecuteNonQuery
to run those scripts against a database.Here are the command line options for
aspnet_regsql.exe
:http://msdn.microsoft.com/en-us/library/ms229862(v=vs.80).aspx
Here's some code I have used to implement the second option: