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->select( M | (M.Name = ''{0}'') and (M.Password = ''{1}'') )->First';
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.
分享到:
相关推荐
2020年辽宁会计人员信息采集时间4月15日至6月15日.doc
从【描述】中的“目前最新电脑报2019年第14期,报纸日期2019年4月15日”可以了解到,该期报纸是2019年4月15日的最新一期,这对于关注最新IT行业动态的读者来说是一个重要的时间点,因为读者可以期望该期报纸包含那个...
这份名为“行业数据-2020年3月16日-4月15日薇娅直播产品结构.rar”的压缩包文件,包含了有关2020年3月16日至4月15日期间,知名网络主播薇娅的直播产品结构的详细数据。通过分析这个Excel表格(文件名:行业数据-2020...
2020年3月16日-4月15日薇娅直播产品结构.xls
2020年3月16日-4月15日李佳琦直播产品结构.xls
Telerik RadControls for ASP.NET AJAX Q1 2010 SP1 Part4(2010年4月15日的版本)
Telerik RadControls for ASP.NET AJAX Q1 2010 SP1 Part1(2010年4月15日的版本)
Telerik RadControls for ASP.NET AJAX Q1 2010 SP1 Part2(2010年4月15日的版本)
黑龙江省双鸭山市高三语文4月15日模拟考试卷.pdf
Telerik RadControls for ASP.NET AJAX Q1 2010 SP1 Part3(2010年4月15日的版本)
Telerik RadControls for ASP.NET AJAX Q1 2010 SP1 Part5(2010年4月15日的版本)
Telerik RadControls for ASP.NET AJAX Q1 2010 SP1 Part6(2010年4月15日的版本)
河北省文安县高三语文4月15日模拟考试卷.pdf
【ChromeRce:2021年4月15日出现的Chrome payload】 Chrome RCE(Remote Code Execution)指的是利用谷歌Chrome浏览器中的漏洞实现远程代码执行的一种攻击手段。这种漏洞通常非常严重,因为攻击者一旦成功利用,可以...
2019年4月税收分类编码Excel版,新版税收编码自2019年4月1日起执行,普通商品税率从16%更新到13%,10%更新至9%。
本数据集涵盖了中国全国范围内的行政区划信息,包括省、市、区、街道四个级别,共计42387条记录。数据采用Excel格式存储,可轻松导入数据库进行使用。 每条记录包含以下关键信息: 1、行政区域编码:每个行政区域...
【标题】:“Caffe源码(2015年8月15日)” Caffe是一种流行的深度学习框架,由加州大学伯克利视觉与学习中心(BVL)开发,最初由贾扬清(Jia Yangqing)创建。2015年8月15日的版本是Caffe早期的一个里程碑,那时它...
这篇博客主要探讨的是小米在10月15日进行的抢购活动所使用的前端代码。在这个过程中,作者深入研究了网页背后的JavaScript、HTML和CSS等技术,揭示了抢购页面如何实现快速响应、动态加载以及用户交互等功能。这个...
1912年4月15日,在她的处女航中,被广泛认为的“沉没” RMS泰坦尼克号与冰山相撞后沉没。 不幸的是,船上没有足够的救生艇供所有人使用,导致2224名乘客和机组人员中的1502人死亡。 尽管幸存有一些运气,但似乎有些...