标签归档:c#

使用微信开放平台微信登录碰到的那些问题

一:Scope 参数错误或没有 Scope 权限

按照这个提示,找了很多资料,目前说的最多的几个原因:
1. 不是服务号,订阅号没有相关的权限
2. 账号没有认证,没有相关的权限
3.scope参数位置不正确

排查了半天,以上所有的情况我们都没出现,我们是服务号,并且有相关的权限,[……]

Read more

c#获取远程图片文件流代码

/// <summary>
/// 获取图片流
/// </summary>
/// <param name=”url”>图片URL</param>
/// <returns></returns>
public static Stream GetRemoteImage(string url)
{
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
request.Method = “GET”;
request.ContentLength = 0;
request.Timeout = 20000;
HttpWebResponse response = null;

try
{
response = (HttpWebResponse)request.GetResponse();
return response.GetResponseStream();
}
catch
{
return null;
}
}

 

直接调用就好了.[……]

Read more

c#预处理指令

开发时,有些代码需要在开发坏境看效果,但到了非开发坏境则需要真实的效果,怎么办?
直接上代码:
#if DEBUG
Respon.Write(“DEBUG”);
#else
Respon.Write(“其他”);
#endif

如果你当前的是debug模式,则会输入DEBUG,如果[……]

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

从客户端(keyword=“< script >alert(”“”“)

使用ASP.NET c#语言开发的网站,若用户输入的数据中有包含html代码或javascript代码的话,默认会被安全机制给拦截,如下图:

解决方案:
在web.config配置文件中的system.web节点下,找到httpRuntime节点,在里面增加:requestValidationMode=”2.0″ 就可以了,同时将validateRequest的值设置为flase。
再输入有包含javascript的内容,则可以提交成功了。[……]

Read more

c#解析json:Cannot deserialize the current JSON object (e.g. {“name”:”value”}) into type ‘System.Collections.Generic.List

使用c#解析json的时候报:

Cannot deserialize the current JSON object (e.g. {“name”:”value”}) into type ‘System.Collections.Generic.List

出现这个错误的时候,可能是你对应的实体类型错误,例如这个字段可能是string类型的,结果你弄成了int类型,或者是实体类型的时候,你弄成了string类型。

我今天就碰到了这个坑,而且还花了不少的时间。。。[……]

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