标签: partial-views

MVC 部分视图不渲染

我是 MVC 新手,我正在尝试向我的主布局页面添加部分视图,以便我可以在整个应用程序中显示消息。我在解决这个问题时遇到了一些麻烦:

这是我的布局:

<div class="span12">       
<p>
    @{Html.RenderAction("Messaging", "Messaging");}
</p>
@RenderBody()
</div>
Run Code Online (Sandbox Code Playgroud)

这是我的消息控制器:

public ActionResult Messaging()
{
    return PartialView(new ViewModels.Messaging()
        {
            MessageType = Utilities.MessageType.Success,
            MessageHeader = "Test",
            Message = "this is a test message"
        });
}
Run Code Online (Sandbox Code Playgroud)

这是我存储在共享文件夹中的部分视图,名为 _MessagingPartial.cshtml:

@model AWS.PL.ViewModels.Messaging

<span>
    Model.Message
</span>
Run Code Online (Sandbox Code Playgroud)

这是我的视图模型:

public class Messaging
{
    public Utilities.MessageType MessageType { get; set; }
    public string MessageHeader { get; set; }
    public string Message { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我收到错误“未找到部分视图消息传递”错误。部分视图应该被称为 Messanging.cshtml 还是我得到了根本性错误?

非常感谢任何帮助。

谢谢,威尔基。

model-view-controller asp.net-mvc partial-views

2
推荐指数
1
解决办法
1万
查看次数

ASP.NET MVC:如何在除一个视图之外的所有视图上呈现局部视图?

我有一个名为LogOnUserControl的部分视图/用户控件,它显示在我站点的侧栏中(在Site.Master中定义).我还有一个单独的LogOn视图,它也呈现LogOnUserControl.

我不希望在LogOn视图中有两个LogOnUserControl实例,因为它只是简单的混乱,所以我目前的想法是包括一个条件,如

// Semi-pseudocode
if (!Request.IsAuthenticated) && View.Name != "LogOn")
Run Code Online (Sandbox Code Playgroud)

在LogOnUserControl中.

这感觉不对,因为局部视图现在知道LogOn视图.此外,我无法找到如何获取View的名称,这加强了我做错事的感觉!:-)

编辑: 进一步的复杂性是,相同的局部视图用于Site.Master中的LogOn视图和侧边栏.

asp.net-mvc partial-views

1
推荐指数
1
解决办法
2502
查看次数

如何将Zend_Ath,Zend_Acl和partialview结合起来进行身份验证和资源控制

根据随机性将无处不在.Ryan的博客 Zend Framework的动作堆栈组件是不需要的,并且部分视图可以与Zend_Acl和Zend_Auth结合用于验证和控制资源.

我还没有在谷歌上找到任何合适的例子来说明它是如何完成的.很高兴有人会善意地告诉我如何实现这一点.谢谢

zend-framework partial-views zend-auth zend-acl

1
推荐指数
1
解决办法
927
查看次数

ASP.NET MVC 3 Partial View从视图中的动态列表动态呈现和链接

在我的MVC 3应用程序中,我将有一个包含局部视图的视图.视图本身将包含动态生成的链接列表.该链接必须使局部视图呈现该链接项的详细信息.

我会使用Ajax吗?如果是这样,既然我之前没有使用过Ajax,那么在MVC 3应用程序中是否有任何使用它的文档?

此外,当首次加载视图时,将不加载局部视图或理想地显示另一个单独的局部视图.关于这样做的好方法的任何想法?

谢谢您的帮助.

ajax jquery partial-views asp.net-mvc-3

1
推荐指数
1
解决办法
1万
查看次数

使用多个区域的局部视图 - MVC4

我想要跨多个区域使用视图.我已将部分视图置于主应用程序Views/Shared文件夹中,但我似乎无法访问它.

有谁知道如何访问共享视图文件夹?

我目前使用的代码是基本的:

@Html.RenderPartial("MyPartialControl")
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc partial-views razor asp.net-mvc-4

1
推荐指数
1
解决办法
7279
查看次数

在MVC 3中刷新部分视图

我有一个部分视图,我已经包含在我的_Layout.cshtml中.它只是有一个javascript函数,可以根据我的系统状态更改图像.我不需要重新加载任何数据,我不需要去任何控制器的代码,我只需要重新加载该部分视图.

我尝试了很多我在这里找到的例子但却无法使用它们.无论如何,我觉得他们似乎太复杂了.任何指导将不胜感激.

谢谢,

史蒂夫

partial-views partial-page-refresh asp.net-mvc-3

1
推荐指数
1
解决办法
1791
查看次数

