Tag: asp.net mvc

为什么我不能在MVC控制器中使用System.IO.File方法?

我想在一个MVC控制器中使用它之前,看看是否存在一个文件: string path = "content/image.jpg"; if (File.Exists(path)) { //Other code } File关键字以红色下划线,编译器显示错误: System.Web.MVC.Controller.File(string, string, string)是一个'方法',巫婆在给定的上下文无效。 如何在控制器中使用File.Exists() ?

一个或多个实体的validation失败,同时使用entity framework保存对SQL Server数据库的更改

我想保存我的编辑到数据库,我在ASP.NET MVC 3 / C#中使用entity framework代码,但我得到的错误。 在我的Event类中,我有DateTime和TimeSpan数据types,但是在我的数据库中,分别有Date和Time。 这可能是原因吗? 在保存对数据库的更改之前,如何在代码中转换为适当的数据types。 public class Event { public int EventId { get; set; } public int CategoryId { get; set; } public int PlaceId { get; set; } public string Title { get; set; } public decimal Price { get; set; } public DateTime EventDate { get; set; } […]

如何创build文件并通过ASP.NET MVC中的FileResult返回?

我必须在我的应用程序的ASP.net MVC应用程序创build和返回文件。 文件types应该是正常的.txt文件。 我知道我可以返回FileResult,但我不知道如何使用它。 public FilePathResult GetFile() { string name = "me.txt"; FileInfo info = new FileInfo(name); if (!info.Exists) { using (StreamWriter writer = info.CreateText()) { writer.WriteLine("Hello, I am a new text file"); } } return File(name, "text/plain"); } 此代码不起作用。 为什么? 如何与stream结果做到这一点?

如何渲染一个Razor视图到ASP.NET MVC 3中的string?

我一直在search网站,但我能find的所有例子都是关于如何渲染部分控件.ascx ,或者依赖于控制器上下文。 我想要一个方法,使我能够提供视图和模型的相对path,并使用该模型将该视图渲染为string: string result = Utility.RenderViewToString("~/Views/My/Profile.cshtml", model); 我能find的所有例子都是针对较老版本的MVC,或者根本就没有做我需要做的事情。

确保控制器有一个无参数的公共构造函数错误

我已经按照这个教程已经很好,直到我修改我的DbContext有一个额外的构造函数。 我现在有问题的决议,不知道该怎么做来解决这个问题。 有没有一种简单的方法来强制它抢无参数的构造函数或我正在接近这个错误? 带有两个构造函数的DbContext : public class DashboardDbContext : DbContext { public DashboardDbContext() : base("DefaultConnection") { } public DashboardDbContext(DbConnection dbConnection, bool owns) : base(dbConnection, owns) { } } SiteController构造函数: private readonly IDashboardRepository _repo; public SiteController(IDashboardRepository repo) { _repo = repo; } 库: DashboardDbContext _context; public DashboardRepository(DashboardDbContext context) { _context = context; } UnityResolver代码: public class […]

如何使用jquery或ajax更新c#/ asp.net中的剃刀局部视图的MVC项目

在MVC的部分视图文件中,我构build了一个Html.TextBox和两个提交button。 这两个button将增加/减less一旦点击Html.TextBox值。 Html.TextBox的显示值会相应地改变。但是,一旦我需要点击后更新基于新值的#refTable div。 该页面或部分从未更新。 代码如下,添加一些意见是为了解释的目的。 谢谢你的帮助。 // * ** * *** cshtml文件** * ** * **** // <body> </body> <input type="submit" value="PrevY" name="chgYr2" id="pY" /> @{ var tempItem3 = Model.First(); // just give the first entry from a database, works. if (ViewData["curSel"] == null) { @Html.TextBox("yearSelect3", Convert.ToDateTime(tempItem3.Holiday_date).Year.ToString()); ViewBag.selYear = Convert.ToDateTime(tempItem3.Holiday_date).Year; // just initial value, […]

ASP.NET MVC – 如何使用视图模型

比方说,我有一个页面,允许编辑用户的细节,所以我有一个ViewModel是这样的: public class UserViewModel { public string Username { get; set; } public string Password { get; set; } public int ManagerId { get; set; } public string Category { get; set; } } 所以在我的EditUser操作中,我可以通过模型联编程序返回,然后我可以将其映射到域模型: public ActionResult EditUser(UserViewModel user) { … 但是,显示表单的页面还需要详细信息,例如pipe理员和类别列表,以便为这些字段提供下拉列表。 它也可能在边栏中显示其他用户的列表,以便您可以在正在编辑的不同用户之间进行切换。 那么我有另一个视图模型: public class ViewUserViewModel { public UserViewModel EditingUser { get; set; } […]

从操作filter属性redirect

在ActionFilterAttribute做redirect的最好方法是什么? 我有一个名为IsAuthenticatedAttributeFilter的ActionFilterAttribute并检查了会话variables的值。 如果该variables为false,我希望应用程序redirect到login页面。 我宁愿redirect使用路由名称SystemLogin但是在这一点的任何redirect方法将罚款。

在asp.net mvc中格式化datetime 4

如何强制在asp.net mvc 4中的date时间的格式? 在显示模式下,它显示为我想要的,但在编辑模式中不显示。 我正在使用displayfor和editorfor和applyformatineditmode = true与dataformatstring =“{0:dd / MM / yyyy}”我试过了: web.config中的全球化(包括他们两个)与我的文化和uiculture。 修改application_start()中的文化和uiculture date时间的自定义模型绑定器 我不知道如何强制它,我需要inputdate为dd / MM / yyyy不是默认的。 更多信息:我的viewmodel是这样的 [DisplayName("date of birth")] [DataType(DataType.Date)] [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)] public DateTime? Birth { get; set; } 在我看来,我使用@Html.DisplayFor(m=>m.Birth)但这工作如预期(我看到格式),并inputdate我使用@Html.EditorFor(m=>m.Birth)但如果我尝试并input像13/12/2000东西是失败的错误,它不是一个有效的date(12/13/2000和2000/12/13工作正常,但我需要dd / MM / yyyy)。 自定义的modelbinder在application_start()b / c中调用,我不知道在哪里。 使用<globalization/>我已经尝试过与culture="ro-RO", uiCulture="ro"等文化,会给我dd / MM / yyyy。 我也试图在application_start()的每个线程的基础上设置它(这里有很多的例子,关于如何做到这一点) 对于所有这些都会读到这个问题:只要我没有客户端validation,Darin Dimitrov的答案似乎就会起作用。 […]

将Json反序列化为Asp.Net Web API中的派生types

我打电话给我的WebAPI发送一个我想匹配(或绑定)模型的JSON的方法。 在控制器中我有一个方法,如: public Result Post([ModelBinder(typeof(CustomModelBinder))]MyClass model); 'MyClass',作为参数给出的是一个抽象类。 我希望在,根据传递的JSON的types,正确的inheritance类被实例化。 为了实现它,我试图实现一个自定义绑定。 问题是(我不知道这是非常基本的,但我找不到任何东西)我不知道如何检索请求中的原始Json(或更好,某种序列化)。 我懂了: actionContext.Request.Content 但是所有的方法都是以asynchronous方式公开的。 我不知道这是否适合将生成模型传递给控制器​​方法。 非常感谢!