标签: asp.net-mvc-2

页面需要继承2个视图模型并显示所需的模型

我有一个内容页面,很高兴显示继承contentModel.我需要更改页面,以便它还可以显示另一个viewModel(例如revertedContent),但只有在需要向其他人显示正常的contentModel时才显示它.

我确信有一个简单的方法可以做到这一点只是一个痛苦,因为我需要确保页面不会在URL中更改,例如details.aspx保持不变,但可以显示当前内容或以前版本化的内容.

提前喝彩

asp.net-mvc asp.net-mvc-2

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

使用html.ActionLink而不是html编码

我希望返回以下输出

<a href="#"><img src="/images/icons/tick.png" alt="" />More info</a>
Run Code Online (Sandbox Code Playgroud)

如果我执行以下操作,则内​​容将以html编码.

<%= Html.ActionLink("<img src='/images/icons/tick.png' />More info", "OrderRegion", "Campaign", new {id = Model.Campaign.Id}, null) %>
Run Code Online (Sandbox Code Playgroud)

如何禁用html编码?

asp.net asp.net-mvc-2

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

ASP.NET MVC2 - 如何使用RenderAction()调用另一个控制器以及将参数传递给该控制器?

我正在尝试使用MVC2在VS 2010中使用Html.RenderAction()在我的母版页上呈现局部视图.这是我的RenderAction()调用:

           <% Html.RenderAction(
                   "Menu",
                   "Navigation",
                    new
                    {
                        currentAction = ViewContext.RouteData.Values["action"],
                        currentController = ViewContext.RouteData.Values["controller"]
                    }
            ); %>
Run Code Online (Sandbox Code Playgroud)

但是,当它是导航控制器的构造函数时,它总是命中没有参数定义的构造函数.

public class NavigationController : Controller
{
    public NavigationViewModel navigationViewModel { get; set; }

    public NavigationController()
    {
        -snip-
    }

    public NavigationController( string currentAction, string currentController )
    {
        -snip-
    }

    [ChildActionOnly]
    public ViewResult Menu()
    {
        return View(this.navigationViewModel);
    }
}
Run Code Online (Sandbox Code Playgroud)

在我看到的所有示例中,这是使用RenderAction()调用传递参数的方式.如果我删除没有定义参数的构造函数,我不会得到任何错误消息,除了它抱怨.

如何让它调用定义了两个参数的构造函数?我希望能够在构建菜单时与currentAction和currentController进行比较,以正确突出显示用户当前所在的部分.

c# asp.net-mvc asp.net-mvc-2

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

C#ASP.NET MVC2路由通用处理程序

也许我正在寻找错误的东西或试图以错误的方式实现这一点.我使用Generic Handler动态生成图像.我目前可以使用以下方式访问我

ImageHandler.ashx?width=x&height=y
Run Code Online (Sandbox Code Playgroud)

我更愿意使用类似的东西访问我的处理程序

images/width/height/imagehandler
Run Code Online (Sandbox Code Playgroud)

这可能是我在谷歌上找到的几个例子与MVC2不兼容.

干杯.

c# routing generic-handler asp.net-mvc-2

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

RadioButtonFor,EditorFor,xxxFor on Property传入Partials

我的模型上的许多属性需要表示一组简单的是/否单选按钮.我需要检查相应的单选按钮以获取预先输入的值.我偏袒了.这是我做的:

RadioButtonsYesNo.ascx

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<KeyValuePair<string,string>>" %>
<div id="<%:Model.Key %>">
<%: Html.ValidationMessage(Model.Key)%>
<ul class='RadioButtonsYesNo'><li>
<%: Html.RadioButton(Model.Key, "Yes", Model.Value == "Yes", new { id = Model.Key + "_Yes" })%>
<label for='<%: Model.Key %>_Yes'>Yes</label>
</li><li>
<%: Html.RadioButton(Model.Key, "No", Model.Value == "No", new { id = Model.Key + "_No" })%>
<label for='<%: Model.Key %>_No'>No</label>
</li></ul>
</div>
Run Code Online (Sandbox Code Playgroud)

