3

这之间有区别吗(嵌套安装程序)

ServiceInstaller si = new ServiceInstaller();
si.ServiceName = "MyService";

ServiceProcessInstaller spi = new ServiceProcessInstaller();
spi.Account = ServiceAccount.LocalSystem;

spi.Installers.Add(si);

this.Installers.Add(spi);  

还有这个?(TransactedInstaller)

TransactedInstaller ti = new TransactedInstaller();

ServiceInstaller si = new ServiceInstaller();
si.ServiceName = "MyService";
ti.Installers.Add(si);

ServiceProcessInstaller spi = new ServiceProcessInstaller();
spi.Account = ServiceAccount.LocalSystem;
ti.Installers.Add(spi);

this.Installers.Add(ti);   

嵌套安装程序是否默认进行交易?应该首选哪种风格?

4

1 回答 1

5

如果自定义操作成功/失败, TransactedInstaller将自动调用 Commit/Rollback。

使用嵌套安装程序,您将需要在发生错误时对回滚/提交进行排序,如果您没有明确告诉它们运行,它们将不会被调用。

于 2009-03-30T10:07:53.977 回答