我正在使用c#MVC 2和ASP.NET.我的一个表单包括一个文件输入字段,允许用户选择任何文件类型,然后将其转换为blob并保存到数据库中.我的问题是,每当用户选择超过某个Mb(约8)的文件时,我会收到一个页面错误,说明如下:
The connection was reset
The connection to the server was reset while the page was loading.
Run Code Online (Sandbox Code Playgroud)
我不介意用户上传的文件有8Mb的限制但是我需要停止当前错误的发生并显示正确的验证消息(最好使用ModelState.AddModelError函数).有谁能够帮我?在页面中发生任何其他事情之前,我似乎无法"捕获"错误,因为它在它到达控制器内的上传功能之前发生.
我正在使用MvcSiteMapProvider 2.2.1(http://mvcsitemap.codeplex.com),并且当这些子节点具有动态参数(id)时,在动态节点(使用dynamicNodeProvider)下创建子节点时遇到问题.
我正在丢失以下路线的面包屑:
商店/ 5 /产品/编辑/ 23
url模式的位置是:
存储/ {STOREID}/{控制器}/{行动}/{ID}
当ID被省略时(即"新"动作),它可以正常工作.但是当指定ID时,它与路径不匹配,并且我的面包屑(使用SiteMapPath帮助程序)是空白的.
我的站点地图:(已删除)
<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-2.0">
<mvcSiteMapNode title="Home" controller="Dashboard" action="Index" changeFrequency="Always" updatePriority="Normal">
<mvcSiteMapNode title="My Account" controller="Account" action="Index" key="Account" />
<mvcSiteMapNode title="My Stores" area="Stores" controller="Home" action="Index" visibilityProvider="ControlPanel.Areas.Stores.StoreAreaVisibilityProvider, ControlPanel" >
<mvcSiteMapNode title="Store" action="Index" dynamicNodeProvider="ControlPanel.Areas.Stores.StoreAreaNodeProvider, ControlPanel" />
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMap>
Run Code Online (Sandbox Code Playgroud)
区域注册:
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Store_Index",
"Stores",
new { action = "Index", controller = "Home" },
new string[] { "ControlPanel.Areas.Stores.Controllers" }
);
context.MapRoute(
"Store_default",
"Stores/{storeID}/{controller}/{action}/{id}",
new { …
Run Code Online (Sandbox Code Playgroud)