转载文章: 积累经验, 总结看到的好帖子。
1、动态绑定DropDownList时,要注意绑定Text和Value,显示的是Text,程序中提取的是Value;
2、
cross join 是笛卡儿乘积 就是一张表的行数乘以另一张表的行数
left join 第一张表的连接列在第二张表中没有匹配是,第二张表中的值返回null
right join 第二张表的连接列在第一张表中没有匹配是,第一张表中的值返回null
full join 返回两张表中的行 left join+right join
inner join 只返回两张表连接列的匹配项
3、渐变样式微软版本--太棒了
<td style="FILTER: progid:DXImageTransform.Microsoft.Gradient(startColorStr='#336699', endColorStr='#ffffff', gradientType='1')" vAlign="top" align="center"> |
startColorStr='起始颜色'
endColorStr='结束颜色'
gradientType='1' // 1为横向渐变,0位纵向渐变
4、数据绑定之数组绑定
1>
ArrayList values = new ArrayList();
values.Add ("北京");
values.Add ("上海");
values.Add ("广州");
ListBox1.DataSource = values;
ListBox1.DataBind();
2>
string [] arrs="aa,bb,cc".Split(',');
this.DataGrid1.DataSource=arrs;
this.DataGrid1.DataBind();
ItemTemplate绑定语句
<asp:BoundColumn DataField="!" HeaderText="test"/>
<asp:TemplateColumn HeaderText="test">
<ItemTemplate>
<%#Container.DataItem%>
</ItemTemplate>
</asp:TemplateColumn>
5、数据绑定之HashTable绑定
1>
Hashtable hash = new Hashtable();
hash.Add("北京", "010");
hash.Add("广州", "020");
hash.Add("上海", "021");
hash.Add("天津", "022");
RadioButtonList1.DataSource = hash;
RadioButtonList1.DataTextField = "Key";
RadioButtonList1.DataValueField = "Value";
RadioButtonList1.DataBind();
2>(适用一个产品多个图片的情况)
Hashtable hash = new Hashtable();
hash.Add("002", "proPic/2.jpg");
hash.Add("001", "proPic/1.jpg");
hash.Add("003", "proPic/3.jpg");
DataList1.DataSource = hash;
DataList1.DataBind();
ItemTemplate绑定语句
<ItemTemplate>
<img src='<%# DataBinder.Eval(Container.DataItem,"Value") %>'>
<br> <%# DataBinder.Eval(Container.DataItem,"key") %>
</ItemTemplate>
6、简单分页代码
第一步:通过编码获得它在数据中的排名
select count(*) from tpdetail where id>(select id from tpdetail where pNum='24110205')
第二步:根据排名,进行分页
select top 1 * from (select top 4 * from tpdetail order by ID desc) as a order by ID asc
7、根据关联表修改信息
-----修改信息,按尺码修改
UPDATE TPMStorage
SET XXS2435 =StoTrue FROM TPMStorage INNER JOIN
TPStorage ON TPMStorage.StoNum = TPStorage.StoNum AND
TPMStorage.StoColor = TPStorage.StoColor WHERE StoSpec='XXS' OR StoSpec='24' OR (StoSpec='35' AND substring(TPStorage.StoNum,1,2)='21')
8、cmd.ExecuteScalar 的返回值有可能为null,此时要将他转换成ToString()就会出错,此点要注意。
posted on 2006-03-22 11:03 仰天一笑 阅读(191) 评论(9) 编辑 收藏 引用 网摘 所属分类: 原创天地
评论
# re: 错误中积累经验,BUG中寻发展,总结中提升 2006-06-15 15:47 仰天一笑
9、前几天重装Windows 2003系统。做WEB服务!!装完IIS后,发现打开网站运行不了!出现“请求资源使在用中”!但是html可以运行!
错误原因:
1、服务器上安装的上单机版杀毒软件,如瑞星2005。服务器上使用单机版杀毒一般都不会稳定的。
2、由于iwam账号在active directory、iis metabase数据库和com+应用程序三处的密码不同步
3、打开了单机版杀毒的脚本监控,造成脚本出错。
解决方法:
1、卸载单机版杀毒软件,重启后,换装服务器版杀毒软件。如Norton Symantec AntiVirus 中小型企业版。
2、运行regsvr32 jscript.dll和 regsvr32 vbscript.dll重新注册JAVA脚本和VB脚本的动态链接库 回复 更多评论
# re: 错误中积累经验,BUG中寻发展,总结中提升 2006-07-06 16:15 仰天一笑
10、绑定控件中的注意
ChklstHouse.DataSource = dbnew.DatabaseBind("select * from tpstorehouse");
ChklstHouse.DataTextField = "HName";
ChklstHouse.DataValueField = "HouseID";
ChklstHouse.DataBind();
不能将DataBind();写在DataTextField之前,要注意页面执行顺序 回复 更多评论
# re: 错误中积累经验,BUG中寻发展,总结中提升 2006-07-11 09:32 仰天一笑
11、合理使用Insert来添加控件数据
DropDownList1.Items.Insert(int index,new ListItem(string text,string value));
实例:
DropDownList1.Items.Insert(0,new ListItem("管理员","0"));
12、后台Table添加Dropdownlist,并给Drop控件添加数据
//添加行对象
TableRow myr = new TableRow();
//添加列对象
TableCell myc = new TableCell();
//添加下拉框对象
DropDownList myddl = new DropDownList();
myddl.Items.Insert(0,new ListItem("add1","0"));
myddl.Items.Insert(0,new ListItem("add2","1"));
//将上述对象添加
myc.Controls.Add(myddl);
myr.Controls.Add(myc);
//最终将行对象添加到表格里面
this.Table1.Controls.Add(myr);
注意,后台添加的对象,不能自动保持状态,你必须在每次页面提交之后,重新添加一次才会保存状态,但重新添加之后不能重新赋值,否则上次的选择结果将消失 回复 更多评论
# re: 错误中积累经验,BUG中寻发展,总结中提升 2006-07-13 09:55 仰天一笑
13 始终关闭 Connection 和 DataReader , 合理使用Using
完成对 Connection 或 DataReader 对象的使用后,总是显式地关闭它们。尽管垃圾回收最终会清除对象并因此释放连接和其他托管资源,但垃圾回收仅在需要时执行。因此,确保任何宝贵的资源被显式释放仍然是您的责任。并且,没有显式关闭的 Connections 可能不会返回到池中。例如,一个超出作用范围却没有显式关闭的连接,只有当池大小达到最大并且连接仍然有效时,才会被返回到连接池中。
注 不要在类的 Finalize 方法中对 Connection、DataReader 或任何其他托管对象调用 Close 或 Dispose。最后完成的时候,仅释放类自己直接拥有的非托管资源。如果类没有任何非托管资源,就不要在类定义中包含 Finalize 方法。
在 C# 中使用 "Using" 语句
对于 C# 程序员来说,确保始终关闭 Connection 和 DataReader 对象的一个方便的方法就是使用 using 语句。using 语句在离开自己的作用范围时,会自动调用被“使用”的对象的 Dispose。例如:
//C#
string connString = "Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;";
using (SqlConnection conn = new SqlConnection(connString))
{
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT CustomerId, CompanyName FROM Customers";
conn.Open();
using (SqlDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
Console.WriteLine("{0}\t{1}", dr.GetString(0), dr.GetString(1));
}
}
Using 语句不能用于 Microsoft庐 Visual Basic庐 .NET。
回复 更多评论
# re: 错误中积累经验,BUG中寻发展,总结中提升 2006-07-13 15:43 仰天一笑
14、无法创建Web项目
http://www.java-asp.net/aspnet/200508/t_13510.html 回复 更多评论
# re: 错误中积累经验,BUG中寻发展,总结中提升 2006-07-25 12:58 仰天一笑
15、QQ连线
<a target=blank href=http://wpa.qq.com/msgrd?V=1&Uin=13886793&Site=http://www.cnblogs.com/skylaugh&Menu=yes><img border="0" SRC=http://wpa.qq.com/pa?p=1:253141538:6 alt="点击这里给我发消息"></a> 回复 更多评论
# re: 错误中积累经验,BUG中寻发展,总结中提升 2006-07-28 17:04 仰天一笑
16、在细节表中插入纪录时,不要在主表执行SELECT MAX(ID),这是一个普遍的错误,当两个用户在同一时间插入数据时,这会导致错误。你可以使用SCOPE_IDENTITY,IDENT_CURRENT和 @@IDENTITY。如果可能,不要使用@@IDENTITY,因为在有触发器的情况下,它会引起一些问题(详见这里的讨论)。
回复 更多评论