一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Programming Language

ASP.NET 4.0尚未在 Web 服务器上注册 解决方法

使用VS2010创建web应用程序时出现如下提示ASP.NET 4.0尚未在 Web 服务器上注册。为了使网站正确运行,可能需要手动将 Web 服务器配置为使用 ASP.NET 4.0,按 F1 可了解更多详细信息   解决方法: 首先设置IIS应用程序池 net framework版本为4.0   然后  开始->所有程序->附件->鼠标右键点击“命令提示符”->以管理员身份运行->%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i   from:http://www.cnblogs.com/lvxiouzi/p/3511446.html

龙生   27 Aug 2015
View Details

46个非常有用的PHP代码片段

在编写代码的时候有个神奇的工具总是好的!下面这里收集了 40+ PHP 代码片段,可以帮助你开发 PHP 项目。 这些 PHP 片段对于 PHP 初学者也非常有帮助,非常容易学习,让我们开始学习吧~ 1. 发送 SMS 在开发 Web 或者移动应用的时候,经常会遇到需要发送 SMS 给用户,或者因为登录原因,或者是为了发送信息。下面的 PHP 代码就实现了发送 SMS 的功能。 为了使用任何的语言发送 SMS,需要一个 SMS gateway。大部分的 SMS 会提供一个 API,这里是使用MSG91 作为 SMS gateway。 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 […]

龙生   10 Aug 2015
View Details

ASP.NET MVC Web API 学习笔记—-HttpClient简介

1. HttpClient简单介绍  依稀还记得那个时候用WebClient,HttpWebRequest来发送一个请求,现在ASP.NET MVC4中自带了一个类HttpClient,用于接收HttpResponseMessage和发送HttpRequestMesssage。 问题在于既然WebClient,HttpWebRequest可以完成相应的功能,为什么还要使用HttpClient类,.NET Framework中既然提出了这样一个类肯定是有其特别之处的,这里罗列几个不同之处: (1) 可以在HttpClient实例上配置扩展,设置默认的头部,取消未完成的的请求和设置 (2) HttpClient有自己的连接池 (3) HttpClient 不与特定的服务器绑定,可以访问任何Http请求 (4) HttpClient采用异步请求处理 2. HttpClient备注说明 HttpClient包含在System.net.Http.dll 程序集中,用户接受和发送http请求,该类适用于.NET4.0以上版本。 默认情况下,HttpWebRequest 将用于向服务器发送请求。此行为可指定一个不同的通道修改在获取 HttpMessageHandler 实例的构造函数重载之一中作为参数。如果需要与身份验证的功能或缓存,WebRequestHandler 可用于配置设置,而实例可传递给构造函数。返回的处理程序传递到采用 HttpMessageHandler 参数的构造函数重载之一 更多说明可以参考微软官方网站: http://msdn.microsoft.com/zh-cn/library/system.net.http.httpclient.aspx 3. HttpClient基本操作 static void BasicMethod() { string url = "http://www.baidu.com"; HttpClient client = new HttpClient(); string content = client.GetStringAsync(url).Result; Console.WriteLine(content); } 以上是使用HttpClient请求百度主页,貌似操作起来也挺方便的,运行输出请求得到的结果如下图:   控制台输出的为请求URL的内容。 HttpClient除了上面提到的GetStringAsync()方法之外,还提供了如下Get方法,详细可以参考MSDN: 4. 自定义请求头 如果要自定义请求头,我们需要继承一个类:HttpClientHandler      public class GitHttpClientHandler:HttpClientHandler     { protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) { request.Headers.Referrer = new Uri("http://www.google.com/"); request.Headers.Add("UserAgent", "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727)"); Task<HttpResponseMessage> task = base.SendAsync(request, cancellationToken); HttpResponseMessage response = task.Result; MediaTypeHeaderValue contentType = response.Content.Headers.ContentType; if (string.IsNullOrEmpty(contentType.CharSet)) { contentType.CharSet = "GBK"; } return task; } }   HttpClientHandler就是常见的代理模式,在HttpClient.GetStringAsync()加了一层封装,拦截了HttpClient的输入和输出,从而实现一些自定义的操作,这种方式我们在MVC 中非常常见,就是MVC中的过滤器。 5. 请求内容过长 HttpClient有一个属性MaxResponseContentBufferSize,它表示读取相应内容是最大的字节缓存数,默认值是64K,当页面内容很多的时候,超过64K则会抛出异常HttpRequestException,导致Get失败。 我们可以人工设置这个属性的大小: HttpClient client = new HttpClient() { MaxResponseContentBufferSize = 1024 * 1024 };   使用如上方式处理即可。 6. 中文问题    中文问题总是令人头疼,很多时候会出现乱码。上面提到的自定义请求头也可以处理,这里贴出一段代码作参考,中文问题有点复杂需要根据具体情况处理: HttpResponseMessage response = task.Result; MediaTypeHeaderValue contentType = response.Content.Headers.ContentType; if(string.IsNullOrEmpty(contentType.CharSet)) { contentType.CharSet = "GBK"; } from:http://www.cnblogs.com/qingyuan/archive/2012/11/08/2760034.html

