标签归档:开发

微信支付统一下单接口没有修改价格的接口?

微信支付开发中,碰到的一个奇葩的问题:
如果用户再支付的时候选择使用微信支付,但最终未付款,此时后台若修改了价格,用户前台再去支付的时候看,则就提示支付失败了,原因是现在的价格和上次的价格不一致,导致支付失败.
找了一下,并没有找到修改微信订单的接口,只有撤销订单的接口,如果撤销了订单能否再重新[……]

Read more

SQL Server decimal说明

今天在开发的时候,一直报:将 numeric 转换为数据类型 numeric 时出现算术溢出错误。
看数据库字段的长度设计的也足够啊,为什么会出这样的问题呢?
被这个问题困扰了两个多小时,后来把左侧的长度加长后才发现,真被自己给蠢死了。
一直以为decimal左边的这个数字是总不包含小数点的长[……]

Read more

asp.net c#判断当前浏览器是否微信浏览器的方法

直接放代码:
public static bool IsWechatBrowser()
{
string userAgent = HttpContext.Current.Request.UserAgent;
if (userAgent.ToLower().Contains(“micromessenger”))
{
return true;
}
return false;
}

如果true则表示当前浏览器是微信的浏览器,否则,表示不是微信浏览器![……]

Read more

无法编辑xxxx,样式表必须是当前项目的一部分,并且项目必须是网站或web应用程序项目.

在使用Visual Studio 2015开发项目的时候,保存的时候出现提示:
无法编辑xxxx,样式表必须是当前项目的一部分,并且项目必须是网站或web应用程序项目.如下图:

到网上找了资料,的确能解决,解决方案如下:
在项目的右键>属性>WEB>调试器>将“启用 编辑并继续”。然后再到项目去保存,依然有提示,最后我再执行了一次,再去保存项目,这个提示就神奇般的没了?!

我一直都是把样式放在另外一个域名下,然后使用在线的形式调用的样式,样式不是方在本地的,只是为什么没出现过这个提示,今天突然出现这个提示。
目前尚不知此问题到底是怎么原因引起的。如果你知道这个问题是什么引起的,麻烦回复告知下。[……]

Read more

IIS c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\App_global.asax.zmwmdwxy.dll’ — ‘拒绝访问

网站发布到服务器上之后,就出现这个问题了,之前以为是没iis没注册.net freamwork 4.0 所以重新注册了一下,结果还是一样,然后也给了root目录最高的权限,所有的用户都给了读写权限,但还是一样.最后搞了半天,找到了解决方案:给windows目录下的temp目录加上iis_user的读[……]

Read more

VS 2015 IIS 10.0 Detailed Error – 500.22 – Internal Server Error

IIS 10.0 Detailed Error – 500.22 – Internal Server Error。

HTTP Error 500.22 – Internal Server Error

检测到在集成的托管管道模式下不适用的 ASP.NET 设置。

最可能的原因:

  • 此应用程序在 system.web/httpModules 节中定义配置。

可尝试的操作:

  • 将配置迁移到 system.webServer/modules 节。也可以手动这样做,或通过在命令行中使用 AppCmd 来这样做。例如,从 IIS Express 安装目录运行 appcmd migrate config “Default Web Site/”。使用 AppCmd 迁移应用程序将使它能够在集成模式下工作,并能继续在经典模式下和以前版本的 IIS 上工作。
  • 如果您确信可以忽略此错误,则可以通过将 system.webServer/validation@validateIntegratedModeConfiguration 设置为 false 来禁用它。
  • 也可以将应用程序切换到经典模式应用程序池。例如,从 IIS Express 安装目录运行 appcmd set app “Default Web Site/” /applicationPool:”Clr4ClassicAppPool”。只有在无法迁移应用程序时才这样做。

项目用VS2015后一运行就出现这样的问题,后来发现,原来是web.confg的配置与iis 10.0的配置有差异,修改如下:

修改前:

<httpModules>
<add type=”URLRewriter.ModuleRewriter, URLRewriter” name=”ModuleRewriter”/>
</httpModules>

修改后:

<system.webServer>
<modules>
<add type=”URLRewriter.ModuleRewriter, URLRewriter” name=”ModuleRewriter”/>
</modules>
</system.webServer>

 

运行即可正常![……]

Read more

javascript常见的操作日期时间的方法函数(最全了)

最全面的js操作日期时间的方法函数.

Js获取当前日期时间及其它操作

var myDate = new Date();
myDate.getYear(); //获取当前年份(2位)
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString( ); //获取日期与时间

 

