2008年11月13日

Default.aspx.cs

 

 

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net.Mail;
using System.Net;
using System.Text;
using System.Collections.Generic;
using System.Data.SqlClient;


public partial class _Default : System.Web.UI.Page
{
   
    protected void Page_Load(object sender, EventArgs e)
    {
    }
}

 

public class SQLDAL:IDAL
{
   public IList<Model> GetCategories()
    {
        IList<Model> categories = new List<Model>();
        using (SqlDataReader rdr = DBUtility.ExecuteReader(DBUtility.ConnectStr, CommandType.Text, "select * from Category", null))
        {
            while (rdr.Read())
            {
                Model cat = new Model(rdr.GetString(0), rdr.GetString(1), rdr.GetString(2));
                categories.Add(cat);
            }
        }
        return categories;
    }

    public Model GetCategory(string categoryId)
    {
        Model category = null;
        SqlParameter parm = new SqlParameter("@categoryid", SqlDbType.VarChar, 10);
        parm.Value = categoryId;
        using (SqlDataReader rdr = DBUtility.ExecuteReader(DBUtility.ConnectStr, CommandType.Text, "select * from Category where categoryid=@categoryid", parm))
        {
            if (rdr.Read())
                category = new Model(rdr.GetString(0), rdr.GetString(1), rdr.GetString(2));
            else
                category = new Model();
        }
        return category;
    }
}

 

public interface IDAL
{
    IList<Model> GetCategories();
    Model GetCategory(string categoryId);
}


public class Model
{
    private string categoryid;
    private string categoryname;
    private string categorytemp;

    public Model()
    {}

    public Model(string categoryid,string categoryname,string categorytemp) {
        this.categoryid = categoryid;
        this.categoryname = categoryname;
        this.categorytemp = categorytemp;
    }

    public string CategoryId
    {
        get { return this.categoryid; }
    }

    public string CategoryName
    {
        get { return this.categoryname; }
    }

    public string CategoryTemp
    {
        get { return this.categorytemp; }
    }
 
}


public abstract class DBUtility
{  
        public static readonly string ConnectStr = "server=.;uid=sa;pwd=";

        private static Hashtable parmCache = Hashtable.Synchronized(new Hashtable());
 
        public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters) {

            SqlCommand cmd = new SqlCommand();
            using (SqlConnection conn = new SqlConnection(connectionString)) {
                PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                int val = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                return val;
            }
        }
 
        public static int ExecuteNonQuery(SqlConnection connection, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters) {

            SqlCommand cmd = new SqlCommand();
            PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);
            int val = cmd.ExecuteNonQuery();
            cmd.Parameters.Clear();
            return val;
        }
 
        public static int ExecuteNonQuery(SqlTransaction trans, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters) {
            SqlCommand cmd = new SqlCommand();
            PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, commandParameters);
            int val = cmd.ExecuteNonQuery();
            cmd.Parameters.Clear();
            return val;
        }
        
        public static SqlDataReader ExecuteReader(string connectionString, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters) {
            SqlCommand cmd = new SqlCommand();
            SqlConnection conn = new SqlConnection(connectionString);
 
            try {
                PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
                SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                cmd.Parameters.Clear();
                return rdr;
            }
            catch {
                conn.Close();
                throw;
            }
        }
 
        public static object ExecuteScalar(string connectionString, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters) {
            SqlCommand cmd = new SqlCommand();

            using (SqlConnection connection = new SqlConnection(connectionString)) {
                PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);
                object val = cmd.ExecuteScalar();
                cmd.Parameters.Clear();
                return val;
            }
        }

        public static object ExecuteScalar(SqlConnection connection, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters) {

            SqlCommand cmd = new SqlCommand();

            PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);
            object val = cmd.ExecuteScalar();
            cmd.Parameters.Clear();
            return val;
        }
 
        public static void CacheParameters(string cacheKey, params SqlParameter[] commandParameters) {
            parmCache[cacheKey] = commandParameters;
        }
 
        public static SqlParameter[] GetCachedParameters(string cacheKey) {
            SqlParameter[] cachedParms = (SqlParameter[])parmCache[cacheKey];

            if (cachedParms == null)
                return null;

            SqlParameter[] clonedParms = new SqlParameter[cachedParms.Length];

            for (int i = 0, j = cachedParms.Length; i < j; i++)
                clonedParms[i] = (SqlParameter)((ICloneable)cachedParms[i]).Clone();

            return clonedParms;
        }
 
        private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, CommandType cmdType, string cmdText, SqlParameter[] cmdParms) {

            if (conn.State != ConnectionState.Open)
                conn.Open();

            cmd.Connection = conn;
            cmd.CommandText = cmdText;

            if (trans != null)
                cmd.Transaction = trans;

            cmd.CommandType = cmdType;

            if (cmdParms != null) {
                foreach (SqlParameter parm in cmdParms)
                    cmd.Parameters.Add(parm);
            }
        }
}

posted @ 2008-11-13 23:22 Mars1986 阅读(20) | 评论 (0)编辑

2008年11月12日

using System;
using System.Net;
using System.Net.Mail;
using System.Text;

 

public class MailClient
{
    private SmtpClient client;
    private string errorMessage = "";
    private string fromEmail = "XXX@sina.com";
    private string password = "********";
    private string smtpHost = "smtp.sina.com";
    private string username = "XXX@sina.com";

    public MailClient()
    {
        this.client = new SmtpClient(this.smtpHost);
        this.client.DeliveryMethod = SmtpDeliveryMethod.Network;
        this.client.UseDefaultCredentials = false;
        this.client.Credentials = new NetworkCredential(this.username, this.password);
    }

    public bool Send(string toEmail, string subject, string body, bool isBodyHtml)
    {
        MailMessage message = new MailMessage();
        message.Subject = subject;
        message.SubjectEncoding = Encoding.UTF8;
        message.From = new MailAddress(this.fromEmail);
        message.To.Add(toEmail);
        message.Body = body;
        message.BodyEncoding = Encoding.UTF8;
        message.IsBodyHtml = isBodyHtml;
        try
        {
            this.client.Send(message);
            return true;
        }
        catch (Exception exception)
        {
            this.errorMessage = exception.Message;
            return false;
        }
    }

    public string ErrorMessage
    {
        get
        {
            return this.errorMessage;
        }
    }
}

 

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

 

if (mc.Send("XXX@163.com", "title", "<a href='#'>nihao</a>", true))
            Response.Write("good");
        else
            Response.Write("bad");

 

代码亲测,绝对能用。邮箱支持sina ,qq,163的好像不支持。

 

 

posted @ 2008-11-12 22:15 Mars1986 阅读(104) | 评论 (0)编辑

2008年9月22日

我刚搜索出来的结果 试过好用, 和大家分享一下。

 

<system.web>

  
    <httpHandlers>
      <add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />

    </httpHandlers>
 
    <compilation debug="false" strict="false" explicit="true">
      <buildProviders>
        <add extension=".htm" type="System.Web.Compilation.PageBuildProvider" />
      </buildProviders>
    </compilation>



 </system.web>

posted @ 2008-09-22 21:13 Mars1986 阅读(36) | 评论 (0)编辑

2008年9月15日

http://msdn.microsoft.com/zh-cn/library/ms173121.aspx

posted @ 2008-09-15 12:45 Mars1986 阅读(22) | 评论 (0)编辑