zoukankan      html  css  js  c++  java
  • .NET 1.1 下不使用 System.Web.Mail.SmtpMail 发送邮件的其它选择


          最近工作原因需要维护 ASP.NET 1.1 的程序,本来用着 C# 2.0 System.Net.Mail namespace 发送邮件用得好好得,但 ASP.NET 1.1 里面的 System.Web.Mail 死活问题就是多,于是选择其它策略,封装了邮件发送的接口,再以其它方式来实现邮件发送,于是就有了下面这些文字。

    定义抽象接口以封装所有实现:

    using System;
    using System.Web.Mail;

    namespace YywMail
    {
        
    public abstract class MySmtpMail
        
    {
            
    Fields
            
            
    Properties

            
    Methods
        }

    }


    注: 按照常理,使用前先 Open() 一下,使用后也别忘了 Close()

    实现方案一(Jmail 组件):

    在 .NET 中使用 Jmail  需要如下设置:
    1、安装jmail;
    2、找到jmail.dll;
    3、注册该组件Jmail.dll,作法是将jmail.dll文件拷贝到system32目录下,再运行命令“regsvr32 jmail.dll”(不包括引号),卸载可运行“regsvr32 /u jmail.dll”;
    4、执行Program Files\Microsoft Visual Studio .NET\FrameworkSDK\Bin\ildasm.exe(可使用Visual Studio .Net 2003 命令提示),
    格式如下:tlbimp c:\Program Files\Dimac\w3JMail4\jmail.dll /out:MyJmail.dll /namespace:MyJmail
    生成MyJmail.dll后,将它引用至项目中。

    下载组件

    接下来就是实现类的编写了:

    using System;
    using System.Web.Mail;

    namespace YywMail
    {
        
    public class JMailSmtpMail : MySmtpMail
        
    {
            
    Fields

            
    Methods
        }

    }


    实现方案二(OpenSmtp.Net 组件):

    对于还没有接触过 OpenSmtp.Net 的朋友可以先 Google 下,这里不再做概念介绍,同时它还有一个孪生兄弟 OpenPop.Net,至于 OpenSmtp.Net 我们可以在 http://sourceforge.net/projects/opensmtp-net/ 下载到,目前最新版本是 1.11。

    接下来开始进入主题:

    using System;
    using System.Web.Mail;
    using OpenSmtp.Mail;

    namespace YywMail
    {
        
    public class OpenSmtpMail : MySmtpMail
        
    {
            
    Files

            
    Methods
        }

    }


    实现方案三:

    (上面两种实现方案已经足够满足目前的需求,有必要的话再继续扩展)




     

  • 相关阅读:
    oralce索引的使用
    oracle中connect by prior的使用
    oracle函数listagg使用
    oracle函数的使用
    redis高可用集群搭建
    Node.js安装及环境配置之Windows篇
    Repeater 合并单元格
    c#16进制转浮点数单精度类型
    EF Core 实体映射表或视图
    docker 构建filebeat镜像
  • 原文地址:https://www.cnblogs.com/yyw84/p/600686.html
Copyright © 2011-2022 走看看