我尝试过几种不同的方法:
1:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyNameSpace.MyModel>" %>
2:
<%@ Import Namespace="MyNameSpace.MyModel" %>
但无论我做什么,我都无法访问this.Model
或其他任何我希望看到的内容。项目中的其他控件和页面都可以访问这些,并且没有开发人员能够告诉我为什么他们可以和我不能。有什么想法吗?
修改
从那时起,我创建了一些控件和页面。有时,intellisense会发现this.Model
没有问题。它还可以找到Html.RenderPartial()
之类的内容以及它应该找到的各种其他好东西。所以,对于那些告诉我intellisense在视图中不起作用的人,你错了。它做了。但在所有观点中并不一致。就我和任何其他开发人员所说,我没有做任何不同的事情。我尝试过的事情:
有时这些步骤可以解决问题,但对于某些控制,我只是不能让红色的波浪线消失!它不是世界末日,因为它不会产生运行时错误,但我想了解这里发生了什么。当然有人经历过这个并且已经了解了问题的根源。
答案 0 :(得分:3)
您也可以尝试将其添加到web.config:
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="MyHtmlHelperLibrary.HtmlExtensions"/>
<add namespace="MyOtherNamespace"/>
</namespaces>