我最近用的是linq2sql的ASP.NET预览版5(即将升级到beta版)
launched tiny webapp
.
我为我的工作感到骄傲,直到Silverlight.net在第一页上展示了它,它开始接收到数量不多的访问者。
出于某种原因,用户有时会收到linq2sql抛出的“指定的强制转换无效”—这是因为未经身份验证的用户被当作“来宾”用户处理,并且控制器正在为每次命中加载有关用户“来宾”的信息。
在第一页中,顶部有一个“welcome[username]”,可以使用
Donut Caching
.
但是,在中间有一个“what is dudlers.com”块,只应向未经身份验证的用户显示,另一个“about you”块只应向经过身份验证的用户显示。这些块太复杂,无法使用甜甜圈缓存进行缓存;它们太不同了,会非常混乱。
我想根据用户的身份验证状态缓存第一个。因此,未经身份验证的用户(不用说,大多数)会得到“来宾”缓存页,而其他经过身份验证的用户则会显示一个新的非缓存页。
是否有一个指定缓存的选项因身份验证而异?类似:
[输出缓存(varyby=身份验证)]
还是有其他非ASP.NET MVC解决方案?(可能调整MS SQL)
我希望我的问题是清楚的。
我在同一台专用服务器上运行Windows 2003和MS SQL 2005 Express。
谢谢您!