加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – IControllerFactory …没有为名称’Rss’返回控制器

发布时间:2020-12-16 06:30:21 所属栏目:asp.Net 来源:网络整理
导读:我有一个名为RssController的控制器,就像这样 public partial class RssController : MVCExceptionBaseController{ public virtual ActionResult Display() { var viewModel = new RssList(); return PartialView("Display",viewModel); }} 当我点击导航中的
我有一个名为RssController的控制器,就像这样

public partial class RssController : MVCExceptionBaseController
{

    public virtual ActionResult Display()
    {
        var viewModel = new RssList();
        return PartialView("Display",viewModel);
    }
}

当我点击导航中的登录链接时,我收到以下消息:

The IControllerFactory
‘GodsCreationTaxidermy.Helpers.StructureMapControllerFactory’ did not
return a controller for the name ‘Rss’.

从Site.Mater调用RSS,如下所示:

<% Html.RenderAction("Display","Rss");%>

Display是一个部分类,用于显示Rss提要,它看起来像这样:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<ul>
<%  
    RssList viewModel = ViewData.Model as RssList;

    if (viewModel.Feeds.Count() > 0)
    {
        foreach (SelectListItem item in viewModel.Feeds)
        { %>
        <li>
            <%
              Response.Write(String.Format("<a href='{0}' target='_blank'>{1}  More</a>",item.Value,item.Text.TruncateString(30)));
            }%>
        </li>
    <% }%>
 </ul>

我点击的任何其他链接工作正常,除了登录(LogIn在它自己??的区域,这可能导致问题,如果是这样,我将如何解决它?)

解决方法

默认情况下,Html.RenderAction方法不会搜索当前区域之外的控制器.为了让LogIn区域内的控制器找到Rss控制器,您需要使用RenderAction方法的一个重载:

<% Html.RenderAction("Display","Rss",new { area = "" }); %>

“空字符串”区域是任何不属于某个区域的控制器的容器.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读