c# - 有没有办法在 C#/VB.NET 中伪造继承?

标签 c# vb.net .net-2.0

假设我想从 System.Data.SqlClient.SqlTransaction 继承密封。假设我只想在 SqlTransaction 周围放置一个包装器,并始终使用 MyTransaction 而不是 SqlTransaction。有没有一种方法可以使用隐式/扩展运算符将 MyTransaction 转换为 SqlTransaction

最佳答案

您可以创建一个具有内部事务变量的类,然后公开方法和属性。有点像这样:

public class MyTransaction
{
    System.Data.SqlTransaction myTx = someConnection.CreateTransaction();

    public void CommitTransaction() :  {
        myTx.CommitTransaction()
    }
}

您也可以让它继承自 DbTransaction,然后重写抽象和虚拟过程以使用内部 myTx 变量,但它开始变得有点复杂,没有明显的真正原因......

关于c# - 有没有办法在 C#/VB.NET 中伪造继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8510602/

相关文章:

c# - C# 线程问题

arrays - 循环遍历数组并将某些东西每隔几步放入数组中

vb.net - 如何让 try-catch 方程运行多次`

VB.NET 2012 在属性获取上设置属性

javascript - 如何使用 webbrowser 控件将 javascript 注入(inject) iframe?

c# - Silverlight 和主机 .aspx 页面之间的服务器端事件

c# - ASP.NET 文本框警报

c# - 最小起订量:设置一个方法来填充作为参数传递的对象内的集合

mysql - 如何将 DropDownList 中的正确值插入到数据库表中

sql-server - 如何将 .NET 与 sql 数据库连接?