Tag: razor

复杂对象和模型绑定ASP.NET MVC

我有一个模型对象结构,其中包含一个带有字符串值的Bar的Foo类。 public class Foo { public Bar Bar; } public class Bar { public string Value { get; set; } } 以及使用这种结构的视图模型 public class HomeModel { public Foo Foo; } 然后,我有一个表格,在Razor看起来像这样。 @using (Html.BeginForm(“Save”, “Home”, FormMethod.Post)) { @Html.TextBoxFor(m => m.Foo.Bar.Value) } 在html中成为。 最后控制器像这样处理邮政厕所 [HttpPost] public ActionResult Save(Foo foo) { // Magic happends here return RedirectToAction(“Index”); } […]

如何在MVC模型中表示一个月的复选框

我无法理解如何使用MVC创建下表,并成功将其绑定到模型: 我基本上需要跟踪一个事件需要发生的月份的哪几天。 这是我对模型的尝试: 编辑 :这不是一个月,而是任意4周的周期 public class ScheduleViewModel { public int PatientId { get; set; } public List Schedules { get; set;} } public class Schedule { public int Week { get;set;} public Day Day { get;set;} public bool IsSelected { get;set;} } public enum Day { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } […]

在Razor视图中有条件地更改CSS类

我需要使用’forumChild’类更改 标记的CSS类。 它必须改变foreach循环的每3个循环。 有没有办法在控件内执行此操作? The Forum @foreach (var item in Model) { @foreach (var comment in item.Blog.comment) { var db = new ACapture.Models.ACaptureDB(); var Name = from p in db.Profile.AsEnumerable() where (p.AccountID == comment.AccountID) select p; @foreach (var y in Name) { @(y.FirstName + ” ” + y.LastName + “:”); } @comment.Commentation } } 提前致谢

具有部分CRUD的MVC 5 BeginCollectionItem

我在下面对这个问题进行了修改,这个问题仍然是一样的,但希望通过模型以及我想要实现的目标以及我遇到问题的方式更加清晰。 下面显示了两个类,Company和Employee,Company有一个Employees列表。 这将是一个输入表单,因此开始时将没有数据。 最终,我希望用户能够根据需要向Company对象模型添加尽可能多的Employee对象,并更新Employee对象 我是否使用BeginCollectionItem在正确的轨道上,所以我可以添加/删除尽可能多的Employee对象? 当我单击Add按钮时,它会将其带到另一个页面上的部分视图(使用AjaxActionLink),但不能使用JavaScript。 更新删除了AjaxActionLink并改为使用JavaScript。 指数 @model MvcTest.Models.Company @{ ViewBag.Title = “Index”; Layout = “~/Views/Shared/_Layout.cshtml”; } Company @Html.LabelFor(m => m.Name) @Html.EditorFor(m => m.Name) Employees @foreach (var Employee in Model.Employees) { Html.RenderPartial(“_Employee”, Employee); } @section Scripts { $(‘#addemployee’).on(‘click’, function () { $.ajax({ async: false, url: ‘/Company/AddNewEmployee’ }).success(function (partialView) { $(‘#new-Employee’).append(partialView); }); }); } _Employee […]

带有Html Helper的条件html属性

我正在使用Html助手创建一个复选框。 在某些情况下,我想将disabled属性添加到htmlAttribute对象。 我有以下代码: @if (Model.IsAuthorized) { @Html.CheckBoxFor(x => @Model.Property, new { @class = “input-class” }) } else { @Html.CheckBoxFor(x => @Model.Property, new { @class = “input-class”, @disabled = “disabled” }) } 我想让这段代码更简洁。 有没有办法在一行中有条件地添加某些html属性/没有块条件?

如何使用Razor通过循环正确生成引导网格?

我使用ASP.NET MVC和bootstrap。 我在集合中有很多对象(> 2),每个需要一个 但是连续只有2个 。 如何使用循环来实现这个目标? 有一种方法,但我正在寻找更好的东西: @model List @using (Html.BeginForm(“ActionName”, “ControllerName”)) { @for (int i = 0; i < Model.Count; i++) { if (i % 2 != 0) { @Html.TextBoxFor(o => o[i].Value) } else { @Html.TextBoxFor(o => o[i].Value) } } }

Angular路由模板URL是否支持ASP.Net MVC 5项目中的* .cshtml文件?

我正在研究MVC 5项目。 当我在我的视图中使用html页面时,它会加载该页面,但是当我使用.cshtml页面时,它不会加载视图。 出现空白页面。 $urlRouterProvider .otherwise(‘/app/dashboard’); $stateProvider .state(‘app’, { abstract: true, url: ‘/app’, templateUrl: ‘tpl/app.html’ }) .state(‘app.dashboard’, { url: ‘/dashboard’, templateUrl: ‘tpl/app_dashboard.html’ }) 请指导我如何使用cshtml文件或最佳方法。

具有匿名类型模型类的剃刀视图。 有可能的?

我想使用razor模板创建一个视图,但我不想为模型编写一个类,因为在许多视图中我将有许多查询将返回不同的模型。 例如,我有一个linq查询: from p in db.Articles.Where(p => p.user_id == 2) select new { p.article_id, p.title, p.date, p.category, /* Additional parameters which arent in Article model */ }; 我需要为此查询编写一个View。 此查询返回文章。 现在我不知道应该如何看起来像模型定义。 我试着用这个定义: @model System.Collections.IEnumerable 但后来我有一个错误,而不是文件在对象类型中不存在: * CS1061:’object’不包含’addition_field’的定义,并且没有扩展方法’addition_field’接受类型’object’的第一个参数可以找到* 这是我的模型,我不想写下一个模型。 当然

如何在单个Razor View中编辑多个模型

我是MVC3的新手,我有多个模型,如BussinessDetails , ContactPerson , ServiceArea , Address等等。 我有一个单独的视图页面,其中共享视图页面,如Contacts , BusinessDetails , Address , ServiceArea等这些都在选项卡中。 他们有自己的模特。 我的问题是如何在同一编辑视图页面中编辑多个模型。 在发送这篇文章之前,我接受了MVC3“音乐商店”示例的帮助,但是只有一个模型ALBUM ,如果有一个或多个模型我将在同一个视图页面中编辑,它们会为一个模型提供编辑操作。 我已经创建了一个父业务规范类。 这是来自MVC“音乐商店” public ActionResult Edit(int id) { Album album = db.Albums.Find(id); ViewBag.GenreId = new SelectList(db.Genres, “GenreId”, “Name”, album.GenreId); ViewBag.ArtistId = new SelectList(db.Artists, “ArtistId”, “Name”, album.ArtistId); return View(album); } [HttpPost] public ActionResult Edit(Album album) { if (ModelState.IsValid) { […]

如何终止会话或会话ID(ASP.NET / C#)

当用户单击注销按钮时,如何销毁会话(Session [“Name”])? 我正在浏览MSDN上的ASP.NET API参考,它似乎没有太多信息。 看起来相当有限。 但我找不到ASP.NET类等的任何其他页面。 我试过了: Session.Abandon(); 和Session.Contents.Remove(“Name”); 它们都不起作用。 (我在谷歌搜索的论坛中发现了这些)