TEcoForumServices 类(繁体版4月15日博客)

本文分享了《DelphiMDA/DDA程序设计--使用ECO》一书中缺失的 TEcoForumServices 类源代码。该类用于实现论坛成员的创建、登录等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2007年05月16日 14:46:00
TEcoForumServices

有位大陆的读者写信跟我说他在《Delphi MDA/DDA程序设计--使用ECO》一书的CD中找不到TEcoForumServices 类的源代码,虽然我记得我已经把整本书下的Source打包到CD中了,而且TEcoForumServices 是一个很简易的类.Anyway,如果有人也需要这个类的源代码,下面就是它完整的列表。

unit EcoForumWrapperServices;

interface

uses System.Web, ECOForumWebAppDemo1EcoSpace, PECOForumUnit,
Borland.Eco.Handles, Borland.Eco.ObjectRepresentation,
System.Web.Security, Borland.Eco.Services;

type
TEcoForumServices = class
private
{ Private Declarations }
public
class function CreateMemeber(mySpace : Borland.Eco.Handles.EcoSpace) : ForumMember;
class function getForumSite(objl : IObjectList) : ForumSite;
class function MemberLogin(mySpace : Borland.Eco.Handles.EcoSpace; const UserId : string; const sPassword : string) : ForumMember;
end;

implementation


{ TEcoForumServices }

class function TEcoForumServices.CreateMemeber(mySpace : Borland.Eco.Handles.EcoSpace): ForumMember;
begin
Result := ForumMember.Create(mySpace);
end;

class function TEcoForumServices.getForumSite(objl: IObjectList): ForumSite;
var
obj : System.Object;
begin
Result := HttpContext.Current.Session['ForumSite'] as ForumSite;

if (Result = nil) then
begin
obj := objl[0].AsObject;
Result := obj as ForumSite;
HttpContext.Current.Session['ForumSite'] := Result;
end;
end;

class function TEcoForumServices.MemberLogin(mySpace : Borland.Eco.Handles.EcoSpace;
const UserId, sPassword: string): ForumMember;
const
selectUser = 'ForumMember.allInstances-var
enPW : string;
userOCL : string;
OCLResult : IElement;
oclService : IOclService;
begin
enPW := FormsAuthentication.HashPasswordForStoringInConfigFile(sPassword,'md5');
oclService := mySpace.GetEcoService(typeof(IOclService)) as IOclService;
userOCL := System.String.Format(selectUser,UserId,enPW);
OCLResult := oclService.Evaluate(userOCL);
Result := nil;
if (OCLResult.GetAsCollection.Count >< 0) then
Result := OCLResult.GetAsCollection.Item[0].AsObject as ForumMember;
HttpContext.Current.Session['ForumMember'] := Result;
end;

end.



Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1611611


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值