2009-09-02 43 views
0

设置:ASP .NET MVC 1呈现强类型的局部视图

问题:

当ASP .NET打的RenderPartial( “开放” ...)行,则抛出异常(“莫非不是加载类型'System.Web.Mvc.ViewUserControl(IEnumerable(of OpenSpace)')。“),即使视图存在并传入适当的模型。视图都在View文件夹内,在这种情况下,他们甚至在同一个子目录中。

查看:

<%@ Page Language="VB" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %> 

<%@ Import Namespace="CommonClasses" %> 
<asp:Content ID="indexTitle" ContentPlaceHolderID="TitleContent" runat="server"> 
    Date, Time, and Furniture Arrangement 
</asp:Content> 
<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server"> 
    <div id="floattext"> 
     <h1> 
      Date, Time, and Furniture Arrangement</h1> 
     <div id="content"> 
      <% Using Html.BeginForm%> 
      <div id="left"> 
       <% Html.RenderPartial("DateTimeAndArrangement")%> 
      </div>  
      <div id="right"> 
       <% Html.RenderPartial("Openings", New List(Of OpenSpace))%> 
      </div> 
      <% End Using%> 
     </div> 
    </div> 
</asp:Content> 

的DateTimeAndArrangement视图显示正确,所以我只张贴了开口代码:对自己

<%@ Import Namespace="CommonClasses" %> 
<%@ Control Language="VB" Inherits="System.Web.Mvc.ViewUserControl(of IEnumerable(of OpenSpace))" %> 
<% If Model.count = 0 Then%> 
<p> 
    There are no open spots that match the event's requirements.</p> 
<% Else%> 
'Make a big clickable table with fancy AJAX magic 
<% End If%> 

注:反转134

回答

0

试试这个在您查看的第一行(查看声明):

Inherits="System.Web.Mvc.ViewPage(of IEnumerable(of OpenSpace))" 
0

“无法加载类型”表明ASP.NET编译器找不到声明OpenSpace的程序集。有几件事要尝试:

  1. 完全限定OpenSpace。

我的猜测是,这是最有可能的问题:

Inherits="System.Web.Mvc.ViewUserControl(of IEnumerable(of MyNamespace.OpenSpace))" 
  • 装配添加到web.config文件的编译部分。