叶子的家

~●    ~●  ~●          ~●   ~●~●                           ○
    离成功还很远,距离长着叻,Fighting!
posts - 42, comments - 675, trackbacks - 17, articles - 1
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

利用Castle Framework发email是如此easy

Posted on 2006-03-08 20:50 绿叶 阅读(2025) 评论(5)  编辑 收藏
        最近要在项目中发送对用户发送各种各样的邀请函,项目是使用castle作为框架的。发现castle中的一个Component(email sender)是封装了System.Web.Mail,而framework再对这个Component封装,从而使他email支持模板,废话少说,看具体用法吧:

配置:
        1.在web.config中的配置smtp的几个简单参数:
<monoRail smtpHost="host name" smtpUsername="username" smtpPassword="password">
.
</monoRail>

        2.在views目录下建个mail目录,放email模板,比如:(invitation.vm)
from:$from
to:$to
subject:$subject

<html>
<head>
<title>邀请函</title>
</head>
<body>
$name 邀请你XXXXX
</body>
</html>


        3.先用PropertyBag.Add模板的的参数,比如:PropertyBag.Add("from", "wjshome#gmail.com")

        4.使用RenderMailMessage("invitation")函数获取一个Message对象
这里你可以更改他的encording,中文可以设置成"gb2312"。
还可以更改message的format,做format时,框架已经自动帮你处理了,如果检测到模板中包含<html>,则自动把format设置成html格式。

        5.用DeliverEmail(message)发送。

        6.如果你不用设置Message对象的参数的话,你可以直接用RenderEmailAndSend("invitaion")替代第4.5步。


呵呵~完了,简单吧,有兴趣的去试试~~

0
0
(请您对文章做出评价)
« 上一篇:热血江湖外挂之【热血江湖自补器 Version 0.1】
» 下一篇:圈内Castle文章索引

Feedback

#1楼   回复  引用  查看    

2006-03-08 21:10 by 山药蛋V3.5      
好久没见你出来啊,继续,写的不错

#2楼[楼主]   回复  引用  查看    

2006-03-08 21:14 by 绿叶      
@山药蛋V3.5
挺忙的,最近入门破解呢,你有兴趣嘛老兄~?

#3楼   回复  引用    

2007-01-19 10:11 by edmic[未注册用户]
UP

#4楼   回复  引用    

2007-02-04 14:13 by 忧郁的龙卷风[未注册用户]
我照着你的做的 可是发送的时候出现


与服务器的传输连接失败。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Runtime.InteropServices.COMException: 与服务器的传输连接失败。

这是怎么回事啊?

#5楼   回复  引用  查看    

2008-12-05 14:30 by Scrofield      
好像不能用啊..
配置也配了..
调式的时候msg并非null

DeliverEmail(msg)报错
未将对象引用设置到对象的实例。
拜托博主帮忙看看