用法

<% Html.RenderPartial("RadioButtonsYesNo", new KeyValuePair<string, string> ("MyProp",Model.MyProp)); %>
Run Code Online (Sandbox Code Playgroud)

传递感兴趣的属性并正确渲染RadioButtonFor是否有最佳实践?

谢谢.

asp.net-mvc asp.net-mvc-2

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

.aspx页面中的奇怪异常

我有aspx页面,我有类似的东西:

<%
    string image;
    if(cond)
       image = "somestring";
%>

...

<% if (cond) { %>
    <img src="<%= image %>" /> <!-- HereI get CS0165 exception: Use of unassigned local variable 'image' -->
<% } else { %>
    <div> ... </div>
<% } %>
Run Code Online (Sandbox Code Playgroud)

所以我的问题是为什么我得到例外?如果我写string image = "";这个例外消失了.这很奇怪.我猜这个例外与aspx页面的呈现有关.有人可以解释为什么会这样吗?

c# asp.net asp.net-mvc asp.net-mvc-2

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

视图和控制器之间没有连接

我是新手,我尝试找到此错误消息的解决方案:

"传递到字典中的模型项的类型为'NerdDinner.Controllers.DinnerFormViewModel',但此字典需要类型为'NerdDinner.Models.Dinner'的模型项"

有类似的问题错误,但不是相同的上下文问题.我相信问题位于edit.aspx中,但仍然无法解决.

DinnersController控制器:

//
// GET: /Dinners/Create

public ActionResult Create()
{

    Dinner dinner = new Dinner()
    {
        EventDate = DateTime.Now.AddDays(7)
    };

    return View(new DinnerFormViewModel(dinner));
}
Run Code Online (Sandbox Code Playgroud)

楷模:

namespace NerdDinner.Models
{
    [MetadataType(typeof(Dinner_Validation))]
    public partial class Dinner
    {

    }

    public class Dinner_Validation
    {
        [Required(ErrorMessage = "Title is required")]
        [StringLength(50, ErrorMessage = "Title may not be longer than 50 characters")]
        public string Title { get; set; }

        [Required(ErrorMessage = "Description is required")]
        [StringLength(265, ErrorMessage =
          "Description must be 256 characters or less")]
        public …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc asp.net-mvc-2

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

ASP.NET MVC中启用SSL的Content Delivery Network

在我的Site.Master中构建MVC 2.0网站并使用内容交付网络(CDN).我正在使用以下CDN:

  • 雅虎的reset-fonts-grids.css
  • jQuery 1.4.2
  • jQuery验证

所有这些CDN都使用http://传递

我的网站目前支持SSL和非SSL页面.导航到启用SSL的页面时,我收到错误,因为CDN链接到HTTP://

虽然我知道您可以使用SSL版本的CDN,但我的问题更像是:

由于我有非SSL和SSL页面共享相同的*Site.Master*我该怎么办?我是否应该只为SSL和非SSL页面启用SSL启用版本?或者我应该做一些"if ... else"?

任何这些方法的任何优点或缺点?

谢谢

asp.net-mvc ssl jquery asp.net-mvc-2

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

在Asp.Net MVC 2的新窗口中发布并打开?

如何将表单发布到HttPost Action方法并在新窗口中打开返回的View?

我试图找到一些方法来使用window.open函数和jQuery,但我找不到任何有效的东西......似乎应该有一个简单的方法在MVC中做到这一点?一切正常,从post方法返回普通视图,所以我需要的是在新窗口中打开返回的视图(发布页面可以保持原样).

有任何想法吗?

asp.net jquery window.open asp.net-mvc-2

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

ASP.Net MVC在母版页中显示会话值

当我在母版页(<%: Session["companyname"].ToString() %>)中显示会话值时,页面上会显示以下信息{ CompanyName = TestCompany}.我如何获得价值?

谢谢你的帮助!

asp.net-mvc asp.net-mvc-2

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