200 OK真的表示没有问题吗?有时候Status 200作为WebAPI的返回值,并不表示真的OK,例如取得一个文件,没有取到,但是返回值也会是200。200只是表示一个WebAPI执行完毕,没有异常而已,并不表示肯定成功。
IIS7.0 上传文件失败,返回404。乍一看是资源无法找到,其实是设定问题,上传文件的最大长度限制,还需要下面这样的配置。maxRequestLength很多文章都提到了,maxAllowedContentLength则很多文章没有提到。
关于审核的问题,
一定要在基础信息的协作者账号中追加 359884458
登陆后的页面上,一定要明显表示出登陆者的名称呢个
使用了ReSharp的移除没有使用(Remove Unused Reference)的引用之后,Package项目配置文件中的一些Item会被删除掉,在项目发布的时候一些动态链接库不会被发布到BIN目录下面,导致以下这样的问题
未能加载文件或程序集“Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。
所以一般建议在使用ReSharp之前将项目进行CheckIn,如果出现特殊情况则执行Redo即可。(具体配置文件:packages.config)
由于安全上的原因,Asp.net中QueryString等不允许出现<> 这样的字符如果你确认的确需要跳过安全验证,里面最简单的解决方法是使用Unvalidated版本
string strArticalID = context.Request.Unvalidated.Form["ArticalID"];
Asp.net MVC在运行的时候,会将所有Bin下面的DLL进行解析,如果有一个旧的DLL,例如是改名前的DLL残留在Bin目录中,则会出现多个同名控制器的问题。(在VS中怎么检查都不会发现这个问题的!)
参见RouteConfig的编写,这里可以指定默认的Area,写法必须严格按照例子.Home_Default这个路由名字不要使用(可能系统会默认注册这个名字)(错误信息:路由集合中已存在名为“Home_default”的路由。路由名称必须唯一。)
如果不指定Layout,默认使用 Views/Shared/_Layout(_ViewStart.cshtml)
组件放在Shared/DisplayTemplate/ 下面
这是个浏览器兼容性的话题。有时候你会发现HTML的Class名称大小写写错了,样式也会生效,这是因为你没有加上 DOCTYPE 这个TAG。如果加上之后,则类名称不允许忽略大小写。
修改Area名称后注意各处名字空间的统一
public ActionResult Index(int PageNo = 1)
*如果同时存在 没有参数和带参数的,会报错。可选参数倒没有问题。。。
可以使用 $.post来简化Post操作
添加 IRequiresSessionState 接口即可
public class PublishPost : IHttpHandler, IRequiresSessionState
注意 forms的下标注意 POST方法必须写明