在WebService中使用Session示例 ( Archived on 2009-3-19 9:36:53 136 Views )
using System;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Services;
namespace CSoft.WebService
{
[WebService(Namespace = "http://www.csstosft.com/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
public class webService_orderCapacity : System.Web.Services.WebService
{
/// <summary>
/// Abouts this instance.
/// </summary>
/// <returns></returns>
[WebMethod]
public string About()
{
return "csoft.orderCapacity.V1.0";
}
[WebMethod (EnableSession = true)]
public string TestLogin(string account,string pwd)
{
if (account == "csoft" && pwd == "csoft")
{
HttpContext.Current.Session.Clear();
HttpContext.Current.Session.Add("IsLogin", true);
return "loginok";
}
else
{
return "loginerror";
}
}
[WebMethod(EnableSession = true)]
public bool TestIsLogin()
{
if (HttpContext.Current.Session == null || HttpContext.Current.Session["IsLogin"] == null || HttpContext.Current.Session["IsLogin"].ToString().Length < 1)
{
return false;
}
if (HttpContext.Current.Session.Count > 0 && bool.Parse(HttpContext.Current.Session["IsLogin"].ToString()))
{
return true;
}
else
{
//Jscript.AlertAndRedirect("Please login....", "Login.aspx");
return false;
}
}
}
}
记录日志到当前网站目录 ( Archived on 2009-2-13 14:24:59 116 Views )
using System;
using System.IO;
using System.Web;
public class Utility
{
public static void LogError(string message)
{
message = string.Format("--------{0}------\r\n{1}", DateTime.Now, message);
LogMsg("ErrorLog.txt", message);
}
/// <summary>
/// Logs the MSG.
/// </summary>
/// <param name="file">The file.</param>
/// <param name="message">The message.</param>
private static void LogMsg(string file, string message)
{
StreamWriter _sw = null;
try
{
//Instantiate an appendable streamwriter that writes to a file called ErrorLog.txt
string filePath = HttpContext.Current.Server.MapPath("~") + file;
_sw = new StreamWriter(filePath, true, System.Text.Encoding.UTF8);
//Write a row of data containing the time, the error message, and the stack trace
_sw.WriteLine(message);
}
finally
{
//Ensure the streamwriter gets closed
if (_sw != null)
{
_sw.Close();
_sw = null;
}
}
}
}
打印DataTable表数据 ( Archived on 2008-9-25 11:35:20 133 Views )
public string FormatDataTableData(DataTable dt)
{
StringBuilder sb = new StringBuilder();
sb.AppendLine("-------------Table Data----------------");
string columns = string.Empty;
foreach (DataColumn dl in dt.Columns)
{
columns += string.Format("{0}({1}) | ", dl.ColumnName, dl.DataType);
}
sb.AppendLine(columns); int j = 1;
foreach (DataRow dr in dt.Rows)
{
for (int i = 0; i < dt.Columns.Count; i++)
{
if (i == 0)
{
sb.Append(string.Format("{0} -> | {1} | ", j, dr[i]));
}
else if
(i == dt.Columns.Count - 1)
{
sb.AppendLine(string.Format("{0} | ", dr[i]));
}
else
{
sb.Append(string.Format("{0} | ", dr[i]));
}
}
j++;
}
return sb.ToString();
}
插入图片到SQLite数据库 ( Archived on 2008-9-24 17:26:24 163 Views )
test_webService.Service service = new test_webService.Service();
DataSet ds = service.GetEmployees();
string connstring = string.Format("Data Source={0};Version=3;", @"D:\cs\lj\dbbb.db");
//CREATE TABLE [Test] (
//[id] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
//[image] Boob NULL
//)
string insertSql = "Insert Into [Test] ([image]) Values(@image)";
using (SQLiteConnection conn = new SQLiteConnection(connstring))
{
// 连接数据库
conn.Open();
SQLiteCommand cmd = conn.CreateCommand();
cmd.Connection = conn;
//DbTransaction trans = conn.BeginTransaction();
SQLiteTransaction trans = conn.BeginTransaction();
try
{
//保存數據
cmd.CommandText = insertSql;
// 添加参数
//cmd.Parameters.Add(cmd.CreateParameter());
cmd.Parameters.Add("image", DbType.Binary);
DataTable dt = ds.Tables[0];
foreach (DataRow dr in dt.Rows)
{
cmd.Parameters[0].Value = (byte[])(dr["Photo"]);
cmd.ExecuteNonQuery();
}
// <-------------------
trans.Commit();
}
catch (Exception ex)
{
trans.Rollback();
throw;
}
}
如何高效使用SQLite .net (C#) ( Archived on 2008-9-11 21:12:30 222 Views )
using System.Data;
using System.Data.Common;
using System.Data.SQLite;
// 创建数据库文件
File.Delete("test1.db3");
SQLiteConnection.CreateFile("test1.db3");
DbProviderFactory factory = SQLiteFactory.Instance;
using (DbConnection conn = factory.CreateConnection())
{
// 连接数据库
conn.ConnectionString = "Data Source=test1.db3";
conn.Open();
// 创建数据表
string sql = "create table [test1] ([id] INTEGER PRIMARY KEY, [s] TEXT COLLATE NOCASE)";
DbCommand cmd = conn.CreateCommand();
cmd.Connection = conn;
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
// 添加参数
cmd.Parameters.Add(cmd.CreateParameter());
// 开始计时
Stopwatch watch = new Stopwatch();
watch.Start();
DbTransaction trans = conn.BeginTransaction(); // <-------------------
try
{
// 连续插入1000条记录
for (int i = 0; i < 1000; i++)
{
cmd.CommandText = "insert into [test1] ([s]) values (?)";
cmd.Parameters[0].Value = i.ToString();
cmd.ExecuteNonQuery();
}
trans.Commit(); // <-------------------
}
catch
{
trans.Rollback(); // <-------------------
throw; // <-------------------
}
// 停止计时
watch.Stop();
Console.WriteLine(watch.Elapsed);
}
执行一下,耗时 0.2 秒
在PDA设备中怎么取得程序所在的路径 ( Archived on 2008-9-10 15:07:50 88 Views )
System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase
結果
"\\Program Files\\SmartDeviceProject1\\SmartDeviceProject1.exe"
WebService中重設SERVICE的地址 ( Archived on 2008-9-9 15:30:52 97 Views )
csoft_webService.Service service = new csoft_webService.Service();
service.Url = "http://www.csstsoft.com/WebService.asmx";
string s = service.HelloWorld();
在DATATABLE上添加一列并设置其每行数据 ( Archived on 2008-8-27 11:28:51 115 Views )
Database db = DatabaseFactory.CreateDatabase("SqlMainDbConnectionString");
string strSqlSelect = @"Select ent_id,event_sum_id,alert_remark_id, remark as CommentDes,cd,creater,alert_status_id end_reason,end_reason_id from t_ent_alert_remark order by cd asc";
DbCommand dbCommand = db.GetSqlStringCommand(strSqlSelect);
DataTable dt = db.ExecuteDataSet(dbCommand).Tables[0];
dt.Columns.Add("CommentTime", typeof(string));
//设置时间
int recordCount = dt.Rows.Count;
for (int i = 0; i < recordCount; i++)
{
DateTime dCommentTime = Convert.ToDateTime(dt.Rows[i]["cd"]);
dt.Rows[i]["CommentTime"] = string.Format("{0:yyyy-MM-dd hh:mm:ss}", dCommentTime);
}
return dt;
DataTable 修改数据 ( Archived on 2008-8-27 11:00:03 86 Views )
for (int i = 0; i < DataTable.Rows.Count; i++)
{
DataRow dt = DataTable.Rows[i];
dt.BeginEdit();
dt["Column"] = "value";
dt.EndEdit();
}
格式化DataTable表数据(生成表格形式字符串) ( Archived on 2008-8-21 11:55:03 124 Views )
/// <summary>
/// Formats the data table data.
/// </summary>
/// <param name="dt">The dt.</param>
/// <returns></returns>
public static string FormatDataTableData(DataTable dt)
{
StringBuilder sb = new StringBuilder();
sb.Append("<table border=\"1\">");
sb.Append("<tr>");
foreach (DataColumn dl in dt.Columns)
{
sb.Append(string.Format("<td>{0}</br>({1})</td>", dl.ColumnName, dl.DataType));
}
sb.Append("</tr>");
int j = 1;
foreach (DataRow dr in dt.Rows)
{
sb.Append("<tr>");
for (int i = 0; i < dt.Columns.Count; i++)
{
if (i == 0)
{
sb.Append(string.Format("<td> Row:{0} - {1} </td>", j, dr[i]));
}
else
{
sb.Append(string.Format("<td> {0} </td>", dr[i]));
}
}
sb.Append("</tr>");
j++;
}
sb.Append("</table>");
return sb.ToString();
}