龙生   06 Aug 2015
View Details

ASP.NET MVC Web API 学习笔记—联系人增删改查

本章节简单介绍一下使用ASP.NET MVC Web API 做增删改查。目前很多Http服务还是通过REST或者类似RESP的模型来进行数据操作的。下面我们通过创建一个简单的Web API来管理联系人           说明:为了方便数据不使用真正的数据库,而是通过内存数据模拟  1.       Web API中包含的方法 Action HTTP method Relative URI GetAllContact GET /api/contact GetContact GET /api/contact /id GetListBySex GET /api/contact?sex=sex PostContact POST /api/contact PutContact PUT /api/contact/id DeleteContact DELETE /api/contact/id http 四个主要的处理方法(get,put,post,delete)能够用来处理匹配增删改查操作: Get 可以在服务端检索匹配URI匹配的资源,不会对服务器数据进行修改操作 Put 用户修改URI指定的特定资源,如果服务端允许,Put 也可以用户创建新的资源 Post 可以用于创建一个资源。服务端会为这个资源创建一个新的URI,并且将这个资源作为ResposeMessage 的一部分返回     Delete 用户删除URI匹配的资源 2.  创建一个工程 (1)     启动VS2012,在已经安装的模板中选择ASP.NET MVC4 Web 应用程序,单击确定       (2)     在ASP.NET MVC 4 项目对话框中选择 Web API,单击确定 (3) 添加一个Model,工程选择Models文件夹右键添加一个实体类,代码如下 public class Contact { public int ID { get; set; } public string Name { get; set; } public string Sex { get; set; } public DateTime Birthday { get; set; } public int Age { get; set; } } (4) 添加一个数据操作接口 public interface IContactRep { /// <summary> /// 查询所有 /// </summary> /// <returns></returns> IEnumerable<Contact> GetListAll(); /// <summary> /// 根据ID查询 /// </summary> /// <param name="id"></param> /// <returns></returns> Contact GetByID(int id); /// <summary> /// 添加 /// </summary> /// <param name="contact"></param> /// <returns></returns> Contact Add(Contact contact); /// <summary> /// 根据ID删除 /// </summary> /// <param name="id"></param> void Remove(int id); /// <summary> /// 修改 /// </summary> /// <param name="contact"></param> /// <returns></returns> […]

龙生   06 Aug 2015
View Details

ASP.NET MVC Web API 学习笔记—第一个Web API程序

1. Web API简单说明 近来很多大型的平台都公开了Web API。比如百度地图 Web API,做过地图相关的人都熟悉。公开服务这种方式可以使它易于与各种各样的设备和客户端平台集成功能,以及通过在浏览器中使用 JavaScript来创建更丰富的HTML体验。所以我相信Web API会越来越有它的用武之地。 说道Web API很多人都会想到Web服务,但是他们仍然有一定的区别:Web API服务是通过一般的 HTTP公开了,而不是通过更正式的服务合同 (如SOAP)  2. ASP.NET Web API简介     ASP. NET Web API支持让你能够轻松地创建功能强大的 Web API,可以从范围广泛的客户端 (包括使用 JavaScript从浏览器中,到任何移动/客户端平台上的本机应用程序)访问。它提供以下支持:   (1)现代 HTTP 的编程模型:在你的 Web 应用程序中直接访问和处理 HTTP 请求并响应,使用清洁、 强类型的 HTTP 对象模型。除了在服务器上支持这个 HTTP 的编程模型之外,通过使用新的 HttpClient API来从任何.NET 应用程序中调用 Web ApI,我们也支持客户端中相同的编程模型。 (2)内容协商: Web API 有对内容协商的内置支持 — — 这使客户端和服务器一起工作以决定从一个 API 返回的正确的数据格式。我们为JSON、 XML 和Form URL 编码的格式提供默认支持,并可以通过添加你自己的格式化程序来扩展这种支持,或者甚至用你自己的来替换默认的内容协商策略。 (3)查询组成: Web API 通过 OData URL 公约使你能够轻松地支持查询。当你从你的 Web API 返回一种类型的 IQueryable <T> 时,框架将自动为它提供 OData 查询支持— — 使其易于分页和排序。 (4)模型绑定和验证:模型绑定器提供了一种简单的方法来从HTTP 请求中的不同部分提取数据,并将这些信息部分转换为Web API行为可使用的.NET对象。Web API 支持相同的模型绑定和ASP. NET MVC 现今支持的验证基础结构。 (5)路由: Web ApI 支持完整的路由功能集。现今ASP. NET MVC […]

龙生   06 Aug 2015
View Details

EF实现多表关联动态条件查询

刚用EF完成了一个十多个表联合、动态条件的查询,因为不熟悉表达式树的使用,就想了笨办法,下面做个总结: 1.EF无法根据条件动态join表,一开始就需要确定使用那些表,准备好数据集;所以把条件分了几个大类,只要条件都属于一个类别的,优先使用这个类别相关部分表的联合查询,能提高效率。如果条件涉及多个类别,就用一个left join所有表的数据集来查询; 2.因为是left join,当数据集中有些字段不是可空字段的时候,查询时会出现类型转换错误,这种情况下,需要在select新字段集时,不可空(null)字段做个处理:NewFieldName=p.FieldName == null ? AA : p.FieldName,这里的AA代表当字段值为空时用来替换的默认值; 3.在给EF的where条件中赋值的时候,如果是在一个foreach的循环中,用var item这个对象来给条件赋值,其结果是,所有条件全部是从最后一个item对象中取值,导致除了最后一个条件赋值正确外,其他全部是错误的。这是应为EF是在最后查询时才生成SQL语句并获取参数并执行的,它的机制中貌似只记录了参数的变量地址,而不是值。解决方法就是,在每次使用item时,定义一个新变量来保存这个对象,即使是在局部范围内定义亦可;部分示例代码:

龙生   05 Aug 2015
View Details

EF多表查询的方法

EF实体类 entity = new EF实体类(); var query = (from u in entityt.用户表 join b in entity.权限表 on u.用户权限Id equls b.Id where u.用户Id == 1 select u).FirstOrDefault(); 两个表的linq private DataClasses1DataContext dc; dc = new DataClasses1DataContext(); var heji = (from da in dc.q1 join du in dc.q2 on da.danhao equals du.danhao where da.hetong == "XXXX" select new { du.color1,  da.danhao, da.riqi, du.zhongliang, du.beizhu }).Distinct();   from:http://blog.csdn.net/findsafety/article/details/42640691

龙生   05 Aug 2015
View Details

15款Java程序员必备的开发工具

如果你是一名Web开发人员,那么用膝盖想也知道你的职业生涯大部分将使用Java而度过。这是一款商业级的编程语言,我们没有办法不接触它。 对于Java,有两种截然不同的观点:一种认为Java是最简单功能最强大的编程语言之一,另一种则表示这种编程语言既难用又复杂。 下面这些工具或许功能和作用不同,但是有着一个共同的主旨,那就是——它们都是为了给Java编码和开发提供卓越的支持。 1. JDK(Java开发工具包) 如果你打算用Java开发一些小程序和应用程序,那么首先得给自己准备一个类似于JDK的工具,其中包括必要的Java Complier、Java Runtime Environment(JRE)和Java API。这是开始Java之旅的第一步。 官方网站:http://java.com/en/download/faq/develop.xml 2. Eclipse IDE 如果咨询一些经验丰富的Java开发人员关于他们最喜欢的Java Integrated Development Environment(IDE)是什么,不少人会告诉你是Eclipse IDE。 Eclipse能提供关于代码完成、重构和语法检查这些急需的帮助。它还能提供JDT的一系列工具,包括各种插件工具来帮助开发各种Java应用。 此IDE的真正优势是它允许开发人员使用不同的语言支持,如它也可以提供C/ C++和PHP 的IDE。这使得它成为了Java开发的一个一站式资源。 官方网站:http://www.eclipse.org/ 3.NetBeans 这又是一个IDE,提供了功能全面的阵列,如转换器,编辑器和代码分析器,这些工具可以帮助你使用最新的Java技术实现应用程序。工具范围相当广泛,而且IDE背后的团队也在不断地改进。此外你还可以得到静态分析工具的帮助——编写出无bug的代码。 官方网站:https://netbeans.org/ 4. IntelliJ IDEA 13.1 据传它有“最智慧的Java IDE”之称。如果你尝试过后,就会发现它所言不虚,因为它能帮助开发人员拿出最具有创造性的解决方案。它的“Smart Code Completion”和“On-the-fly Code Analysis”功能等可以提高开发人员的工作效率,并且还提供了对web和移动开发高级支持。所以,不妨试试这个好助手。 官方网站:http://www.jetbrains.com/idea/ 5.Oracle JDeveloper 如果你正在寻找一个免费的IDE来构建一个面向服务的架构,那没有比JDeveloper更好的了。它支持完整的开发生命周期,这意味着你可以放心自豪名正言顺地使用ava解决方案。 官方网站:http://www.oracle.com/technetwork/developer-tools/jdev/overview/index.html 6. JUnit 这是一个可以帮助开发人员编写和运行测试的单元测试框架。但是JUnit和市场上一些类似的框架还有着本质的区别。你可以一次测试一个代码块,而不需要等待该模块在运行测试前完成。实际上就是你可以“先测试,然后写代码”,这意味着对于应用程序的最终功能如何你可以先放下心中的大石了。 官方网站:http://junit.org/ 7. Apache ANT™ 这是一个开源工具,其最大的优势就是简单。关键是可以实现开发人员处理复杂和重复性任务的目标。ANT™,可以自动执行此类任务。这还只是其众多简化功能之一而已。 官方网站:http://ant.apache.org/ 8. JRAT(Java Runtime Analysis Toolkit) 如果你想要评测应用程序的性能,那么就必须具备JRAT这个分析工具。有了这个工具,你可以找出潜在的可能会影响应用程序性能的问题域。 官方网站:http://jrat.sourceforge.net/ 9.Apache JMeter™ 这是Apache的另一种工具,主要用于测试。它可以评测功能行为以及网站、数据库、Web服务等的性能。它有一个易于理解的GUI,这一事实意味着你可以轻松地构建测试计划并迅速调试应用程序。 官方网站:http://jmeter.apache.org/ 10.Apache Maven 上面曾提到过Apache ANT™,而现在的Maven能帮助你做同样的事情。不过,很多开发人员表示相比ANT™,Maven前进了一大步。在依赖管理、构建行动、调试和协作方面,它都比ANT™略高一筹。简单地说,如果你正在使用ANT™,那么你需要告诉它到底应该怎么做:你需要提供资源的确切位置,分配生成的位元码的存储位置以及用JAR文件打包。 Maven,换句话说,则简化了这些东西。 官方网站:http://maven.apache.org/index.html 11.Gradle 如果你想要有这样一种工具,可以结合ANT™和Maven的优点,那么你一定会喜欢Gradle。有了Gradle,你就可以在Groovy编码——这是一个巨大的优势,因为它允许你编写任何代码。这个工具的第二大优势是,它支持惯例优先配置的模式。 官方网站:http://www.gradle.org/ 12.Clover 该工具提供了Java和Groovy代码覆盖。Clover能让你直接瞄准问题可能性最大的部分,确保测试侧重于特定代码。 官方网站:https://www.atlassian.com/software/clover/overview 13.YourKit 这是一个Java分析工具,允许在开发或生产过程中按需分析:这意味着你可以确保你的产品符合最高的质量标准。按需分析指的是,被分析的应用程序可以在不产生任何费用的情况下运行。 官方网站:http://www.yourkit.com/ 14.Mockito 如果你想用干净和简单的API编写测试,Mockito应该就是你的首选。Mockito本质上是一个模拟库,可以帮助你创建、验证和清除模块——Java开发的几个重要方面。 官方网站:https://code.google.com/p/mockito/ 15. FindBugs的™ Java代码有bug?如何才能找到它们呢?——没错,就是FindBugs的™。它不但免费,还易于操作,真心很不错! 官方网站:http://findbugs.sourceforge.net/ 这15个工具,能让你的Java开发工作更为轻松便捷,但是前提是要因地制宜,根据需求选择适合的工具,然后你才能受益无穷。     from:http://www.php100.com/html/it/biancheng/2015/0121/8428.html

龙生   04 Aug 2015
View Details

启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”错误的解决方法!

原因1:给定目录下jvm.dll不存在。 对策:(1)重新安装jre或者jdk并配置好环境变量。(2)copy一个jvm.dll放在该目录下。 原因2:eclipse的版本与jre或者jdk版本不一致 对策:要么两者都安装64位的,要么都安装32位的,不能一个是32位一个是64位。 原因2的概率更大一些,原因1不太可能发生。   from:http://blog.csdn.net/zyz511919766/article/details/7442633/

龙生   04 Aug 2015
View Details

android studio 无法在可视化页面预览布局文件

Rendering Problems the following classes could not be found: android.support.v7.internal.widget.ActionBarOverlayLayout (Fix Build Path, Edit XML, Create Class) Tip: Try to build the project 是什么问题 把你的style文件中theme改一下 在Theme.AppCompat.Light.DarkActionBar前面加上Base. 如下 <!-- Base application theme. --> <style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your theme here. --> </style> app-debug.apk

龙生   04 Aug 2015
View Details
1 128 129 130 175