博文

XSL/XSLT 中实现随机排序(2007-07-25 12:15:00)

摘要:和数据库排序一样,XSL/XSLT也可以实现随机排序,原理也很简单,下面就是代码。 <?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:msxsl="urn:schemas-microsoft-com:xslt"
  xmlns:eMeng="http://dotnet.aspx.cc/"
  version="1.0">
<msxsl:script language="JavaScript" implements-prefix="eMeng">
 function Random() {
  return Math.random();
 }
</msxsl:script> <xsl:template match="/">
<xsl:for-each select="/*/node()">
<xsl:sort select="eMeng:Random()"/>
<xsl:value-of select="."/>
<br/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>  ......

阅读全文(2511) | 评论:0

ADOX创建Access数据库和表 (2007-07-25 12:11:00)

摘要:using System;
using ADOX; namespace WebPortal
{
 /// <summary>
 /// CreateAccessDB 的摘要说明。
 /// 对于不同版本的ADO,需要添加不同的引用
  /// 请添加引用Microsoft ADO Ext. 2.7 for DDL and Security
  /// 请添加引用Microsoft ADO Ext. 2.8 for DDL and Security
 /// </summary>
 public class CreateAccessDB : System.Web.UI.Page
 {
    private void Page_Load(object sender, System.EventArgs e)
    {
      //为了方便测试,数据库名字采用比较随机的名字,以防止添加不成功时还需要重新启动IIS来删除数据库。
      string dbName = "D:\\NewMDB"+DateTime.Now.Millisecond.ToString()+".mdb";
      ADOX.CatalogClass cat = new ADOX.CatalogClass();
      cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dbName +";");
      Response.Write("数据库:" + dbName + "已经创建成功!");
      ADOX.TableClass tbl......

阅读全文(2521) | 评论:0

创建和使用Web Services(2007-07-25 11:59:00)

摘要:简介
 
 .NET最强大的一个方面之一就是可以利用它创建Web服务。一个Web服务就是一个网站所提供的供其它网站调用的外部接口。举个例子来说,某个金融公司可以为与它的贸易伙伴通过Web服务提供详细的股票报价,这些信息可以是通过Web页面进行读取和显示的,也可以是从客户的桌面电脑的应用程序里读取的。
 本文就对Web服务的其中两个方面进行说明:一是如何创建Web服务;二是如何使用Web服务。作为例子,我们以来自ASPFAQs.com(http://www.aspfaqs.com/aspfaqs/)的FAQS(常见问题解答)的Web服务来解释如何创建一个Web服务。
 
 创建Web服务
 
 在你创建一个Web服务之前,你首先必须问问自己:“我要向我的用户提供什么服务?”。本文的目标就是创建这样一个Web服务:让其它的用户在他们自己的网站上显示来自ASPFAQs.com的常见问题解答(FAQS)的列表。比较理想的功能是限制其他的网站只能够查看FAQS分类和按分类排列的FAQS,如果你想查看一个问题的答案,就让用户去访问提供服务的网站http://www.aspfaqs.com。本文例子的Web服务最终向其他网站提供如下的功能:
 1,浏览所有FAQ分类的列表
 2,浏览某一分类里的所有FAQS。
 3,浏览某一个FAQ的问题,但不包含答案。
 
 创建一个Web服务是很简单的,首先创建一个.asmx文件(你可以用Visual Studio .NET或你自己喜欢的任何文本编辑器,推荐使用Web Matrix,它有创建Web服务的模板),Web服务作为一个普通的类进行创建,在方法的前面有一个<WebMethod()>宏,表明这个方法是通过Web服务来访问的。
 就ASPFAQS.com的Web服务来说,首先创建三个通过Web服务访问的方法,GetCategories, GetFAQsInCategory和GetFAQ,分别实现上面提出的任务1,2,3。并创建一个私有方法GetDataSet,按传递过来的SQL查询组装成一个DataSet。下面就是实现的代......

阅读全文(2314) | 评论:0

C#杀掉进程(2007-07-25 11:51:00)

摘要:private void KillProcess(string processName)
{
System.Diagnostics.Process myproc= new System.Diagnostics.Process();//得到所有打开的进程       try
   {   
       foreach (Process thisproc in Process.GetProcessesByName(processName))
        { 
          if(!thisproc.CloseMainWindow())
           {thisproc.Kill();}       
        }     
   }   
   catch(Exception Exc)   
   {      
        msg.Text+= "杀死" + processName + "失败!";   
   }
} 直接调用上面方法
......

阅读全文(4830) | 评论:0

动态添加GridView模板列(2007-07-25 11:43:00)

摘要:代码
  <%@ Page Language="C#" %>
  <%@ Import Namespace="System.Data" %>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
  <script runat="server">
   ICollection CreateDataSource()
    {
     DataTable dt = new DataTable();
     DataRow dr;
     dt.Columns.Add(new DataColumn("id", typeof(Int32)));
     dt.Columns.Add(new DataColumn("text", typeof(string)));
     for (int i = 0; i < 6; i++)
      {
       dr = dt.NewRow();
       dr[0] = i;
       dr[1] = "列表项目 " + i.ToString();
       dt.Rows.Add(dr);
     }
&n......

阅读全文(2581) | 评论:1

将GridView导出到Excel中(2007-07-25 11:34:00)

摘要:C# 代码
  <%@ Page Language="C#" EnableEventValidation="false" %>
 
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
  <script runat="server">
   ICollection CreateDataSource( )
    {
     System.Data.DataTable dt = new System.Data.DataTable();
     System.Data.DataRow dr;
     dt.Columns.Add(new System.Data.DataColumn("id", typeof(Int32)));
     dt.Columns.Add(new System.Data.DataColumn("PkID", typeof(string)));
     dt.Columns.Add(new System.Data.DataColumn("Title", typeof(string)));
     for (int i = 0; i < 6; i++)
      {
       dr = dt.NewRow();
       dr[0] = i;
  &n......

阅读全文(3251) | 评论:0

GridView 实现服务器端和客户端全选(2007-07-25 11:24:00)

摘要:<%@ Page Language="C#" AutoEventWireup="true" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
  // 计算数据,完全可以从数据看取得
  ICollection CreateDataSource()
  {
    System.Data.DataTable dt = new System.Data.DataTable();
    System.Data.DataRow dr;
    dt.Columns.Add(new System.Data.DataColumn("序号", typeof(System.String)));
    dt.Columns.Add(new System.Data.DataColumn("学生姓名", typeof(System.String)));
    dt.Columns.Add(new System.Data.DataColumn("语文", typeof(System.Decimal)));
    dt.Columns.Add(new System.Data.DataColumn("数学", typeof(System.Decimal)));
    dt.Columns.Add(new System.Data.DataColumn("英语", typeof(System.Decimal)));
    dt.Columns.Add(new System.Data.DataColumn("计算机", typeof(System.Decim......

阅读全文(2417) | 评论:0

一次编辑 GridView 的所有行(2007-07-25 11:18:00)

摘要:在平时的实际项目中,为了减少往返提交数据,可以一次编辑 GridView 的所有行,这样大大提高用户使用产品的体验。下面就讲解何一次编辑 GridView 的所有数据行。在下面的例子中,数据库使用《ASP.NET 2.0应用开发技术》一书中Site\App_Data\下的 ASPNET20Book.mdb 数据库。例子中的数据更新方式使用 SqlDataSource 数据源控件的UpdateCommand属性,但此方法同样适用于存储过程,SQL 语句等。

C# <%@ Page Language="C#" Debug="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
string[] ClassNameArray = { "大学", "中学", "高中" }; //初始化原来的值
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{   
  if (e.Row.RowType == DataControlRowType.DataRow)
  {
    System.Data.DataRowView drv = (System.Data.DataRowView)e.Row.DataItem;
    RadioButtonList rbl = (RadioButtonList)e.Row.FindControl("txtGender");
    if (rbl != null)
    {
      if ((bool)drv["Gender"])
&......

阅读全文(2003) | 评论:0

C#向Excel报表中插入图片的2种方法(2007-07-25 11:03:00)

摘要:这几天做向Excel插入数据,其中有插入图片的需求,经试验,下面2种方法都可以插入图片,但各有不同的用处。现将这2种方法共享出来, 希望需要的朋友进行参考,代码中已经有详细注释了。 注意:使用之前需要引用COM:Microsoft Office 11.0 Object Library
如果引用列表中没有,需要自行添加 C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE 调用方法:   MengXianhui.Utility.ExcelReport.InsertPictureToExcel ipt = new MengXianhui.Utility.ExcelReport.InsertPictureToExcel();
ipt.Open();
ipt.InsertPicture("B2", @"C:\Excellogo.gif");
ipt.InsertPicture("B8", @"C:\Excellogo.gif",120,80);
ipt.SaveFile(@"C:\ExcelTest.xls");
ipt.Dispose();
  简单包装的类:   using System;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel; namespace MengXianhui.Utility.ExcelReport
{
  class InsertPictureToExcel
  {
    /// <summary>
    /// 打开没有模板的操作。
    /// </summary>
    public void Open( )
    {
      this.Open(String.Empty);
&nb......

阅读全文(1563) | 评论:0

常见日期方法荟萃(2007-07-24 13:46:00)

摘要:一.如何获得当月有多少天
int m=System.DateTime.DaysInMonth(System.DateTime.Now.Year,System.DateTime.Now.Month); 二.日期型格式处理通用方法
1.在webconfig中配置如下
<add key="ShortDatePattern" value="MM-dd-yyyy" />
<add key="LongDatePattern" value="dddd-MMMM dd-yyyy" />
<add key="ShortTimePattern" value="hh:mm tt" />
<add key="LongTimePattern" value="hh:mm tt" />

2.在global.asax中
protected void Application_BeginRequest(Object sender, EventArgs e)
{
Thread currentThread = Thread.CurrentThread;
CultureInfo cul = currentThread.CurrentCulture.Clone() as CultureInfo;
cul.DateTimeFormat.ShortDatePattern= BLLFacade.Common.GetShortDatePattern();
cul.DateTimeFormat.LongDatePattern= BLLFacade.Common.GetLongDatePattern();
cul.DateTimeFormat.ShortTimePattern= BLLFacade.Common.GetShortTimePattern();
cul.DateTimeFormat.LongTimePattern= BLLFacade.Common.GetLongTimePattern();
currentThread.CurrentCulture = cul;
} 3.在业务逻辑层中
public static string GetShort......

阅读全文(2157) | 评论:0