ASP.NET Mvc jquery ui对话框作为视图还是部分视图?

我想在对话框上显示视图或部分视图.ASP.NET Mvc 4默认模板(AjaxLogin.js)中有一个示例.如果login是ajax,AjaxLogin.js会捕获.并运行jsonresult或actionresult.AjaxLogin通过将参数传递给对话框来控制它.所以传递参数对我来说很重要.

我的指定表单使用此库是否有问题.或者是否有关于此主题的另一个js库?

我是关于jquery ui的新手.对于其他形式,我现在在我的项目中使用AjaxLogin.js.他们工作.我应该继续使用吗?

谢谢.

asp.net-mvc jquery-ui partial-views jquery-ui-dialog

1
推荐指数
1
解决办法
6308
查看次数

MVC4 /部分视图我想要什么?

我的网站基于使用Razor的MVC4 Web应用程序.我想将页面划分为以下区域:

-----------------------
|      |              |
|      |              |
|      |--------------|
|      |              |
|      |              |
|------|              |
|      |              |
|      |              |
|      |--------------|
|      |              |
|      |              |
-----------------------
Run Code Online (Sandbox Code Playgroud)

这个叫什么?每个区域都是"部分视图"吗?我需要正确的术语,以便我可以谷歌寻求更多帮助.

c# renderpartial partial-views razor asp.net-mvc-4

1
推荐指数
1
解决办法
2666
查看次数

MVC 5仅在Home Index上显示Layout中的Partial-View

我在我的网站上使用侧边栏,其中包含来自我的数据库的统计数据和静态数据,如链接和其他文本.

在我_Layout.cshtml,我Html.RenderAction("SidebarPV", "Home");用来调用侧边栏.

侧边栏是使用ViewModel进行统计的部分视图. SidebarPV在我的HomeController喜欢中生成:

public ActionResult SidebarPV() {
    SidebarViewModel viewmodel = new SidebarViewModel();
    DateTime now = DateTime.Now;
    viewmodel.stat_data1 = db.Table1.Where(e => e.DateDeb <= now && e.DateFin >= now).Count();
    viewmodel.stat_data2 = db.Table2.Where(c => c.DateDeb <= now && c.DateFin >= now).Count();
    return PartialView("SidebarPV", viewmodel);
}
Run Code Online (Sandbox Code Playgroud)

它就像一个魅力,但我不需要所有视图的统计数据,只有 /Home/Index

因此,当ser不在网站索引上时,我想"评论"统计数据生成.

谢谢你的建议.

编辑(解决方案,感谢krillgar):

我写的是我的 _Layout

@{
    var isHome = ViewContext.RouteData.Values["controller"].ToString().ToUpper() == "HOME";
    var isIndex = ViewContext.RouteData.Values["action"].ToString().ToUpper() == "INDEX";
    if (isHome && isIndex) {
        Html.RenderAction("SidebarPV", "Home"); …
Run Code Online (Sandbox Code Playgroud)

c# partial-views razor asp.net-mvc-5

1
推荐指数
1
解决办法
4337
查看次数

MVC5 Ajax PartialView

我需要使用Ajax.BeginForm用PartialView刷新div.我在MVC4中已经完成了十几次这样做,它完美无缺.在MVC5中,虽然不起作用:(

以下是我采取的步骤:

  • 在Visual Studio 2013中创建一个新项目"PartialAjax"(ASP.NET Web应用程序/ MVC)
  • 右键单击Views/Home并添加视图>选中"Create as partial view">将其命名为"_Test"
  • 此_Test.cshtml视图的代码:

    <p>From now on I'm gonna change my life: @DateTime.Now.ToString()</p>
    
    Run Code Online (Sandbox Code Playgroud)
  • 编辑Views/Home/Index.cshtml视图:

    @{
                ViewBag.Title = "Home Page";
    }
    @using (Ajax.BeginForm("ChangeLife", "Home", null, new AjaxOptions() { UpdateTargetId = "test", HttpMethod = "Post" }, null))
    {
        <input type="submit" value="Start" />
    }
    
    <div id="test">
        @Html.Partial("_Test")
    </div>
    
    Run Code Online (Sandbox Code Playgroud)
  • 把它放在你的HomeController中:

    public ActionResult ChangeLife()
          {
              return this.PartialView("_Test");
          }
    
    Run Code Online (Sandbox Code Playgroud)

如果单击Manage NuGet packages,默认情况下会安装jQuery和Microsoft jQuery Unobtrusive Validation.

ajax jquery partial-views unobtrusive-validation asp.net-mvc-5

1
推荐指数
1
解决办法
4648
查看次数