随笔分类 -  01.WebForm/MVC

摘要:Spring 3.x + Struts2.x + MyBatis 3.x + logback整合 阅读全文
posted @ 2014-09-30 10:04 菩提树下的杨过 阅读(3624) 评论(0) 推荐(0)
摘要:利用weblogic的iisproxy,iisforword插件实现IIS的转发 阅读全文
posted @ 2014-07-28 18:55 菩提树下的杨过 阅读(3552) 评论(0) 推荐(1)
摘要:添加wcf服务引用时,vs.net本来就会帮我们在app.config/web.config里生成各种配置,这没啥好研究的,但本文谈到的配置并不是这个。先看下面的图:通常,如果采用.NET的WCF技术来架构SOA风格的应用,我们会把项目做一些基本的分层,如上图:01. contract层:通常定义服务的接口(即服务契约ServiceContract,指明该服务提供了哪些方法可供外部调用)、以及接口方法中传输的Model定义(即:数据契约DataContract,指明方法中的对象参数的Class定义)02. implementation层:即服务接口的实现03. host层:wcf最终需要一个宿 阅读全文
posted @ 2013-10-16 16:06 菩提树下的杨过 阅读(3371) 评论(0) 推荐(0)
摘要:Pechkin 是GitHub上的一个开源项目,可方便将html转化成pdf文档,使用也很方便,下面是winform项目中的示例代码:using System;using System.Diagnostics;using System.Drawing.Printing;using System.IO;using System.Windows.Forms;using Pechkin;using Pechkin.Synchronized;namespace PdfTest{ public partial class Form1 : Form { public Form1(... 阅读全文
posted @ 2013-08-29 09:49 菩提树下的杨过 阅读(6105) 评论(12) 推荐(2)
摘要:1. 在firefox下,每页均会打印重复thead(表头),tfoot(表尾)的内容;IE8下无效(其它IE版本未测试)2. 分页的处理 @media print {.page-break { page-break-after: always; }}在需要分页的tr上,加上该样式即可3.隐藏某些不需要打印的区域 @media print {.no-print { display: none; }}4.页面顶部网址之类的,如何去掉?IE: File -> Page SetupFireFox: Print -> Page Setup5.打印页面指定区域这是打印的内容这里不需要打印打印 阅读全文
posted @ 2013-08-27 16:22 菩提树下的杨过 阅读(10856) 评论(0) 推荐(0)
摘要:如果一台电脑同时连接多个打印机,而且每个打印机使用的纸张大小各不相同(比如:票据打印钱用的小票专用张,办公打印机用的是A4标准纸),在处理打印类的需求时,如果不用代码干预,用户必须每次打印时,都必须在弹出窗口里,手动选择打印机(还有可能需要设置纸张类型),这样用起来会比较烦。幸好,.Net提供了“二”个很有用的类:PrintDialog(打印机设置对话框)、PageSetupDialog(页面设置对话框) (注:之所以给“二”加引号,是因为"打印机设置"其实已经完全包含了“页面设置”的所有功能,而且“ PageSetupDialog”类在实际使用中发现还有一个容易误导的地方 阅读全文
posted @ 2013-07-12 16:57 菩提树下的杨过 阅读(40100) 评论(2) 推荐(4)
摘要:通常web技术无法设置本地计算机的默认打印机,包括用代码设置纸张大小,如果业务系统中真遇到这种需求,只能通过其它辅助手段(比如ActiveX)实现。下面这段代码,出自网上被广泛使用的"泥人张打印API"(抱歉未找到原始出处),已经用C#封装了很多关于底层打印的API方法using System;using System.Collections.Generic;using System.Text;using System.Runtime.InteropServices;using System.Security;using System.ComponentModel;usin 阅读全文
posted @ 2013-07-10 15:57 菩提树下的杨过 阅读(6703) 评论(2) 推荐(0)
摘要:不废话了,直奔主题吧wcf端:近几年比较流行restful,为了能让ajax调用,同时也为了支持restful风格的uri,在创建一个Ajax-enabled Wcf Service后,必须手动修改svc文件,指定Factory,即:注:如果不添加Factory,则wcf将无法用类似http://localhost/helloWorld.svc/Hello/person/name 的restful方式直接访问。同时还要去掉web.config中的即类似: --> 好了,开始写代码,鉴于wcf调用时有GET/POST二种方式,下面把几种常用的情况都写一个示例方法:usin... 阅读全文
posted @ 2011-10-11 22:29 菩提树下的杨过 阅读(6028) 评论(0) 推荐(2)
摘要:今天继续学习RDLC报表的“参数传递”及“主从报表”一、先创建DataSet,如下图:二、创建一个报表rptDEPT.rdlc,显示部门T_DPET的数据三、嵌入Default.aspx中,写在Default.aspx.cs中写些基本代码using System;using System.Data;using Microsoft.Reporting.WebForms;namespace ReportSample{ public partial class Default : System.Web.UI.Page { protected void Page_Load(o... 阅读全文
posted @ 2011-09-19 17:47 菩提树下的杨过 阅读(16665) 评论(6) 推荐(5)
摘要:RDLC报表是微软自家的报表,已经集成在vs2010中,相对水晶报表更轻量级,更重要的是:可直接在web项目中使用。使用步骤:一、创建DataSet右击->Add New Item-> DataSet(本例中命名为DS_EMP),会出现以下界面:然后右击->Add->DataTable,添加一个表,命名为T_EMP,然后添加二个列EMPNO,EMPNAME均为String型,完成后的样子类似下现这样:注:如果机器上安装了BizTalk,DataSet打开后,可能是下面这样这种编辑方式我个人觉得不方便,可以通过在DS_EMP.xsd上右击-->Open With,然 阅读全文
posted @ 2011-09-16 13:15 菩提树下的杨过 阅读(6509) 评论(2) 推荐(1)
摘要:1、前言作为一个多年从事b/s开发的程序猿,曾先后使用过asp、asp.net做为主要服务端语言。不管是相对低级的asp也好,还是高级的asp.net也罢,都100%会遇到"数据绑定"问题。2、什么是“绑定”?广义来讲,如果服务端的数据需要在页面上呈现,并且这份数据需要与整个页面(或页面的某个部分)建立关联(不管是单向关联还是双向关联),这就是数据绑定。3、“赋值”是个好办法在asp年代,压根儿就没有控件这一说,所以服务端的数据呈现,基本上就是通过在页面中内嵌<%=xxx%>来实现的(xxx可理解为一个定义的变量),要改变显示的内容,最方便的方法就是给变量xxx 阅读全文
posted @ 2011-07-02 20:02 菩提树下的杨过 阅读(3052) 评论(6) 推荐(0)
摘要:前言:本文旨在帮助从未接触过wcf(.svc文件)的webservice开发人员,快速将传统的webService/asmx技术迁移到wcf。高手就不用浪费时间往下看了:)以下所有操作均为vs2010 sp1环境一、服务物理文件创建方式的变化1.1 asmx的创建方式新建项-->Web服务1.2 wcf的创建方式新建项-->Wcf服务二、方法定义上的区别2.1asmx中的方法定义2.2 wcf 中的方法定义这里先啰嗦一下,默认情况下创建一个wcf服务(比如HelloWorld2.svc文件)后,vs.net会自动创建一个IHelloWorld2.cs的接口,然后HelloWorld 阅读全文
posted @ 2011-05-12 10:47 菩提树下的杨过 阅读(5481) 评论(6) 推荐(0)
摘要:昨天在做项目时,发现了WebService又一个不人性化的地方,记录于此,希望能帮到遇到类似问题的同学们。很多大型b/s项目,通常会分成几层,为了重现问题,这里我简化为三层:(以下代码仅出于演示,也许并无太大的实际用途)1、Model层放置一些业务需要的实体类(通常这些类要求是可序列化的,以方便后面提到的“服务层"中能被序列化后传递),这里为了演示,弄了三个类:1.1 Person类using System;namespace Model{ [Serializable] public class Person { public Person() { } private int _Sa 阅读全文
posted @ 2011-05-12 09:10 菩提树下的杨过 阅读(2120) 评论(0) 推荐(1)
摘要:自从ms推出wcf以后,几乎没在web项目中用过webservice了,基本上都是以wcf host在iis中替代的。今天利用公司以前的web框架做一个新项目,里面大量使用了asmx,在开发过程中遇到了二个很少见的问题,记录如此,可能会帮助到遇到类似问题的同学们:一、在WebService中避免用DataTable做为参数类型,强烈推荐用DataSet来替换DataTable,否则会死得很惨场景如下:一个解决方案分三层:一层是Model,一层是WebService,一层是WebSiteWebService层中提供基本的查询方法,但是调用方法时,必须提供登录后的验证票据信息.Model层中定义了 阅读全文
posted @ 2011-04-23 22:13 菩提树下的杨过 阅读(2868) 评论(7) 推荐(0)
摘要:园子里有一篇 Log4Net使用指南写得很详细,推荐给准备使用log4net的同学看看。如果你不想花太多时间研究,也可以按下面的步骤在5分钟内搞定:1、添加对log4net.dll的引用2、修改配置文件,以app.config为例,参考内容如下:<?xml version="1.0" encoding="utf-8" ?><configuration> <configSections> <section name="log4net" type="log4net.Config.Log4 阅读全文
posted @ 2011-04-17 20:41 菩提树下的杨过 阅读(1786) 评论(1) 推荐(2)
摘要:虽然oracle,sqlserver都是关系型数据库,sql语句大部分也差不多,但是从sqlserver换到oracle还是有很多不适应的地方,本文旨在帮助广大初次接触oracle的.net程序员快速上手。一、安装oracle 11g 服务端(可选)1.1 为什么要安装服务端?理论上讲,本机只需要安装oracle客户端即可,但是很多时候本机有一个服务端学习起来会更方便。比如:数据库的导入/导出,数据库的创建等,均需要服务端。注:oracle的server真的很占内存,如果您的爱姬内存在2G以下,建议直接跳过本步骤吧.1.2 服务端的安装文件下载地址http://www.oracle.com/t 阅读全文
posted @ 2011-04-17 10:55 菩提树下的杨过 阅读(9782) 评论(6) 推荐(10)
摘要:webform中默认一个页面只能有一个form,有时submit按钮使用不当会产生一些奇怪的问题。比如这是一个网站的头部搜索部分,前端人员把“搜索”按钮用<input type="submit" />处理,然后在js中文本框里按下回车键时,自动调用doSearch()函数,该函数可能类似下面这样:(只是表达一下大概的意思)function doSearch(){ window.location="search.aspx?w=abc"; return false;}“搜索”按钮的click事件中,用类似 onClick="doSear 阅读全文
posted @ 2011-03-31 16:36 菩提树下的杨过 阅读(3173) 评论(1) 推荐(2)
摘要:如题,在FluorineFx的实时视频交互应用中,如果页面长时间不动,可能会导致flash中的NetConnection对象断开连接,其原因我没有深入研究,不过应该能猜出大概(以下结论未必证实,不保证一定正确):FluorineFx是做为一个HttpModule而嵌入asp.net网站中的,如果长时间不动,页面与服务器之间的session过期可能会导致FluorineFx与客户端的连接也一并关闭。解决办法:在嵌入flash的页面中,随便用ajax定时(比如每5分钟)服务端随便发点数据过去(哪怕只是一个字符也行),以证明自己还活着。另外在使用中还发现一个现象:通常我习惯于把FluorineFx的 阅读全文
posted @ 2011-03-16 23:27 菩提树下的杨过 阅读(1357) 评论(3) 推荐(1)
摘要:今天在向服务器部署一个fluorineFx web应用时,浏览站点总出现这个错误,用aspnet_regiis.exe -i注册,把c:\windows\temp,c:\windows\tmp,C:\Windows\Microsoft.NET\Framework\vxxx.xxx\Temporary ASP.NET Files 这三个目录的Network Serivce权限调到最高也不行,极度郁闷... 阅读全文
posted @ 2010-11-24 15:52 菩提树下的杨过 阅读(852) 评论(0) 推荐(0)
摘要:年纪大了记性差了,转过来方便以后要的时候粘贴复制出自:http://gsqls.blog.163.com/blog/static/459712182009112873327312/C#获取当前路径的方法如下:1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName -获取模块的完整路径。2. System.Envir... 阅读全文
posted @ 2010-10-18 10:29 菩提树下的杨过 阅读(1277) 评论(1) 推荐(2)