Tag: asp.net mvc

如何使用POST动词redirect到页面?

在控制器中调用RedirectToAction ,它将使用HTTP GET自动redirect。 我如何明确地告诉它使用HTTP POST? 我有一个行动,接受GET和POST请求,我想能够使用POST RedirectToAction并发送一些值。 喜欢这个: this.RedirectToAction( "actionname", new RouteValueDictionary(new { someValue = 2, anotherValue = "text" }) ); 我希望使用HTTP POST而不是GET发送someValue和anotherValue值。 有谁知道如何做到这一点?

覆盖ASP.NET MVC中的授权属性

我有一个MVC控制器基类,我应用了授权属性,因为我想几乎所有的控制器(和他们的行动一起)被授权。 不过,我需要有一个控制器和另一个控制器的行动未经授权。 我想能够用[Authorize(false)]来装饰它们,但是这是不可用的。 有任何想法吗?

ASP.NET MVC的HandleError

我如何去在asp.net MVC预览5中的[HandleError]filter? 我在我的Web.config文件中设置了customErrors <customErrors mode="On" defaultRedirect="Error.aspx"> <error statusCode="403" redirect="NoAccess.htm"/> <error statusCode="404" redirect="FileNotFound.htm"/> </customErrors> 并把[HandleError]放在我的控制器类上面,如下所示: [HandleError] public class DSWebsiteController: Controller { [snip] public ActionResult CrashTest() { throw new Exception("Oh Noes!"); } } 然后我让我的控制器从这个类inheritance,并调用CrashTest()。 Visual Studio暂停在错误,并按f5继续后,我重新路由到Error.aspx?aspxerrorpath = / sxi.mvc / CrashTest(其中sxi是所用的控制器的名称。当然path无法find,我得到“/'应用程序中的服务器错误”404。 这个网站已经从预览版3移植到了5.除了error handling以外,所有的东西都运行(并没有太多的工作来移植)。 当我创build一个完整的新项目,error handling似乎工作。 想法? – 注意 – 由于这个问题现在有超过3K的意见,我认为这是有利的,把我目前(ASP.NET MVC 1.0)使用。 在mvc contrib项目中有一个叫做“RescueAttribute”的精彩属性,你也许应该检查一下;)

来自资源的DisplayName属性?

我有一个本地化的应用程序,我想知道是否有可能从某个资源设置某个模型属性的DisplayName。 我想要做这样的事情: public class MyModel { [Required] [DisplayName(Resources.Resources.labelForName)] public string name{ get; set; } } 但我不能这样做,因为编译器说:“属性参数必须是一个常量expression式,typeofexpression式或数组创buildexpression式属性参数types”:( 有没有解决办法? 我手动输出标签,但我需要这些validation器输出!

如何发布与JSON,jQuery的ASP.NET MVC控制器的复杂对象的数组?

我目前的代码如下所示。 如何将我的数组传递给控制器​​,以及我的控制器动作必须接受哪种参数? function getplaceholders() { var placeholders = $('.ui-sortable'); var result = new Array(); placeholders.each(function() { var ph = $(this).attr('id'); var sections = $(this).find('.sort'); var section; sections.each(function(i, item) { var sid = $(item).attr('id'); result.push({ 'SectionId': sid, 'Placeholder': ph, 'Position': i }); }); }); alert(result.toString()); $.post( '/portal/Designer.mvc/SaveOrUpdate', result, function(data) { alert(data.Result); }, "json"); }; 我的控制器操作方法看起来像 public […]

如何更改ASP.NET MVC中的默认validation错误消息?

说我在我的模型中有这个属性: [DisplayName("test")] [Required(ErrorMessage = "required")] public DateTime? SomeDate { get; set; } 当您在Html.TextBoxFor(model => model.SomeDate)input“asdf”时,您会收到validation错误消息“The Html.TextBoxFor(model => model.SomeDate) '对testing无效”。 你如何修改该消息? ASP.NET MVC被忽略[DataType(DataType.DateTime, ErrorMessage = 'some other message')]

ASP.NET MVC:没有为此对象定义的无参数构造函数

Server Error in '/' Application. ——————————————————————————– No parameterless constructor defined for this object. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.MissingMethodException: No parameterless constructor defined for this object. Source […]

URL中的URL编码斜线

我的地图是: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with params new { controller = "Home", action = "Index", id = "" } // Param defaults ); 如果我使用URL http://localhost:5000/Home/About/100%2f200 ,则没有匹配的路由。 我将URL更改为http://localhost:5000/Home/About/100然后再次匹配路由。 有没有简单的方法来处理包含斜线的参数? 其他转义值(空格%20 )似乎工作。 编辑: 编码Base64为我工作。 它使得URL变得丑陋,但是现在没问题。 public class UrlEncoder { public string URLDecode(string decode) { if (decode == null) return null; if (decode.StartsWith("=")) { […]

将对象列表传递给使用jQuery Ajax的MVC控制器方法

我想通过使用jQuery的ajax()函数传递一个对象数组到一个MVC控制器方法。 当我进入PassThing()C#控制器方法时,参数“things”为空。 我已经尝试过这种使用Listtypes的参数,但这也不起作用。 我究竟做错了什么? <script type="text/javascript"> $(document).ready(function () { var things = [ { id: 1, color: 'yellow' }, { id: 2, color: 'blue' }, { id: 3, color: 'red' } ]; $.ajax({ contentType: 'application/json; charset=utf-8', dataType: 'json', type: 'POST', url: '/Xhr/ThingController/PassThing', data: JSON.stringify(things) }); }); </script> public class ThingController : Controller { public void […]

如何在ASP.NET MVC 4应用程序中使用会话?

我是ASP.NET MVC的新手。 我以前使用PHP,很容易创build一个会话,并根据当前的会话variablesselect用户logging。 我已经在互联网上到处寻找一个简单的分步教程,可以告诉我如何在我的C#ASP.NET MVC 4应用程序中创build和使用会话。 我想创build一个用户variables的会话,我可以从我的控制器的任何地方访问,并能够在我的LINQ查询中使用variables。 -提前致谢!