Net下,如何通过Com组件实现自己实现事务

原创 2016年05月30日 13:38:29
1、添加对dll System.EnterpriseServices引用,并且在程序的头部使用using System.EnterpriseServices;引入命名空间。

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() { }
    }

4、修改AssemblyInfo.cs文件
[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文件,实例化类,正常使用。

好了,这是第一篇文件,把自己的写代码的步骤记录下来,以备后查。





.net C# COM组件,实现EXCEL自动转换格式与如何退出EXCEL Process

using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst...
  • kywds
  • kywds
  • 2012年04月30日 10:20
  • 353

C#使用COM+实现事务控制,操作多个数据库

上面的是sqlserver的操作方式,因为我实际项目是用的oracle,就拿oracle试了一下,为了自己记录或者方便其他人,其中的demo代码我就拿了上来,仅供参考。 测试环境:VS2008+...

JACob实现java与com组件的相互操作

软件的互操作性是一个我们经常面临的问题,如果 Java 可以自由的调用其他语言和平台的成熟代码,可以充分利用您的 Java 技能,大大提高您的生产力。现有的 Java COM 互操作技术有很多种实...

COM组件:可连接对象的VC实现

我们之前使用的COM组件都是由客户端发起请求,而COM组件提供服务,这样的通信都是单向的,但是有时我们需要双向的通信,比如当一个已经提供服务的COM组件对象触发某个保留的事件时,在前一段时间我们并不知...
  • dasgk
  • dasgk
  • 2013年07月11日 11:35
  • 907

在Linux下实现COM组件

好久没有写代码啦,今天翻到大学时候写的COM组件,当时那个叫崇拜COM技术啊。在工作中(windows 平台)刚好大施拳脚。这段时间,反正没事干,想想把COM组件在Linux环境下,实现一下。 CO...

在Linux下实现COM组件(转载)

本文由导学宝转自:http://blog.csdn.net/chenspnjupt1234/article/details/5923672 好久没有写代码啦,今天翻到大学时候写的COM组...

使用COM组件实现对Excel文件的操控

1 使用COM组件操控Excel的优势和缺点 优势: 提供了完整的Excel操控能力。可以方便的进行复杂操作。 提供了对Excel文件的底层操作,工作效率高。 和VBA方式相比可以脱离特定...

java通过jacob实现对com组件的调用

项目中涉及到与第三方系统对接,我们项目是java的,对方项目提供的接口是c#的,根据网上的一些信息我们可以知道java调用com组件有一套解决方案那就是jni,另外还有一个开源的jar包,对jni的封...

WPF中使用WebBrowser Com组件,实现动态HTML抽取。

业务需求: 一个测试工具系统,在原有对静态HTML测试的基础上增加对动态HTML进行验证,验证的是HTML标签的完整性。 测试对象: 一套内部办公系统,大量使用了AngularJs,除去登录地...
  • awp0011
  • awp0011
  • 2015年03月19日 20:30
  • 1674

通过 JACOB 实现 Java 与 COM 组件的互操作

软件的互操作性是一个我们经常面临的问题,如果 Java 可以自由的调用其他语言和平台的成熟代码,可以充分利用您的 Java 技能,大大提高您的生产力。现有的 Java COM 互操作技术有很多种实现,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Net下,如何通过Com组件实现自己实现事务
举报原因:
原因补充:

(最多只允许输入30个字)