Ganchos de encargo en TierDeveloper

| by Ann Morris | January 07, 2005
Los ganchos de encargo son otra de característica de gran alcance y la mayoría exigente proporcionada por TierDeveloper. Los ganchos de encargo funcionan como disparadores de la base de datos. Podría ser tu propia lógica del negocio que puedes activar antes o después de realizar un ciertas acciones de la base de datos. PreHooks y PostHooks son dos maneras, con tal que por TierDeveloper, a través de quien puedes encajar tu propia lógica en el código generado. Pre los métodos del gancho se llaman antes de que se realice el acceso de base de datos mientras que se llaman los métodos del gancho del poste después de que se realicen las operaciones de la base de datos.

Los ganchos de encargo pueden ser especificados dondequiera que se realice el acceso de base de datos. Incluye operaciones estándares, métodos de la pregunta, operaciones a granel y operaciones de encargo. El usuario puede generar el código esquelético para los ganchos de encargo de los métodos seleccionados o he/she puede utilizar su propia clase de los ganchos.

Para tu conveniencia y comprensión mejor he enumerado el código de la muestra aquí que demuestra cómo TierDeveloper encaja los ganchos de encargo en el código generado. Es self-explanatory.public bonito UpdateCustomerInfo vacío (objInfo) de los clientes {el intento {… ……. ..........……. ....... CustomersHooks engancha = CustomersHooks nuevo (); estado = hooks.PreUpdateCustomerInfo (getConnection (System.Data.SqlClient.SqlConnection) (), objInfo); ¡si (estado! ¿= CustomersHooks.SUCCESS_CONTINUE) {SetStatus (== CustomersHooks.FAIL_NONCONTINUE del estado? EStatus.eFail: EStatus.eSuccess); ReleaseCommand (); vuelta;}AddCmdParameter (“@CompanyName”, TDevFramework.EDataType.eVarchar, objInfo.CompanyName, TDevFramework.EParamDirection.eInput, objInfo.IsNull (“CompanyName”)); … ……. ..........……. ..........……. ....... ExecuteNonQuery (); estado = hooks.PostUpdateCustomerInfo (getConnection (System.Data.SqlClient.SqlConnection) (), objInfo); ¡si (estado! = CustomersHooks.SUCCESS_CONTINUE) {… ……. ..........……. ....... vuelta;}SetStatus (EStatus.eSuccess); ReleaseCommand ();}retén (excepción e) {… ……. ..........……. ....... tiro e;}} clase pública CustomersHooks {const público interno SUCCESS_CONTINUE = 0; const público interno SUCCESS_NONCONTINUE = 1; const público interno FAIL_NONCONTINUE = 2; PreUpdateCustomerInfo interno público (objInfo de las conec, de los clientes de System.Data.SqlClient.SqlConnection) {/. //. Poner tu propio herereturn SUCCESS_CONTINUE del código;}PostUpdateCustomerInfo interno público (objInfo) de las conec, de los clientes de System.Data.SqlClient.SqlConnection {//. //. poner tu propio código here.return SUCCESS_CONTINUE;}}

Article Source: http://www.articleset.com



About the Author

Ann Morris - I work in a software development Organization and interested in writing technical articles.
ann@alachisoft.com » Read more articles by Ann Morris
You are welcome to publish or reprint this article free of charge, provided: