【发布时间】:2010-03-25 15:43:03
【问题描述】:
我需要将 ASP.NET MVC 2 sourcecode 中的以下内容从 C# 移植到 VB.NET。它来自 AuthorizeAttribute.cs 从第 86 行开始:
HttpCachePolicyBase cachePolicy = filterContext.HttpContext.Response.Cache;
cachePolicy.SetProxyMaxAge(new TimeSpan(0));
cachePolicy.AddValidationCallback(CacheValidateHandler, null /* data */);
其中 CacheValidateHandler 是:
private void CacheValidateHandler(HttpContext context, object data,
ref HttpValidationStatus validationStatus) {
validationStatus = OnCacheAuthorization(new HttpContextWrapper(context));
}
http://converter.telerik.com 的 VB.NET 端口不适用于这一行:
cachePolicy.AddValidationCallback(CacheValidateHandler, Nothing) ' Error
其中 CacheValidateHandler 是:
Private Sub CacheValidateHandler(ByVal context As HttpContext, ByVal data As Object, _
ByRef validationStatus As HttpValidationStatus)
validationStatus = OnCacheAuthorization(New HttpContextWrapper(context))
End Sub
VS2008 抱怨 CacheValidateHandler 没有为 context、data 和 validationStatus 指定其参数。 p>
任何想法如何移植此代码?
【问题讨论】:
-
提示这个转换器在将 c# 转换为 vb.net 和其他方式方面做得很好。 dotnetspider.com/Convert/Vb-To-Csharp.aspx