admin 管理员组文章数量: 1184232
2024年3月12日发(作者:ruby教程全集)
1、事件 处理事件的方法
2、class和id的用途是不一样的;首先要说明一下,选择器一共有三种:
html标记,class,id; html标记就不说了,class是对html标记选择器的一种扩展,
CLASS可以给多个标记反复利用;而ID的目的在于被Javascript使用,来动态改变CSS,
所以2种的实际用途是截然不同的。
如:"id"对应"#","class"对应"." .id是唯一标志的,在同一页面中不能有相同的值,class
则没这约束。如:
Css
#div1{......}
.div2{......}
//class可以相同重复用
//id则是唯一的
如果你再加上
则会出错。
在CSS中ID的优先级是比CLASS高的
3、.clear{
clear:both
} // CSS clear 属性 图像的左侧和右侧均不允许出现浮动
元素:
4. onselectednodechanged="tvCategory_SelectedNodeChanged">
注意:
asp开头和结尾说明这个控件是.net自带的控件
5, html中的标签
控件都有runat=server 的属性,写的时候VS会提示你输入这个属性,这个属
性表示这是一个服务器端控件,即这个控件用来客户端和服务器端进行交互。
是sql的数据库文件,ldf是Sql数据库日志文件。这两个文件是互相关联的。
你要打开的话要用sql企业管理器打开、
目录用来保存项目生成后程序集,它有Debug和Release两个版本,分别对应
的文件夹为bin/Debug和bin/Release,这个文件夹是默认的输出路径,我们可以通过:
项目属性—>配置属性—>输出路径来修改。
程序集:经由编译器编译得到的,供CLR进一步编译执行的那个中间产物,在
WINDOWS系统中,它一般表现为·dll或者是·exe的格式,但是要注意,它们跟普通意义
上的WIN32可执行程序是完全不同的东西,程序集必须依靠CLR才能顺利执行。
obj目录是用来保存每个模块的编译结果,在.NET中,编译是分模块进行的,编译整
个完成后会合并为一个.DLL或.EXE保存到bin目录下。因为每次编译时默认都是采用增量
编译,即只重新编译改变了的模块,obj保存每个模块的编译结果,用来加快编译速度。
是否采用增量编译,可以通过:项目属性—>配置属性—>高级—>增量编译来设置。
9、文件:包含程序版本、信息、版权的属性文件
10.一般在vs里面新建一个页面会产生两种文件:一种是后缀名为.cs的,一种是.aspx.
简单的说,.cs文件一般是在里面实现功能的,而.aspx就是实现界面效果的。
区别:.cs文件里面写的是.net的代码,包括方法和字段,.aspx文件里面写的是html
代码,再绑定.cs文件里的字段。
联系:项目中只有.cs文件在后台实现功能,.aspx文件能引导客户去使用这个功能。
就像你在百度上提问问题一样,如果没有之个页面(即.aspx的界面效果),你就不知道把
问题写在哪,点击什么提交上去。如果没有.cs页面实现的功能,你就没办法把提的问题交
到百度服务器上去。
与的区别
目前很多人对和ASP概念混淆,其实两者是不同,ASP是解释性编程框架,
而是编译性框架;无论是从执行效率和安全上都远远超过ASP;ASP
文件的后缀是.asp而则是.aspx和.。实现了代码分离,让代码
管理更加直观。
全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet
设计,它[1] 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页
技术标准。
13.
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一
种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,
主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语
法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编
程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执
行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编
译可以达到加密和优化代码运行,使代码运行更快。
(帽子).csproj————》扩展名 // .: 用户配置文件
.csproj是C#项目文件的扩展名,它是“C Sharp Project”的缩写。.net 开发环境中
建立项目时,会产生.csproj 文件,这是C#的工程文件,其中记录了与工程有关的相关信
息,例如包含的文件,程序的版本,所生成的文件的类型和位置的信息等。
15 .bin文件
.二进制文件,其用途依系统或应用而定 。一种文件格式binary的缩写。一个后缀名
为".bin"的文件,只是表明它是binary格式。比如虚拟光驱文件常用".bin"作为后缀,但
并不意味着所有bin文件都是虚拟光驱文件。
16.项目是在开发过程中为了便于管理而运用的代码管理方式,程序员在开发软件时可
以根据各个类的不同功能而将其归类到不同的项目中。而一个或多个项目可以组成一个解
决方案。
17.说白了,项目就是为代码管理提供方便。
18.而代码的运行并不需要.csproj、.之类的文件,所以在开发完成之后生
成的软件或网站中,不会有以上之类的文件。
19.因此:
20.在软件开发中需要项目进行代码管理,
21.而在软件使用中则不需要项目。
17.什么是sln文件
SLN 文件是Visual Studio开发套装进入.net时代后,使用解决方案文件(后缀为
sln的文件)表示一个项目组,他通常包含一个项目中所有的工程文件信息。
是前台,表示设计页面,是后台,是代码功能实现,分开来设计是为了
代码清晰,功能模块化,这是Code-Behind结构,即代码在页面HTML的后面。
在.aspx文件中,主要是页面的HTML;
而在.文件中,是C#代码,在.aspx中添加的控件的事件,它的代码都在.
中。
19..aspx文件、.文件和.的一些说明
.aspx文件:(页面)书写页面代码。存储的是页面design代码。只是放各个控件
的代码,处理代码一般放在.cs文件中。
.文件:(代码隐藏页)书写类代码。存储的是程序代码。一般存放与数据库
连接和数据库相关的查询。更新。删除操作,还有各个按钮单击后发生的动作等。
.文件:书写页面设计代码。通常存放的是一些页面控件中的控件
的配置信息,就是注册控件页面。这个东西是窗体设计器生成的代码文件,作用是对窗体
上的控件执行初始化工作。
20.
App_Data文件夹应该包含应用程序的本地数据存储。它通常以文件(诸如
Microsoft Access或Microsoft SQL Server Express数据库、XML文件、文本文件
以及应用程序支持的任何其他文件)形式包含数据存储。该文件夹内容不由处理。
该文件夹是提供程序存储自身数据的默认位置。
注意 :默认帐户被授予对文件夹的完全访问权限。如果碰巧要改变
帐户,一定要确保新帐户被授予对该文件夹的读/写访问权。
21、文件是一个XML文本文件,它用来储存 应用程序
的配置信息(如最常用的设置 应用程序的身份验证方式),它可以出现在
应用程序的每一个目录中。当你通过.NET新建一个Web应用程序后,默认情况下会在根
目录自动创建一个默认的文件,包括默认的配置设置,所有的子目录都继承
它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个
文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写
或修改父目录中定义的设置。
22..参考《从基础到实践》P286.
23. 标签的 alt 属性指定了替代文本,用于在图像无法显示或者用户禁用图像
显示时,代替图像显示在浏览器中的内容。
trols 命名空间
程序集: (在 中)
trols 命名空间包含一些类,可使用这些类在网页上创建
Web 服务器控件。 Web 服务器控件运行在服务器上,并且包括按钮和文本框等窗体控
件。 它们还包括具有特殊用途的控件(例如日历)。 由于 Web 服务器控件运行在服务
器上,因此可以以编程方式来控制这些元素。 尽管 Web 服务器控件呈现为 HTML,但
它们的对象模型不一定反映 HTML 语法。
trols 命名空间包含一些呈现为 HTML 标记的类,
如 TextBox 控件和 ListBox 控件。 该命名空间还包含一些不在网页上呈现、但支持数据操
作的类,如 SqlDataSource 类和 ObjectDataSource 类。 其他一些控件(如 GridView 控
件和DetailsView 控件)支持数据显示和编辑。 该 WebControl 类用
作 trols 命名空间中许多类的基类。
25 DataKeyField="productId" 列表项的主键是productId
using System;
using trols;
using ;
开头的using指令,它引用了System的命名空间,命名空间提供了一种分层的方式
来组织以C#程序和库。
26、rowspan,是HTML语言中的一个对象属性。通常使用在td与th标签中,可
以实现表格中一列跨越多行。
27 DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元
素。DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素
的特性由DIV标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。
后台关键代码如下:
using System;
using trols;
using ;
namespace Bonnet
{
public partial class Main :
{
public static PagedDataSource pds = new PagedDataSource();
页用数据集
#region 【页面初始化】
///
/// 页面初始化
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) //只需要加载一次的代码
// 分
{
CategoryBind(); // 分类信息数据绑定
aging = true; // 允许分页
引为0
tPageIndex = 0;
ze = 4;
ProductBind();
}
}
#endregion
#region 【分类信息处理】
///
/// 分类信息数据绑定
///
// 设置当前页索引为0,即首页索
// 单页显示项数
private void CategoryBind()
{
(); //clear 函数;清除并发队列,销毁所有当
前已排入队列的元素。清除树控件中的所有节点
TreeNode tnCategory = new TreeNode();
= "所有商品";
= "0";
ed = true; //节点可以折叠
(tnCategory); //增加一个根节点
TreeCategoryParentCreate(tnCategory);
}
///
/// 树形分类父节点创建
///
///
private void TreeCategoryParentCreate(TreeNode tnCategory)
{
string strSql = "SELECT * FROM t_Category WHERE categoryPid = 0";
DataTable dt = (strSql);
foreach (DataRow dr in ) //foreach 语句用于循环访问集合以
获取所需信息
{
TreeNode ptn = new TreeNode();
= (string)dr["categoryname"];
= dr["categoryid"].ToString();
ed = true;
(ptn);
TreeCategoryChildCreate(ptn);
}
}
///
/// 树形分类子节点创建
///
///
private void TreeCategoryChildCreate(TreeNode tnCategory)
{
string strSql = "SELECT * FROM t_Category WHERE categoryPid = '" +
+ "'";
DataTable dt = (strSql);
foreach (DataRow dr in )
{
TreeNode ptn = new TreeNode();
= (string)dr["categoryname"];
= dr["categoryid"].ToString();
ed = true;
(ptn);
TreeCategoryChildCreate(ptn);
}
}
///
/// 树形分类节点变更处理
///
/// HTML
标签,向 HTML 代码添加一个对象:
///
protected void tvCategory_SelectedNodeChanged(object sender, EventArgs e)
//前面的object用来传递事件的发生者,后面的EventArgs用来传递事件的细节,
{
TreeNode tn = edNode; //获取表示 TreeView 控
件中选定节点的 TreeNode 对象。
Session["categoryValue"] = ; //当您操作某个应用程序时,
您打开它,做些改变,然后将它关闭。这很像一次对话(Session)。Session 对象用于
存储关于用户的信息,或者为一个用户的 session 更改设置。
Session["categoryText"] = ;
ct("~/?categoryid=" + );
}
#endregion
#region 【商品信息处理】
///
/// 商品数据绑定
///
private void ProductBind()
{
string strSql = ; //字符串的初始化
if (tring["category"] != null)
{
string category = tring["category"].ToString();
if (tring["text"] == null)
{
if (category == "0")
{
strSql = "SELECT * FROM t_Product A, t_Image B WHERE
d = d";
}
else
{
strSql = "SELECT * FROM t_Product A, t_Image B WHERE
d = d AND ryid=" + category + "";
}
}
else
{
string text = tring["text"].ToString();
if (category == "0")
{
strSql = "SELECT * FROM t_Product A, t_Image B WHERE
d = d AND tname LIKE '%" + text + "%'";
}
else
{
strSql = "SELECT * FROM t_Product A, t_Image B WHERE
d = d AND ryid=" + category + " AND tname
LIKE '%" + text + "%' ";
}
}
}
else
{
if (0 == 32(tring["categoryid"]))
{
strSql = "SELECT * FROM t_Product A, t_Image B WHERE
d = d";
}
else
{
int categoryid =
32(tring["categoryid"]);
strSql = "SELECT * FROM t_Product A, t_Image B WHERE
d = d AND ryId IN "
+ "(SELECT categoryId FROM t_category WHERE
categoryId = '" + categoryid
+ "' OR categoryPid = '" + categoryid + "')";
}
}
DataTable dt = (strSql);
urce = tView;
urce = pds;
nd();
// 分页处理
d = !tPage; // 当前页 为 首页
的场合,首页按钮不可用
d = !tPage; // 当前页 为 首页
的场合,上页按钮不可用
d = !Page; // 当前页 为 尾
页的场合,下页按钮不可用
d = !Page; // 当前页 为 尾
页的场合,尾页按钮不可用
= ng(tPageIndex + 1);
// 当前页 为 首页的场合,tPageIndex的值会为0,所以要+1
= ng();
}
#endregion
#region 【首页按钮押下处理】
///
/// 首页按钮押下处理
///
///
///
protected void lbtnFirstPage_Click(object sender, EventArgs e)
{
tPageIndex = 0; // 首页的场合,设置
tPageIndex为0
ProductBind();
}
#endregion
#region 【上页按钮押下处理】
///
/// 上页按钮押下处理
///
///
///
protected void lbtnPrevPage_Click(object sender, EventArgs e)
{
tPageIndex -= 1;
ProductBind();
}
#endregion
#region 【下页按钮押下处理】
///
/// 下页按钮押下处理
///
///
///
protected void lbtnNextPage_Click(object sender, EventArgs e)
{
tPageIndex += 1;
ProductBind();
}
#endregion
#region 【尾页按钮押下处理】
///
/// 尾页按钮押下处理
///
///
///
protected void lbtnLastPage_Click(object sender, EventArgs e)
{
tPageIndex = unt - 1;
ProductBind();
}
#endregion
}
}
版权声明:本文标题:软件工程代码总结 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1710213280a562763.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论