Tag: asp.net mvc 3

在IIS 7.5中部署的MVC3 – 继续获取CS1009:无法识别的转义序列错误消息

我一直在 Line 43: public override void Execute() { Line 44: WriteLiteral(“\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\” + Line 45: “\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\”); Line 46: Source File: c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\ef576117\c80eec5d\App_Web_index.cshtml.a8d08dba.hua2yaob.0.cs Line: 44 错误信息。 有人可以帮忙吗? 我已经完成了以下所有项目: 如果在服务器上安装了.NET 4.0之后安装了IIS,则需要运行aspnet_regiis.exe以在IIS中注册它。应用程序池设置为以集成模式运行在web.config中,您拥有该组您正在使用http访问您的站点: // server / home / index (更改控制器和操作名称以匹配您的)。 您的路线将与Global.asax中的{controller} / {action}url相匹配。 相应的视图存在于〜/ Views / Home / Index.cshtml中。 具有相同二进制文件的此网站在本地计算机上运行,​​但不在另一台服 另一台服务器也安装了MVC3

仅更新模型的一部分

我正在使用ASP.NET MVC 3和Entity Framework Code First。 我有一个页面(使用Razor View Engine),允许用户更新模型的部分(产品): @ Html.LabelFor(model => model.Overview)@ Html.TextAreaFor(model => model.Overview) @Html.LabelFor(model => model.Description) @Html.TextAreaFor(model => model.Description) @Html.HiddenFor(model => model.ProductId) 我的控制器方法如下所示: [HttpPost] public ActionResult Update(Product product) { db.Products.Attach(product); db.SaveChanges(); } 我想要做的就是更新Product模型的Overview和Description属性。 但是,当我运行代码时,模型不会在数据库中更新,我也不会收到任何错误。 当我在调试时检查产品对象时,我看到虽然ProductId,Overview和Description字段是正确的(根据FORM POST),其他字段是NULL(我期望)。 我想知道产品对象的不完整状态是否导致它不保存到数据库? 这是模型: public class Product {public int ProductId {get; 组; } [Required(ErrorMessage = “Please enter a […]

根据c#中的元素大小对数组进行排序并返回数组索引

我需要将数组从最小值排序到最大值,但我需要在排序后只返回数组的索引。 我不想交换值,我只需要根据值大小返回值索引,例如 int[] arr = {7,8,2,3,1,5}; for (int i=0; i<=arr.length; i++) { int index = Array.IndexOf(arr, i); } 现在我想将值的索引从最小值返回到最大值为4,2,3,5,0,1。

IE想要下载JSON结果…… MVC3

我的MVC3应用程序将文档从用户上传到我们的服务器。 我返回一个JsonResult来显示任何错误,如果有的话: [HttpPost] public JsonResult SaveDocument(DocumentModel model, HttpPostedFileBase postedFile) { //my wonderful code return Json(new { success = true, message=”ok” }); } 以下是我如何提交请求: var isSubmitting = false; var addDocumentOptions = { beforeSubmit: beforeAddDocumentSubmit, // pre-submit callback success: afterDocumentSubmit // post-submit callback }; $(‘#btnCreateDocument’).click(function (e) { e.preventDefault(); $(‘#divError’).html(”); if (!isSubmitting) { $(‘#createDocForm’).submit(); } }); 上传完成后,此javascript函数将运行: function […]

将JSON发布到MVC控制器 – String参数为null

我故意不在控制器参数中使用绑定,所以我有一个看起来像这样的控制器: [HttpPost] public ActionResult UntypedForm(String serializedformdata) { //// … } 当我使用以下代码将序列化的JSON表单元素发布到控制器时: var formelements = $(‘#form’).serializeArray(); $.post(url, formelements, function (data) { }, “json”).error(function () { alert(“Error posting to ” + url); }); 我在控制器上获得String serializedformdata的NULL值。 但是,当我用强类型对象替换String serializedformdata时,绑定按预期正常工作。 我的控制器的重点是通用的JSONpost,我将创建一个BSON文档放入Mongo数据库。 所以….我故意不想要模型绑定,我希望序列化的字符串作为pamameter。 我发布时为什么我的serializedformdata字符串为null? 注意 – 我也尝试用Dictionary绑定到Dictionary public ActionResult UntypedForm(Dictionary serializedformdata) { //// … } 但是serializedformdata仍为null。

LINQ To Entities无法识别数组索引

我的代码中有以下function public List GetpathsById(List id) { List paths = new List(); for (int i = 0; i m.PresId == id[i]).FirstOrDefault(); paths.Add(press.FilePath); } return paths; } 但是当我尝试这个时,compiller会得到这样的错误。 LINQ to Entities does not recognize the method ‘Int64 get_Item(Int32)’ method, and this method cannot be translated into a store expression. 然后我尝试做这样的事情,一切正常。 public List GetpathsById(List id) { long x; […]

如何将同一基类中的子类放入列表中?

如何将同一基类中的子类放入列表中? 我正在使用ASP.NET MVC3并创建了一个basemodel类,其中包含名称,年龄等属性。 现在我创建了更多细节的子模型(子类)。 为了轻松处理子类,我想要一个包含对象的列表但是如何? 我已经阅读过有关接口或ICollection等等但不知道什么是正确的选择以及如何开始:-(

在路由中使用十进制的IIS6上的路由

我在我的MVC3项目中有一条路线,当通过调试器和IIS7运行时,它在本地运行得很好。 但是,我们的服务器是IIS6,当我移动我的应用程序时,我收到“无法找到页面”错误。 我的猜测是它与路线中的小数有关.. 所以我尝试实现一个似乎被调用但没有正常工作的RouteHandler,因为路径中的值没有被覆盖? 无论如何,这是我的路线: var route = context.MapRoute( “Management_version”, “Management/Version/{versionNumber}/{action}”, new { area = “Management”, controller = “Version”, action = “View” }, new[] { “FRSDashboard.Web.Areas.Management.Controllers” } ); route.RouteHandler = new HyphenatedRouteHandler(); 和我的路线处理程序: public class HyphenatedRouteHandler : MvcRouteHandler { protected override IHttpHandler GetHttpHandler(RequestContext requestContext) { var versionNumberContext = requestContext.RouteData.Values[“versionNumber”]; requestContext.RouteData.DataTokens[“versionNumber”] = versionNumberContext.ToString().Replace(“.”, “-“); return base.GetHttpHandler(requestContext); […]

将Model变量绑定到ASP.NET MVC3中的Action方法

我有一个控制器HomeController与以下action method : [HttpPost] public ActionResult DisplayData(MyViewModel myViewModel) { // Do something with myViewModel } ViewModel : public class MyViewModel { public string Name { get; set; } public string Surname { get; set; } public bool IsPeriod { get; set; } } 以下是View @model AppName.ViewModels.MyViewModel @{ Html.RenderPartial(“MyPartialView”, Model); } 我使用Url.Action如何在这里描述,但我在DisplayData操作方法中得到的是null。 在我得到的源代码中: 所以它实际上是传递类型而不是值。 而是将ViewModel正确传递给局部视图。 我究竟做错了什么?

为什么ASP.NET MVC 3exception被“处理”两次?

我已经使用下面的代码实现了exception处理。[编辑开始]我不知道它为什么两次调用视图。 [已编辑完成] Basecontroller public class BaseController : Controller { protected override void OnException(ExceptionContext filterContext) { if (filterContext.HttpContext.IsCustomErrorEnabled) { filterContext.ExceptionHandled = true; if (filterContext.Exception.GetType() == typeof(ArgumentOutOfRangeException)) { this.View(“OutOfRange”).ExecuteResult(this.ControllerContext); } else { this.View(“Error”).ExecuteResult(this.ControllerContext); } } base.OnException(filterContext); } } HomeController的 public class HomeController : BaseController { public ActionResult Exception2() { throw (new ArgumentOutOfRangeException()); } public ActionResult Exception3() { […]