TransactedInstaller مقابل.المثبت المتداخل
-
22-08-2019 - |
سؤال
هل هناك فرق بين هذا (المثبت المتداخل)
ServiceInstaller si = new ServiceInstaller();
si.ServiceName = "MyService";
ServiceProcessInstaller spi = new ServiceProcessInstaller();
spi.Account = ServiceAccount.LocalSystem;
spi.Installers.Add(si);
this.Installers.Add(spi);
وهذا؟(المثبت المعاملات)
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);
هل يتم التعامل مع المثبت المتداخل بشكل افتراضي؟ما هو النمط الذي يجب تفضيله؟
المحلول
TransactedInstaller سيتم استدعاء الالتزام/التراجع تلقائيًا في حالة نجاح/فشل الإجراء المخصص.
مع المثبت المتداخل ستحتاج إلى تسلسل التراجع/الالتزام بنفسك في حالة حدوث خطأ، ولن يتم استدعاؤهم إذا لم تطلب منهم صراحةً التشغيل.
لا تنتمي إلى StackOverflow