使用System.Attribute特性类扩展枚举(enum)

众所周知,我们在使用枚举时,可以很轻松的获取枚举的名称和值:public enum EnumOrderStatus { 待制作 = 1, 制作中 = 2, 待发货 = 3, 待收货确认 = 4, 确认收货 = 5, 交易完成 = 6, 交易关闭 = 0 } var needProduce = EnumOrderStatus.待制作; var name = needProduce.ToString(); //获取枚举的名称:name = "待制作" var value = (int)needProduce;//获取枚举的值:value = 1;枚举的常用方法如上。在某项目中遇到业务场景如下:订单表中用一个OrderStatus记录了订单状态的枚举名称,需要在页...


阅读正文

C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\文件不...

很久没有写博了。最近半年除了忙活布置新家和过年期间走亲访友之外,都是在公司处理一些项目中的杂事;连家里买的很多书都停下来没看了,感觉这段时间在事业和学习上一直都是忙忙碌碌,却又碌碌无为。吐槽完,说正事:asp.net网站在服务器端运行时,会在C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\目录中生成编译文件,像这样的:想了解Temporary ASP.NET Files目录生成原理的可出门右转上百度查询,此篇博文要说的是:当Temporary ASP.NET Files目录生成文件太多,导致C盘爆满时,我们可以如何处理?方法一:把Temporar...


阅读正文

解决发布Web应用时报错:指定的路径或文件名太长,或者两者都太长。完全限定文件名必须少...

1.在VS中发布Web应用,进行发布相关的设置后,在发布过程中出现如下截图的错误信息2.查看错误输出信息后发现,在发布过程中,VS会在系统临时目录中创建文件进行预编译,并将预编译后的文件存储于另一个目录。猜测可能是目录名的问题3.在发布的网站根目录中找到*.publishproj文件,在<PropertyGroup>节点内添加<IntermediateOutputPath>..\Temp</IntermediateOutputPath>,将可以设置发布过程中的临时文件存放目录,这里设置的..\Temp将会在项目目录中自动创建一个Temp文件夹,如下图所示是在发布过程中Temp文件夹下自动创建的文件...


阅读正文

URL地址太长,“请求筛选模块被配置为拒绝包含的查询字符串过长的请求”错误处理办法

当页面地址的URL参数太长,网页会报出以下错误: 根据报错页面的提醒,我们可以通过修改web.config解决URL参数过长的问题,在web.config的<system.webServer>中修改以下节点(如果没有节点则添加): <security> <requestFiltering> <requestLimits maxQueryString="40000"></requestLimits> </requestFiltering> </security> maxQueryString默认值是2018,此处将数值改大一点即可!


阅读正文

ASP.NET自定义404页面返回真正的404状态码(StatusCode)

当访客访问网站不存在的页面地址时,IIS会返回404页面。这个默认的404页面对访客来说不够友好,我们通常会通过自定义404页面的方式,给展示一个友好的、个性化的404页面。 对于托管到.net Framework的动态页面,我们可以在web.config中配置customErrors节点,开启自定义错误页面。当用户访问不存在的页面时,都302跳转到我们指定的页面,如下: <customErrors mode="On"> <error statusCode="404" redirect="~/404.aspx"/> </customErrors> ...


阅读正文

ASP.NET通过HttpModule实现URL重写(伪静态)

1.首先在网站目录中建立URL重写规则的配置文件,这里存放在/Config/UrlRewrite.config文件中<?xml version="1.0" encoding="utf-8"?> <UrlRewriteConfig> <Rules> <RewriteRule> <LookFor>/News</LookFor> <SendTo>/News.aspx</SendTo> </RewriteRule> <RewriteRule> <LookFor>/NewsInfo/(\d*)</LookFor> <SendTo>/NewsInfo.aspx?id={0}</SendTo> </RewriteRule&...


阅读正文

使用LINQ取数组之间的并集、交集、差集

我们经常会遇到这种情况,有A、B两个数组,需要取出两个数组之间重复的元素(交集Intersect),或者将A数组中的B元素去除(差集Except),又或者合并两个数组并且不出现重复的元素(并集Union),所幸的是LINQ提供了一些方法,可以很直接的获取这些结果。取两数组的交集:var arrA = new[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; var arrB = new[] {2, 4, 6, 8, 10, 12, 14, 16, 18, 20}; var arrIntersect = arrA.Intersect(arrB); foreach (var item in arrIntersect) { Response.Write(item + ","); }输出结果为:2,4,6,8,10,取两数组的...


阅读正文

VS无法加载项目如何解决?——web应用程序项目XXX已配置为使用IIS。无法访问IIS元数据库

VS2015中无法加载Web应用程序,右击重新加载时弹出如下提示: 右击Web应用程序,重新编辑csproj文件: 找到文件中的ProjectExtensions > VisualStudio > FlavorProperties > WebProjectProperties > UseIIS 节点,将UseIIS节点值改为False,如果没有UseIIS节点,则加上此节点: <ProjectExtensions> <VisualStudio> <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}"> <WebProjectProperties>...


阅读正文