0

在我的 Web 应用程序 (asp.net C#) 中,我添加了 Web 设置应用程序。通过这个网络设置,我需要做两件事:

1. 将文件复制到位于 IIS 上的应用程序中

2.安装时运行三个insert语句

我对第二点有问题,不知道如何修复或调试它。在自定义操作中,我已经在安装文件夹中添加了 dll 文件(主输出),这几乎是我在互联网上找到的关于在安装期间运行 SQL 脚本的所有内容。另外我需要宣布我以这种方式覆盖函数 OnAfterInstall:

string connectionString1 = string.Format("Data Source={0};Initial Catalog={1};Integrated Security=True;", Context.Parameters["db"], Context.Parameters["catalog"]);
using (SqlConnection connection = new SqlConnection(connectionString1))
{

string CommandText = "insert into Sealed (Example) values ('now is OK'); ";
SqlCommand com = new SqlCommand(CommandText, connection);  
com.ExecuteNonQuery();                
}     

如果你知道一些好的教程或书籍,描述安装过程中运行 sql 语句,它会对我有很大帮助

4

2 回答 2

2

如果您的文件被加载到 IIS 应用程序中,为什么不通过一些 XML 文件提供 INSERT sql,然后在您的应用程序中有一段代码检查包含您的应用程序可以在 Application_Start 上运行的脚本的 xml 文件的文件夹。

您需要有一种机制在它们运行后忽略它们,或者删除它们。

于 2013-04-30T22:05:09.850 回答
0

Windows Installer 是一个 SDK 和一个 Windows 平台服务,但它并不是真正的 MSI 创作工具。(ORCA 不算数。)

查看 Windows Installer XML (WiX) 或 InstallShield。它们都在 MSI 上添加了对 SQL 连接和脚本执行的支持,而无需您自己编写。

于 2013-04-30T23:25:34.013 回答