在VB.NET页面中使用ASP.NET导入指令的别名通用类型



我似乎无法在ASP.NET页面上导入通用类型,设置为" VB"的语言:

<%@ Page Language="vb" %>
<%-- This works fine. --%>
<%@ Import Namespace="MyString=System.String" %>
<%-- This gives an error. --%>
<%@ Import Namespace="MyList=System.Collections.Generic.List(Of System.String)" %>
<%-- Error: "The 'namespace' attribute cannot contain spaces." --%>

请注意,我对这些替代方案不感兴趣(出于您不在乎的无聊原因):

  • 更改web.config。
  • 更改代码。
  • 使用代码范围而不是页面。
  • 使用c#代替vb.net。
  • 谷歌搜索(MSDN页面没有提及通用类型)。
  • 修改app.config。
  • 通过项目设置中的"参考"选项卡。
  • 解决方案(我已经有解决方法,但我想看看是否这样可以正确完成)

是否可以在vb.net asp.net页面上使用通用类型,还是Microsoft的监督?

是的,坏消息:

  1. 您不能别名 .NET中任何地方的通用类型(最近可能发生了变化,不要这样认为)。
  2. 您无法在ASP.NET中导入带有空间的命名空间。问题是ASPX的解析器。是的,Microsoft监督。由于C#将是List<System.String>,因此不会丢弃错误。他们再次遗漏了VB。