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

ton*_*kta 8 .net vb.net asp.net visual-studio

我似乎无法在设置为"vb"语言的ASP.Net页面上导入泛型类型:

<%@ 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." --%>
Run Code Online (Sandbox Code Playgroud)

请注意,我对这些替代品不感兴趣(因为你不关心的无聊原因):

  • 改变web.config.
  • 改变代码隐藏.
  • 使用代码隐藏代替页面.
  • 使用C#而不是VB.Net.
  • 谷歌搜索(MSDN页面没有提到泛型类型).
  • 修改app.config.
  • 通过项目设置中的"引用"选项卡将命名空间添加到"导入的命名空间".
  • 解决方法(我已经有了解决方法,但我想知道是否可以正确完成)

是否可以在VB.Net ASP.Net页面上为通用类型添加别名,或者这是微软的疏忽?

Cha*_*lky 0

是的,坏消息:

  1. 您不能在 .NET 中的任何地方为泛型类型添加别名(最近可能已更改,但不要这么认为)。
  2. 在 ASP.NET 中,无法导入其中包含空格的命名空间。问题在于 ASPX 的解析器。是的,微软的疏忽。由于 C# 是List<System.String>,因此不会抛出错误。他们再次忽略了 VB。