我有一个动作,我从一个锚点调用,因此, Site/Controller/Action/ID其中ID是一个int 。 稍后我需要redirect到来自Controller的同一个Action。 有没有一个聪明的方法来做到这一点? 目前我存储在tempdata中的ID ,但是当你回去后再次点击f5刷新页面,tempdata就消失了,页面崩溃了。
使用“ActionName”属性为操作方法设置别名有什么好处? 我真的没有看到它的好处,在提供用户select调用一个其他名称的行动方法。 指定别名后,用户只能使用别名调用操作方法。 但是,如果这是必需的,为什么用户不更改操作方法的名称,而不是指定一个别名? 我真的很感激,如果任何人都可以提供一个例子,使用“ActionName”的场景,它可以提供很大的好处或最好使用。
是否有可能在另一个应用程序内部自主托pipeasp.net mvc。 控制台,窗体,服务等 我想build立一个应用程序,提供一个Web界面来控制它,我想使用asp.net mvc的Web部分。 我简单地看了一下Nancy,看起来可以工作,尽pipe它不支持asp.net mvc但支持razor,虽然它没有像asp.net那样的支持水平(例如,强types的视图) 我也发现这个问题,但它并没有真正深入到很多可能使用没有IIS的ASPNET MVC2?
我已经inheritance了使用ASP.Net MVC 4编写的代码库。每个post方法都需要一个FormCollection 。 除了不得不通过带引号的string来访问这些值以外,还会导致一些缺陷,例如无法在我的ViewModel属性中使用像ModelState.IsValid或[AllowHtml]属性。 他们实际上为每个视图都创build了ViewModel类(尽pipe它们几乎只是实际的Entity Framework Model类的直接包装),但它们仅用于GET方法。 有什么我失踪的FormCollection,给出了一个原因,为什么这可能实际上是一个好主意? 这似乎只有缺点。 我想通过使用ViewModels来修复它。 这将需要很多的工作,因为ViewModel的属性是接口,而不是具体的类,这意味着要么写自定义绑定或更改ViewModels。 但也许有什么我失踪的地方使用FormCollection是有道理的?
每当我提交表单时,我也会得到这个错误,因为这个操作方法没有被调用: 具有相同密钥的项目已被添加。 而exception的细节: [ArgumentException:具有相同密钥的项目已被添加。] System.ThrowHelper.ThrowArgumentException(ExceptionResource资源)+52 System.Collections.Generic.Dictionary`2.Insert(TKey key,TValue value,Boolean add)+9382923 System.Linq.Enumerable.ToDictionary(IEnumerable`1 source,Func`2 keySelector,Func`2 elementSelector,IEqualityComparer`1 comparer )+252 System.Linq.Enumerable.ToDictionary(IEnumerable`1 source,Func`2 keySelector,IEqualityComparer`1 comparer)+91 System.Web.Mvc.ModelBindingContext.get_PropertyMetadata()+228 System.Web.Mvc.DefaultModelBinder.BindProperty(ControllerContext controllerContext,ModelBindingContext bindingContext,PropertyDescriptor propertyDescriptor)+392 System.Web.Mvc.DefaultModelBinder.BindProperties(ControllerContext controllerContext,ModelBindingContext bindingContext)+147 System.Web.Mvc.DefaultModelBinder.BindComplexElementalModel(ControllerContext controllerContext,ModelBindingContext bindingContext,Object model)+98 System.Web.Mvc.DefaultModelBinder.BindComplexModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+2504 System.Web.Mvc.DefaultModelBinder.BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+548 System.Web.Mvc.ControllerActionInvoker.GetParameterValue(ControllerContext controllerContext,ParameterDescriptor parameterDescriptor)+473 System.Web.Mvc.ControllerActionInvoker.GetParameterValues(ControllerContext controllerContext,ActionDescriptor actionDescriptor)+181 System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext,String actionName)+830 System.Web.Mvc.Controller.ExecuteCore()+136 System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext)+111 System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext)+39 System.Web.Mvc。<> c__DisplayClass8.b__4()+65 System.Web.Mvc.Async。<> c__DisplayClass1.b__0()+44 […]
ASP.NET MVC中的<% %>和<%= %>什么区别? 何时使用哪个?
我试图创build一个通用控制器,即: public class MyController<T> : Controller where T : SomeType { … } 但是,当我尝试使用它时,我遇到了这个错误… 控制器名称必须以“控制器”结尾 所以,我的问题是否有可能在asp.net mvc中制作一个通用控制器? 谢谢!
我在这里错过了一些东西。 我有这个jQuery JavaScript: $.ajax({ type: "POST", url: "/update-note-order", dataType: "json", data: { orderedIds: orderedIds, unixTimeMs: new Date().getTime() } }); 其中orderedIds是一个JavaScript数组数组(例如var orderedIds = [1, 2] )。 处理Controller方法是: [HttpPost] public void UpdateNoteOrder(long[] orderedIds, long unixTimeMs) { … } 当我把一个Debugger.Break()放在UpdateNoteOrder() ,在Watch窗口中orderedIds是null 。 (但是, unixTimeMs有一个数字值。) 如何通过$.ajax()传递数组数组, orderedIds在我的控制器中orderedIds是一个long[] ?
如何处理404错误没有框架抛出exception500错误代码?
我正在build立我自己的会员系统,我不想和MS会员提供商做任何事情。 我已经浏览了互联网和StackOverflow,但是我可以find的是MS会员供应商之上构build的会员供应商。 无论如何,我现在几乎已经搞定了所有的东西,但是我想使用一个使用我的会员基础设施的自定义授权属性。 我在网站上检查了这个线程,我正在尝试做类似的事情,但我不确定这是什么我需要的。 到目前为止,这些是我得到的课程: SessionManager: public static class SessionManager : ISessionManager { public static void RegisterSession(string key, object obj) { System.Web.HttpContext.Current.Session[key] = obj; } public static void FreeSession(string key) { System.Web.HttpContext.Current.Session[key] = null; } public static bool CheckSession(string key) { if (System.Web.HttpContext.Current.Session[key] != null) return true; else return false; } public static object ReturnSessionObject(string […]