如何使用Razor视图引擎引用.NET MVC3中的命名空间?
我知道这可以在C#中完成:
@using Namespace;
然而在VB中,这似乎不起作用:
@Imports Namespace
(我在谈论.vbhtml文件)
答案 0 :(得分:3)
您正在使用VB的正确语法:
@Imports My.Full.Namespace
我在快速游戏中发现的是:
@Imports
语句后,智能感知将获取MVC项目的子命名空间 - 必须是完整的命名空间。答案 1 :(得分:0)
@Jonathan是正确的,这是正确的语法,它需要扩展方法的完整命名空间。
如果仍然无法识别您的扩展方法,则可能需要在自己的命名空间之前插入此导入:
@Imports System.Web.Mvc.HtmlHelper
当我添加这个intellisense提供我的扩展方法。我认为这与引用System.Web.WebPages有关,它也定义了一个HtmlHelper类。也许这就解释了为什么将代码迁移到新项目可以解决问题。
不幸的是,导入语句的intellisense问题仍然存在,它不提供命名空间。
我意识到这个问题的答案有些晚了,但这让我有一半的时间 - 希望它可以帮助别人避免这个陷阱。