日期时间脚本库方法列表

Date.prototype.isLeapYear 判断闰年
Date.prototype.Format 日期格式化
Date.prototype.DateAdd 日期计算
Date.prototype.DateDiff 比较日期差
Date.prototype.toString 日期转字符串
Date.prototype.toArray 日期分割为数组
Date.prototype.DatePart 取日期的部分信息
Date.prototype.MaxDayOfDate 取日期所在月的最大天数
Date.prototype.WeekNumOfYear 判断日期所在年的第几周
StringToDate 字符串转日期型
IsValidDate 验证日期有效性
CheckDateTime 完整日期时间检查
daysBetween 日期天数差

js代码:

//—————————————————
// 判断闰年
//—————————————————
Date.prototype.isLeapYear = function()
{
return (0==this.getYear()%4&&((this.getYear()%100!=0)||(this.getYear()%400==0)));
}

//—————————————————
// 日期格式化
// 格式 YYYY/yyyy/YY/yy 表示年份
// MM/M 月份
// W/w 星期
// dd/DD/d/D 日期
// hh/HH/h/H 时间
// mm/m 分钟
// ss/SS/s/S 秒
//—————————————————
Date.prototype.Format = function(formatStr)
{
var str = formatStr;
var Week = [‘日’,’一’,’二’,’三’,’四’,’五’,’六’];

str=str.replace(/yyyy|YYYY/,this.getFullYear());
str=str.replace(/yy|YY/,(this.getYear() % 100)>9?(this.getYear() % 100).toString():’0′ + (this.getYear() % 100));

str=str.replace(/MM/,this.getMonth()>9?this.getMonth().toString():’0′ + this.getMonth());
str=str.replace(/M/g,this.getMonth());

str=str.replace(/w|W/g,Week[this.getDay()]);

str=str.replace(/dd|DD/,this.getDate()>9?this.getDate().toString():’0′ + this.getDate());
str=str.replace(/d|D/g,this.getDate());

str=str.replace(/hh|HH/,this.getHours()>9?this.getHours().toString():’0′ + this.getHours());
str=str.replace(/h|H/g,this.getHours());
str=str.replace(/mm/,this.getMinutes()>9?this.getMinutes().toString():’0′ + this.getMinutes());
str=str.replace(/m/g,this.getMinutes());

str=str.replace(/ss|SS/,this.getSeconds()>9?this.getSeconds().toString():’0′ + this.getSeconds());
str=str.replace(/s|S/g,this.getSeconds());

return str;
}

//+—————————————————
//| 求两个时间的天数差 日期格式为 YYYY-MM-dd
//+—————————————————
function daysBetween(DateOne,DateTwo)
{
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf (‘-‘));
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf (‘-‘)+1);
var OneYear = DateOne.substring(0,DateOne.indexOf (‘-‘));

var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf (‘-‘));
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf (‘-‘)+1);
var TwoYear = DateTwo.substring(0,DateTwo.indexOf (‘-‘));

var cha=((Date.parse(OneMonth+’/’+OneDay+’/’+OneYear)- Date.parse(TwoMonth+’/’+TwoDay+’/’+TwoYear))/86400000);
return Math.abs(cha);
}

//+—————————————————
//| 日期计算
//+—————————————————
Date.prototype.DateAdd = function(strInterval, Number) {
var dtTmp = this;
switch (strInterval) {
case ‘s’ :return new Date(Date.parse(dtTmp) + (1000 * Number));
case ‘n’ :return new Date(Date.parse(dtTmp) + (60000 * Number));
case ‘h’ :return new Date(Date.parse(dtTmp) + (3600000 * Number));
case ‘d’ :return new Date(Date.parse(dtTmp) + (86400000 * Number));
case ‘w’ :return new Date(Date.parse(dtTmp) + ((86400000 * 7) * Number));
case ‘q’ :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Number*3, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
case ‘m’ :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Number, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
case ‘y’ :return new Date((dtTmp.getFullYear() + Number), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
}
}
[……]

Read more

安装mysql5.0时出现:write configuration file

安装mysql5.0时出现:write configuration file .然后就一直停在这里不动了.

后来查资料发现可能是以下的问题导致的:

原因1:mysql的安装路径不能包含字符或者中文。
原因2:select a server type时选择了Server Machine项,write configuration file报错。
解决办法:修改安装路径重新安装。select a server type选择developer Machine项(开发测试类选用)

我这边导致的是原因2.不选这个就可以了~[……]

Read more