Tag: asp.net mvc 3

AllowHtml属性不起作用

我有一个具有此属性的模型: [AllowHtml] [DisplayName(“Widget for Table”)] [StringLength(1000, ErrorMessage = “Maximum chars 1000”)] [DataType(DataType.Html)] public object TableWidget { get; set; } 这是控制器中的create方法: // // GET: /Admin/Table/Create public ActionResult Create(int id) { Season season = _seasonRepository.GetSeason(id); var table = new Table { SeasonId = season.SeasonId }; return View(table); } // // POST: /Admin/Table/Create [HttpPost] public ActionResult Create(Table a) […]

以编程方式运行命令行代码

我在windows命令promt中使用此代码运行..但我需要以编程方式使用c#代码完成,请帮忙 C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319> aspnet_regiis.exe -pdf“connection Strings”“C:\ Users \ XXX \ Desktop \ connection string \ DNN”

如何在MVC3中的TemplateEditor中向模型属性添加validation属性

我有一个DateTime TemplateEditor,我想添加正则表达式validation。 我有一个RegularExpression属性,我可以用它来装饰模型,但我不想用一个正则表达式来装饰我所有模型中的每个datetime属性。 有没有办法让我的自定义TemplateEditor在为它呈现文本框时添加适当的不引人注意的标签?

结合Lambda表达式

我正在寻找一种方法来组合两个lambda表达式,而不在任何一个Expression.Invoke上使用Expression.Invoke 。 我想基本上构建一个链接两个独立的表达式的新表达式。 请考虑以下代码: class Model { public SubModel SubModel { get; set;} } class SubModel { public Foo Foo { get; set; } } class Foo { public Bar Bar { get; set; } } class Bar { public string Value { get; set; } } 我可以说我有两个表达方式: Expression<Func> expression1 = m => m.SubModel.Foo; Expression<Func> […]

在c#中将base64转换为Image

我正在使用MVC#。 当我尝试将base64字符串转换为图像时,图像不会被打开。 我从javascript获取base64字符串并将其转换为控制器中的图像。 这是我的代码。 var base64 = “data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABG4AAAH0CAYAAABsCGvoAAAgAElEQVR4Xuy9C5RV1Zmo++96P3ZVURSv4hEEFdQobYKtJESjJME+6WgTpPUQIrfpY8NRui/aKlcvY2hON0fN5TIUbh/6XDs9bgah0+1BY+gk2p2QFpIAgk9AiGBhlQgIokgVRQFVu3bd9S+c21WbXVV71157Pfb+loNh1ar5+Oc3Z/H…AgkKCA4CbBouoSAQIECBAgQIAAAQIECBAgkIaA4CaNOuoFAQIECBAgQIAAAQIECBAgkKCA4CbBouoSAQIECBAgQIAAAQIECBAgkIaA4CaNOuoFAQIECBAgQIAAAQIECBAgkKCA4CbBouoSAQIECBAgQIAAAQIECBAgkIaA4CaNOuoFAQIECBAgQIAAAQIECBAgkKCA4CbBouoSAQIECBAgQIAAAQIECBAgkIaA4CaNOuoFAQIECBAgQIAAAQIECBAgkKCA4CbBourS9wLLy8vhypUrob+/Pxw8eBALAQIECBAgQIAAAQIECBAonIDgpnAlS7vBY2Nj4e7du6GpqSkMDg4KXNIut94RIECAAAECBAgQIECAQBkBwY0hUjcC09PT4enTp9kMmdIxOzsbhoeHw/z8fOjp6QlDQ0Ohubk5XL16NbS3t4epqakwMjIS2trafvTavXv3ws2bN1e+Pjo6GmZmZkJLS8ua13R0dNSNh4YQIECAAAECBAgQIECAAAHBjTFQNwLj4+Ph2LFjq86y+XzZU29vb4ghzPHjx0NfX1/W/vj11V6LAc+FCxdCDHG6urqy82NANDk5GS5evPija+oGQ0MIECBAgAABAgQIECBAgMAnAcGNYVA3AqsFN4uLi9mSqbm5uZXlUzG4KQUypRkyMbj50ms3btzIlmCVjiNHjmTBzQ+vqRsMDSFAgAABAgQIECBAgAABAoIbY6CeBCYmJrKlUgMDAyvNiq/FmTJHjx4Nly9fDpcuXQp5gpvPZ9yUbr5a2FNPHtpCgAABAgQIECBAgAABAgTMuDEG6kqgtDlxbNTp06fD4cOHw7Vr17J9aU6dOhWWlpbCmTNnvnrGTdwDp7THTWnj49UCoLrC0BgCBAgQIECAAAECBAgQaHgBwU3DDwEABAgQIECAAAECBAgQIECAQL0KCG7qtTLaRYAAAQIECBAgQIAAAQIECDS8wP8AN7hUDozwDE4AAAAASUVORK5CYII=”; byte[] str = System.Text.Encoding.Unicode.GetBytes(base64); var buffer = Convert.FromBase64String(Convert.ToBase64String(str)); var file = Server.MapPath(“~/Content/images/err.png”); System.IO.File.WriteAllBytes(file, buffer); Image img = new Image(); img.ImageUrl = Server.MapPath(“~/Content/images/err.png”);

