English 中文(简体)
从 ASP. NET MVC 中的视图模式删除前缀
原标题:Remove Prefix from ViewModel in ASP.NET MVC

我有一个由几个嵌巢类组成的视图模式类 :

 public class UserAccountViewModel : UserProfileViewModel
    {
        public UserAccountEmailViewModel UserAccountEmail { get; set; }
        public UserAccountLocationViewModel UserAccountLocation { get; set; }
        public UserAccountPasswordViewModel UserAccountPassword { get; set; }
    }

HTML 由此得出的 HTML (注意 < 坚固 > 模型. UserAccountEmail. Email ):

<div class="editor-label">
        @Html.LabelFor(model => model.UserAccountEmail.Email)
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.UserAccountEmail.Email)
        @Html.ValidationMessageFor(model => model.UserAccountEmail.Email)
    </div>

这是:

name="UserAccountEmail.Email"

我希望这个名字只是 Email

更改 ViewData. TemplateInfo. Html FieldPrefix 毫无帮助。 在 中超载 字段名 Name 是行不通的, 因为我仍然想要标签和校验信件匹配已设定的 HTML 元素( 在这些函数中, html FrimanName 没有超载) 。

我宁愿不为此创造部分。

<强>编辑:

Meh... 使用片段其实并不太糟糕。 它确实非常有意义 。

最佳回答

看我对这个设计 的回答,这个特殊战略也许有意义

许多模式,以许多部分

问题回答

暂无回答




相关问题
WebForms and ASP.NET MVC co-existence

I am trying to make a WebForms project and ASP.NET MVC per this question. One of the things I ve done to make that happen is that I added a namespaces node to the WebForms web.config: <pages ...

Post back complex object from client side

I m using ASP.NET MVC and Entity Framework. I m going to pass a complex entity to the client side and allow the user to modify it, and post it back to the controller. But I don t know how to do that ...

Create an incremental placeholder in NHaml

What I want to reach is a way to add a script and style placeholder in my master. They will include my initial site.css and jquery.js files. Each haml page or partial can then add their own required ...

asp.net mvc automapper parsing

let s say we have something like this public class Person { public string Name {get; set;} public Country Country {get; set;} } public class PersonViewModel { public Person Person {get; ...

structureMap mocks stub help

I have an BLL that does validation on user input then inserts a parent(PorEO) and then inserts children(PorBoxEO). So there are two calls to the same InsertJCDC. One like this=>InsertJCDC(fakePor)...

ASP.NET MVC: How should it work with subversion?

So, I have an asp.net mvc app that is being worked on by multiple developers in differing capacities. This is our first time working on a mvc app and my first time working with .NET. Our app does not ...

System.Web.Mvc.Controller Initialize

i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...