Я нашел этот код:Как перевести эти C# код для определения текущего уровня траста для приложений ASP.NET в VB.Net
AspNetHostingPermissionLevel GetCurrentTrustLevel() {
foreach (AspNetHostingPermissionLevel trustLevel in
new AspNetHostingPermissionLevel [] {
AspNetHostingPermissionLevel.Unrestricted,
AspNetHostingPermissionLevel.High,
AspNetHostingPermissionLevel.Medium,
AspNetHostingPermissionLevel.Low,
AspNetHostingPermissionLevel.Minimal
})
{
try {
new AspNetHostingPermission(trustLevel).Demand();
}
catch (System.Security.SecurityException) {
continue;
}
return trustLevel;
}
return AspNetHostingPermissionLevel.None;
}
из Get current ASP.NET Trust Level programmatically, но это C#, и я хотел бы иметь это для VB.NET. Есть ли шанс кого-то эксперта как в VB.NET, так и в C#, который может перевести это в код VB?
я пробовал себя и получил следующий VB.NET код, но он генерирует ошибку внутри моих БВ:
Private Function GetCurrentTrustLevel() As AspNetHostingPermissionLevel
For Each trustLevel As AspNetHostingPermissionLevel In New _
AspNetHostingPermissionLevel() { _
AspNetHostingPermissionLevel.Unrestricted, _
AspNetHostingPermissionLevel.High, _
AspNetHostingPermissionLevel.Medium, _
AspNetHostingPermissionLevel.Low, _
AspNetHostingPermissionLevel.Minimal _
}
Try
New AspNetHostingPermission(trustLevel).Demand()
Catch generatedExceptionName As System.Security.SecurityException
Continue Try
End Try
Return trustLevel
Next
Return AspNetHostingPermissionLevel.None
End Function
Этих части, кажется, неправильно:
New AspNetHostingPermission(trustLevel).Demand()
и
Continue Try
Очевидно, что нужно обращаться с кем-то дымоходом нт как в C# и VB.NET и может обнаружить ошибки в VB.NET
Благодаря
Lars
Попробуйте загрузить его в Reflector и выберите для отображения его в VB.Net. Обычно работает. http://reflector.red-gate.com/download.aspx?TreatAsUpdate=1 –
Спасибо за подсказку! Я посмотрю, что в следующий раз я сталкиваюсь с аналогичной проблемой C# vs VB.NET. Lars – lars