EditorFor IEnumerable with TemplateName

假设我有一个简单的模型来解释目的: public class Category { … public IEnumerable Products { get; set; } } 视图: @model Category … @Html.EditorFor(m => m.Products) EditorTemplate: @model Product … @Html.EditorFor(m => m.Name) 请注意,我不必为IEnumerable定义EditorTemplate,我只能为Product模型创建它,而MVC框架足够智能,可以使用自己的IEnumerable模板。 它遍历我的集合并调用我的EditorTemplate。 输出html将是这样的 … 毕竟,我可以发布到我的控制器。 但是,当我使用模板名称定义EditorTemplate时,为什么MVC没有做到这一点? @Html.EditorFor(m => m.Products, “ProductTemplate”) 在这种情况下,我必须将属性的类型更改为IList ,自己遍历集合并调用EditorTemplate @for (int i = 0; i m.Products[i], “ProductTemplate”) } 这似乎是一种肮脏的解决方法给我。 这样做是否还有其他更清洁的解决方案?

使用数据注释将十进制值validation为2位小数?

我在我的视图模型中有这个: [Required(ErrorMessage = “Price is required”)] [Range(0.01, 999999999, ErrorMessage = “Price must be greater than 0.00”)] [DisplayName(“Price ($)”)] public decimal Price { get; set; } 我想validation用户输入的小数位数不超过2位。 所以我想拥有 有效值 :12,12.3,12.34 无效值 :12.,12.345 有没有办法用数据注释validation这一点?

在LINQ语句中使用部分类属性

我试图找出做我认为很容易的最佳方法。 我有一个名为Line的数据库模型,它代表发票中的一行。 看起来大致如此: public partial class Line { public Int32 Id { get; set; } public Invoice Invoice { get; set; } public String Name { get; set; } public String Description { get; set; } public Decimal Price { get; set; } public Int32 Quantity { get; set; } } 此类是从db模型生成的。 我有另一个类,增加了一个属性: public partial […]

DataAnnotations如何在MVC中真正起作用?

这更像是一个理论问题。 我目前正在使用ComponentModel.DataAnnotations检查MVC 3validation,一切都在自动运行,尤其是在客户端。 某种程度上某些东西检查这些属性,并生成javascript用于validation(或html5属性,如果使用不显眼的模式),它的工作原理。 我的问题是什么生成客户端javascript以及如何访问和修改它? 例如,我想稍微处理给定的dataannotation属性,或处理自定义属性(我发现我可以从ValidationAttribute派生它们,但可能由于某些原因我不想要)。 有人可以向我解释一下真正发生了什么吗? (或者链接到好的解释也会很好,因为我只找到了实际使用数据注释的教程) 编辑:此外,从ValidationAttribute派生,客户端validation不会自动运行。 为什么?

“不允许子操作执行重定向操作”

我有这个错误: 执行处理程序’System.Web.Mvc.HttpHandlerUtil + ServerExecuteHttpHandlerAsyncWrapper’的子请求时出错。 内部exception: 不允许子操作执行重定向操作。 知道为什么会这样吗? 顺便说一句,错误发生在这一行: @Html.Action(“Menu”, “Navigation”) 导航控制器中的菜单操作如下所示: public ActionResult Menu() { return PartialView(); }