Context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
2int.TryParse的好处
private
string
_zip;
public string Zip
{
get
{
return _zip;
}
set
{
int res;
if (int.TryParse(value, out res))
{
if (res > 99999)
{
throw new ArgumentException("Zip Code Value invalid");
}
else
{
_zip = res.ToString().PadLeft(5, ‘0′);
}
}
else
{
throw new ArgumentException("Zip code must be numeric");
}
}
}
!int.TryParse(this.DropDownList_TypeName.SelectedItem.Value, out TypeId){}public string Zip
{
get
{
return _zip;
}
set
{
int res;
if (int.TryParse(value, out res))
{
if (res > 99999)
{
throw new ArgumentException("Zip Code Value invalid");
}
else
{
_zip = res.ToString().PadLeft(5, ‘0′);
}
}
else
{
throw new ArgumentException("Zip code must be numeric");
}
}
}
2005中每种类型都提供了TryParse方法,该方法的格式一般为bool TryParse(value,out resultValue)。
value 就是将要转换的数据。resultValue是转换后的值。该方法若成功,resultValue中将是转换后的值,同时方法返回true;若失败,resultValue将是将要转换的类型的默认值,同时方法返回false。
3 枚举,添加删除新闻的两个标志
private enum Status { Add, Edit };
private Status status;
4 存img的时候最好只存img的名字再用再在外面拼地址得到绝对路径。
这样以后路径有改变不必更新数据库。
GetAbsolutePath("admin/Photos/" + txt_ImgUrl.Value);得到值(他人方法赞~)
/**/
/// <summary>
/// 将相对路径转换为绝对路径
/// 注:最终得到任何场合都可以正常链接的路径(不论将应用程序设置成虚拟目录还是网站的根目录)
/// 例如:设置为虚拟目录的时候,"admin/upload/test.jpg" => "/JCDWeb/admin/upload/test.jpg"
/// 设置为网站根的时候,"admin/upload/test.jpg" => "/admin/upload/test.jpg"
/// </summary>
/// <param name="path">从根开始的相对路径</param>
/// <returns>绝对路径</returns>
public string GetAbsolutePath( string path)
{
// 如果是一个绝对路径直接返回
if (path.ToLower().StartsWith("http://"))
{
return path;
}
// 去掉前导的 "/"
if (path.StartsWith("/"))
{
path = path.Substring(1);
}
// 整个应用程序的路径
string appPath = "http://" + HttpContext.Current.Request.Url.Authority + HttpContext.Current.Request.ApplicationPath;
// 得到绝对路径
if (appPath.EndsWith("/"))
return appPath + path;
else
return appPath + "/" + path;
}
/// 将相对路径转换为绝对路径
/// 注:最终得到任何场合都可以正常链接的路径(不论将应用程序设置成虚拟目录还是网站的根目录)
/// 例如:设置为虚拟目录的时候,"admin/upload/test.jpg" => "/JCDWeb/admin/upload/test.jpg"
/// 设置为网站根的时候,"admin/upload/test.jpg" => "/admin/upload/test.jpg"
/// </summary>
/// <param name="path">从根开始的相对路径</param>
/// <returns>绝对路径</returns>
public string GetAbsolutePath( string path)
{
// 如果是一个绝对路径直接返回
if (path.ToLower().StartsWith("http://"))
{
return path;
}
// 去掉前导的 "/"
if (path.StartsWith("/"))
{
path = path.Substring(1);
}
// 整个应用程序的路径
string appPath = "http://" + HttpContext.Current.Request.Url.Authority + HttpContext.Current.Request.ApplicationPath;
// 得到绝对路径
if (appPath.EndsWith("/"))
return appPath + path;
else
return appPath + "/" + path;
}
5 dropdowlist编辑时绑定(easy
foreach
(ListItem li
in
DropDownList_TypeName.Items)
{
if (li.Value == dt.Rows[0]["TypeID"].ToString().Trim())
{
li.Selected = true;
break;
}
}
{
if (li.Value == dt.Rows[0]["TypeID"].ToString().Trim())
{
li.Selected = true;
break;
}
}
6 fckeditor
<%@ Register Assembly="FredCK.FCKeditorV2" Namespace="FredCK.FCKeditorV2" TagPrefix="FCKeditorV2" %>
7上传图片显示预览(针对ie7上传不能显示图片问题,增加滤镜)
<
div id
=
"
div_1
"
class
=
"
preview
"
>
< asp:Image ID = " img_Photo " runat = " server " ImageUrl = " ../images/noimage.gif "
Width = " 120px " Height = " 90px " / >< / div >
function PreviewInInternetExplorer7(file)
{
if (document.all)
{
$('div_1').filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = file;
$('img_Photo').style.display = "none";
} else
{
$('img_Photo').src = file;
}
}
.preview
{
width:120px;
height:90px;
overflow:hidden;
text-align:center;
border:1px solid #DBDBDB;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale');
}
< asp:Image ID = " img_Photo " runat = " server " ImageUrl = " ../images/noimage.gif "
Width = " 120px " Height = " 90px " / >< / div >
function PreviewInInternetExplorer7(file)
{
if (document.all)
{
$('div_1').filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = file;
$('img_Photo').style.display = "none";
} else
{
$('img_Photo').src = file;
}
}
.preview
{
width:120px;
height:90px;
overflow:hidden;
text-align:center;
border:1px solid #DBDBDB;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale');
}
8 得到安全的字符串
public string GetSafeQueryStr(string _name)
{
string str = "";
if (_name != "" && _name != null && Request[_name] != "" && Request[_name] != null)
str = Request[_name].ToString().Trim().Replace("'", "''");
return str;
}
{
string str = "";
if (_name != "" && _name != null && Request[_name] != "" && Request[_name] != null)
str = Request[_name].ToString().Trim().Replace("'", "''");
return str;
}
9repeater增删改 得到typeid(easy)
<
asp:LinkButton ID
=
"
lbt_delete
"
CommandArgument
=
'
<%#DataBinder.Eval(Container.DataItem,"ID") %>
'
runat = " server " CommandName = " delete " OnClientClick = " return confirm('确定删除吗?') " > 删除 </ asp:LinkButton >
一:Label lb = e.Item.FindControl( " TypeID " ) as Label;
int typeId = int .Parse (lb.Text.Trim());
switch (e.CommandName)
二: int Id = Convert.ToInt32(e.CommandArgument);
switch (e.CommandName)
runat = " server " CommandName = " delete " OnClientClick = " return confirm('确定删除吗?') " > 删除 </ asp:LinkButton >
一:Label lb = e.Item.FindControl( " TypeID " ) as Label;
int typeId = int .Parse (lb.Text.Trim());
switch (e.CommandName)
二: int Id = Convert.ToInt32(e.CommandArgument);
switch (e.CommandName)
10 设置可读写的数据库实例
private
static
Database reader;
private static Database writer;
private static object lockObj = new object ();
/**/ /// <summary>
/// 获得只读数据库实例
/// </summary>
public static Database Reader
{
get
{
if (reader == null)
{
lock (lockObj)
{
if (reader == null)
{
reader = DatabaseFactory.CreateDatabase("Reader");
}
}
}
return reader;
}
}
/**/ /// <summary>
/// 获得可写数据库实例
/// </summary>
public static Database Writer
{
get
{
if (writer == null)
{
lock (lockObj)
{
if (writer == null)
{
writer = DatabaseFactory.CreateDatabase("Writer");
}
}
}
return writer;
}
}
lock 确保当一个线程位于代码的临界区时,另一个线程不进入临界区。如果其他线程试图进入一个锁定代码,则它将在释放该对象前一直等待。
private static Database writer;
private static object lockObj = new object ();
/**/ /// <summary>
/// 获得只读数据库实例
/// </summary>
public static Database Reader
{
get
{
if (reader == null)
{
lock (lockObj)
{
if (reader == null)
{
reader = DatabaseFactory.CreateDatabase("Reader");
}
}
}
return reader;
}
}
/**/ /// <summary>
/// 获得可写数据库实例
/// </summary>
public static Database Writer
{
get
{
if (writer == null)
{
lock (lockObj)
{
if (writer == null)
{
writer = DatabaseFactory.CreateDatabase("Writer");
}
}
}
return writer;
}
}
11 分页存储过程关键代码。
IF
@curpage
=
0
SET @cmd = ' SELECT TOP ' + cast ( @page_record AS NVARCHAR ) + ' ' + @fieldlist + '
FROM ' + @tablename + ' WHERE ' + @where + ' ' + @orderby
ELSE
SET @cmd = ' SELECT TOP ' + cast ( @page_record AS NVARCHAR ) + ' ' + @fieldlist + '
FROM ' + @tablename + ' WHERE ' + @where + ' AND ' + @tablefield + '
' + @op + ' (SELECT ' + @max_min + ' ( ' + @tablefield + ' ) FROM (SELECT TOP
' + cast ( @uprecord AS NVARCHAR ) + ' ' + @tablefield + ' FROM ' + @tablename + ' WHERE
' + @where + ' ' + @orderby + ' ) AS TmpTbl ) AND ' + @where + ' ' + @orderby
SET @cmd = ' SELECT TOP ' + cast ( @page_record AS NVARCHAR ) + ' ' + @fieldlist + '
FROM ' + @tablename + ' WHERE ' + @where + ' ' + @orderby
ELSE
SET @cmd = ' SELECT TOP ' + cast ( @page_record AS NVARCHAR ) + ' ' + @fieldlist + '
FROM ' + @tablename + ' WHERE ' + @where + ' AND ' + @tablefield + '
' + @op + ' (SELECT ' + @max_min + ' ( ' + @tablefield + ' ) FROM (SELECT TOP
' + cast ( @uprecord AS NVARCHAR ) + ' ' + @tablefield + ' FROM ' + @tablename + ' WHERE
' + @where + ' ' + @orderby + ' ) AS TmpTbl ) AND ' + @where + ' ' + @orderby