在页面中具有 ASP.Net 导入指令的别名泛型类型 VB.Net

Alias Generic Type With ASP.Net Import Directive in VB.Net Page

提问人:tony bikta 提问时间:9/9/2017 最后编辑:tony bikta 更新时间:3/13/2018 访问量:306

问:

我似乎无法在设置为“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." --%>

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

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

是否可以在 VB.Net ASP.Net 页面上为泛型类型设置别名,或者这是Microsoft的疏忽?

asp.net .NET vb.net visual-studio

评论

0赞 kaskelotti 12/13/2017
这篇文章相同

答:

0赞 Chalky 3/13/2018 #1

是的,坏消息:

  1. 不能在 .NET 中的任何位置为泛型类型设置别名(最近可能已更改,请勿这么认为)。
  2. ASP.NET,您不能导入包含空格的命名空间。这是 ASPX 的解析器的问题所在。是的,Microsoft疏忽。由于 C# 是 ,因此它不会抛出错误。他们再次遗漏了 VB。List<System.String>