彭斌

[ 2006,2007 ASP.NET ' MVP ]
随笔 - 99, 文章 - 5, 评论 - 987, 引用 - 16
数据加载中……

Community Server2.0专注细节专题Doc下载(2006-3-9更新)

Community Server2.0专注细节一 邮件提醒按钮实现(上)
DOC下载地址:Community Server2.0专注细节一(上).rar    2006-3-9

posted on 2006-03-09 00:54 彭斌 阅读(3552) 评论(6)  编辑 收藏 所属分类: CommunityServer

评论

#1楼    回复  引用    

多谢!请教一个问题,CSContext里面的User是怎么确定值的。
我单步追踪到Application_BeginRequest中的CSContext.Create(context, new UrlReWriterDelegate(ReWriteUrl));方法时,如果继续F10,那么结果就是虽然HttpContext已经包含了用户的信息(admin),但是CSContext中的User仍然是anonymous,而不继续向下执行,跳转至除authentication方法外的代码段时,则可正确提取用户的信息。也就是说程序正常执行不会有错误,但是如果在CSContext.Create处单步向前或是后面添加代码了,则无法将用户的信息赋值给CSContext.User。重现在个问题的最简单方法就是在CSContext.Create方法后面随便添加点什么代码,那么就会发现永远是匿名用户了,虽然有角色信息。很奇怪的问题,我也很难表达清楚,见谅。
2006-03-19 20:00 | rockmaple [未注册用户]

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

@rockmaple
要理解这个问题,你需要了解 Ihttpmodule的接口实现,相关的文章我之前写过,你可以在我的blog上找到。web是无状态的,因此需要一些事件与方法来获得请求用户的上下文,这些信息就在authentication 等方法中实现。
2006-03-22 09:51 | uGoer      

#3楼    回复  引用    

seen


签名:My Blog (酱油小子)
----------------------------
http://jiangyouxiaozi.spaces.msn.com/
2006-06-26 00:38 | poo [未注册用户]

#4楼    回复  引用    

非常不错,希望uGoer能坚持在些一些这样的好文章
2006-07-17 16:39 | hpan [未注册用户]

#5楼    回复  引用    

非常好,谢谢

借宝地做个广告
http://www.carva.net/
中国车载影音网
2006-10-24 14:20 | ^_^ [未注册用户]

#6楼    回复  引用    

非常感谢你对Community Server的透彻分析。

我最近也在分析它的源码,对于其Photo,Gallery(相册)的处理,其中以Flash格式查看相应的相册的Skin-SlideshowPro.ascx中通过<param name="FlashVars" value="xmlfile=<%= SlideshowPro.SlideshowPicturesPath() %>&xmltype=XML" />对应的相片,追踪下去,发现SlideshowPro.SlideshowPicturesPath()值为:/cs/photos/SlideShowPictures.aspx,而它实质是调用了SlideshowPictures.ashx(也即CommunityServer.Galleries.Components.GallerySlideshowHandler):
烦请对它的代码进行分析,谢谢。。。。。

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2006-03-09 00:56 编辑过

相关链接: