J'ai un ancien code que je réécris en utilisant SubSonic pour aider les futurs responsables. Pour la plupart, cela a été relativement simple, car tout appelle une procédure stockée. Mais maintenant, j'ai un peu de difficulté avec un code ADO.NET fortement couplé.Comment écrire ce code en utilisant SubSonic?
Le code dépend du SqlDataAdapter pour décider quand appeler un proc stocké INSERT ou UPDATE, ce que je comprends. Comment puis-je réécrire ce code de manière SubSonic?
public void SaveInvoice(InvoiceItems invoiceItems)
{
// extraneous code removed
// invoiceItems is a dataset
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "InvoiceItem_INSERT";
cmd.Connection = conn;
updateCmd.CommandType = CommandType.StoredProcedure;
updateCmd.CommandText = "InvoiceItem_UPDATE";
updateCmd.Connection = conn;
SqlCommandBuilder.DeriveParameters(cmd);
SqlCommandBuilder.DeriveParameters(updateCmd);
adapter.InsertCommand = cmd;
adapter.UpdateCommand = updateCmd;
adapter.Update(invoiceItems._InvoiceItemTable);
}
Je suis nouveau sur SubSonic, donc toute aide est appréciée. Toutes les réponses utiles seront joyeusement mises à jour.
Savez-vous s'il existe un moyen d'obtenir un objet Command à partir du proc stocké? Le doco SubSonic fait tellement défaut. :( –
Je crois que le mieux que vous pouvez faire est d'obtenir la version de SubSonic de l'objet de commande, SPs.StoredProcName(). Commande - Je ne sais pas si cela sera utile ou non –
Je l'ai regardé, mais chaque j'essaie de l'utiliser, je reçois une exception.J'essaie de décider si cela vaut la peine de se battre, ou si je devrais laisser ce code tel quel:/ –