0
我有一些遗留代码,我正在使用SubSonic重写以帮助未来的维护人员。在大多数情况下,它是相对简单的,因为所有东西都会进行存储过程调用。但是现在我在使用一些紧密耦合的ADO.NET代码时遇到了一些困难。如何使用SubSonic编写此代码?
代码依赖于SqlDataAdapter来决定何时调用INSERT或UPDATE存储过程,我理解。我怎样才能以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);
}
我是新来的SubSonic,所以任何帮助表示赞赏。所有有用的答案都会高兴地提出。
你知道是否有办法从存储过程中获得一个Command对象? SubSonic doco非常缺乏。 :( – 2009-04-22 14:13:30