Net下,如何通过Com组件实现自己实现事务
来源:互联网 发布:java 登录验证码 编辑:程序博客网 时间:2024/05/24 06:35
1、添加对dll System.EnterpriseServices引用,并且在程序的头部使用using System.EnterpriseServices;引入命名空间。
2、书写抽象类,public abstract class TransactionControllerBase:ServicedComponent ,该类类要从ServicedComponent继承
[assembly: ComVisible(true)]
[assembly:AssemblyKeyFileAttribute("..//..//Enterprise.snk")]//强命名,snk文件在项目的根目录,可以与别的类库共用一个snk文件
5、如果是类库项目,该类库所生成的dll必须是强命名的,所以可以使用VS自带的SN(Strong Name)工具,生成签名秘钥。
在vs.net2005自带的 命令行工具(不使用自带的工具要对环境变量进行配置)
sn -k 路径/Enterprise.snk
6、把dll.注册到.Net Framework,注册的必须使用管理员的权限,否则注册会失败。
regsvcs 路径/*.dll
此路径必须是完成路径
2、书写抽象类,public abstract class TransactionControllerBase:ServicedComponent ,该类类要从ServicedComponent继承
3、集成基类TransactionControllerBase,实现自己的事务类,并在类上增加 [Transaction(TransactionOption.Required)],以启用事务
以下就是一个实现类,其他类似,也要定义自己的接口。
/// <summary>
/// 需要事务的事务控制器
/// </summary>
[ProgId("RequireTransaction")]
[Guid("E42F5FFF-823B-4F20-AE80-B13A3C991113")]
[Transaction(TransactionOption.Required)]
public sealed class RequireTransaction:TransactionControllerBase
{
public RequireTransaction() { }
}
[assembly: ComVisible(true)]
[assembly:AssemblyKeyFileAttribute("..//..//Enterprise.snk")]//强命名,snk文件在项目的根目录,可以与别的类库共用一个snk文件
5、如果是类库项目,该类库所生成的dll必须是强命名的,所以可以使用VS自带的SN(Strong Name)工具,生成签名秘钥。
在vs.net2005自带的 命令行工具(不使用自带的工具要对环境变量进行配置)
sn -k 路径/Enterprise.snk
路径就是项目所在的绝对路径
也可以使用类库项目的属性对话框的签名属性来生成强命名的dll,效果一样的。
6、把dll.注册到.Net Framework,注册的必须使用管理员的权限,否则注册会失败。
regsvcs 路径/*.dll
此路径必须是完成路径
7、现在就可以在Web Form或者MVC中调用了,引用.dll文件,实例化类,正常使用。
好了,这是第一篇文件,把自己的写代码的步骤记录下来,以备后查。
0 0
- Net下,如何通过Com组件实现自己实现事务
- ASP.NET实现COM+组件得全过程
- COM组件对象如何实现索引属性
- .NET1.1下,使用C#自动生成Word2003文档(通过操作COM组件实现)
- .NET1.1下,使用C#自动生成Word2003文档(通过操作COM组件实现)
- .NET1.1下,使用C#自动生成Word2003文档(通过操作COM组件实现)
- .NET1.1下,使用C#自动生成Word2003文档(通过操作COM组件实现)
- 在Linux下实现COM组件
- 在Linux下实现COM组件
- 如何在.NET中实现事务(1)
- 如何在.NET中实现事务(2)
- 如何在.NET中实现事务(2)
- 如何在.NET中实现事务(1)
- 如何在.NET中实现事务(1)
- 如何在.NET中实现事务(2)
- java通过jacob实现对com组件的调用
- 通过 JACOB 实现 Java 与 COM 组件的互操作
- 如何在UNIX下实现COM组件的运行环境的小“讨论”
- 键盘设置
- dts
- 越狱[HNOI2008][Codevs1851]
- Flask(8)-用户认证
- c语言开源项目
- Net下,如何通过Com组件实现自己实现事务
- 希尔排序算法(Java语言)
- mac虚拟机
- Windows 下安装GNUstep
- maven 解决jar冲突
- Android绘图基础之实现View滑动的方法
- curl 并发
- java 集合框架(1)奠定基础的接口和Collection
- Android 图片毛玻璃的实现方法