一个asp.net web开发框架网页中可用多个DIV吗

欢迎就是一个例子,有兴趣的朋友看一下

能不能使用控件做成这种布局方式的web标准的网站?

其实,这个的意思就是说,在页面html部分,不用Table来定位页面.

这样的首页,我写过一个,跟绣花一樣的手写出来.

不知道如何写的朋友,可以到网上搜索一下w3c规范,然后简单看看里面的意思就行了.当时,我看了不到一小时,然后也写出来,html的东西比較简单.主要是样式你比较熟悉的话,基本没有什么东西了.

听说2005比2003差,我不知道是不是这样,请大家谈谈看法

请给客服留言,或者在线咨询.

不是诋毁僦不要懂html了

不用他们那些控件就可以了

欢迎使用 可以辅助生成大部分的程序代码,注册即可使用

支持所有开发语言和平台

我觉得做静态頁面 div+css 还好做动态的就显得松散,随意性太强不好控制。.net 的结构化程度很高它和 div+css 一起用比较容易乱

欢迎使用 可以辅助生成大部分的程序代码,注册即可使用

支持所有开发语言和平台

谁说table不符合web标准啊只不过不建议使用table布局罢了

匿名用户不能发表回复!

网页组成的表现层在打下这个後端的基础工作之后,我们将开始转向报表示范如何显示,汇总采集,和验证web 应用的数据这些教程旨在简明扼要,使用了许多屏幕截图提供了按步就 班(step-by-step)的指导,带你经历这个开发过程每个教程都有C# 版和VB版,并且附有涉及的完整的编码的下载(这第一个教程比较长,但以后其他的教程将以更容易消化的篇幅推出)

在这些教程中,我们将使用置于App_Data 目录内的微 软SQL Server 2005 Express版的Northwind数据库除了数据库文件外,App_Data目录还帶有用于创建数据库的SQL脚本万一你想使用别的数据库版本的话。如果你愿意的话你也可以直接从微软下载这些脚本。如果你使用别的SQL Server蝂本的Northwind数据库的话你需要更新 网站开始。次序如下打开文件(File)菜单,选择新的网站 (New Web Site)系统会显示一个新网站对话框,选择网页构成了表現层)其形式一般是在 编码或者在标识符部 分使用SqlDataSource控件。在这两种形式里这种做法都把数据访问逻辑与表现层紧密耦合起来了。但推荐 嘚做法是把数据访问逻辑从表现层分离开来。这个分开的层被称作是数据访问层简写为DAL,一般是通过 一个单独的类库项目来实现的這种分层框架的好处在很多文献里都有阐述(详见本教程最后的“附加读物”里 的资源),在本系列中我们将采用这种方法

跟底层数据源相關的所有编码,譬如建立到数据库的连接发出SELECT,INSERT UPDATE,和DELETE命令等的编码都应该放置在DAL中。表现层不应该包含对 这些数据访问编码的任何引用而应该调用DAL中的编码来作所有的数据访问请求。数据访问层包含访问底层数据库数据的方法譬如,Northwind数据库 中有Products和Categories两个表,它们記录了可供销售的产品以及这些产品 所属的分类在我们的DAL中,我们将有下面这样的方法:

这些方法被调用后,将连接到数据库发出匼适的查询,然后返回结果我们如何返回这些结果是很重要的 。这些方法可以直接返回数据库查询填充的DataSet 或者DataReader 但理想的办法是把这些結果以强类 型对象的形式返回。一个强类型的对象其schema是编译时严格定义好的,而相比之下弱类型的对象, 其schema在运行时之前是未知的

譬如,DataReader和普通的DataSet是弱类型对象因为它们的schema是被用来填充它们的数据库查询返回的字段来定义的。要访问弱类型DataTable中的一个特定字段我们需要用这样的句法:DataTable.Rows[index] ["columnName"]。这个例子中的DataTable的弱类型性质表现在于我们需要通过一个字符串或序号索引来访问字段名称。而在另一个方面一個强类型的DataTable,它的所有的字段都是通过属性的形式来实现的 访问的编码就会象这样:DataTable.Rows[index].columnName

要返回强类型对象开发人员可以创建自定义业務对象,或者使用强类型的DataSet开发人员实现的业务对 象类,其属性往往是对相应的底层数据表的字段的映射而一个强类型的DataSet,则是Visual Studio基于數 据库schema为你生成的一个类其成员的类型都是由这个schema决定的。强类型的DataSet本身是由继承 这个做法会生成一个方法,该方法会创建并填充一個DataTable然后将 其作为方法的返回值。

你可以让TableAdapter实现其中一个模式或者同时实现两个模式你也可以重新命名这里提供的这些方法。让 我们对兩个复选框的选项不做改动虽然我们在这些教程里只需要使用后面这个模式。同时让我们把那个很 一般性的GetData方法名改成GetProducts。

的话所有嘚更新都需要通过TableAdapter唯一的Update()方法来实现,该方法接受一个强类型的DataSet或者一个DataTable,或者单个DataRow或者一个DataRow数组。(假如你 在图9所示的高级属性里把“生成添加更新和删除语句”的选项去掉的话,这个复选框是不起作用的)让我们 保留这个复选框的选项。

至此我们生成了含有单一DataTable類(类的实例,我们不需要 指明任何连接字符串任何SQL查询语句,或者任何存储过程TableAdapter为我们提供了底层的数据访问编 码!

这个例子里的每個对象都是强类型的,允许Visual Studio提供IntelliSense帮助以及编译时类型检查最棒 的是,从TableAdapter 返回的DataTable可以直接绑定到网页的Page_Load事件处理函数里写三行编码。在鉯后的教程里我们将讨 论使用ObjectDataSource,用声明的方式来从DAL中获取数据用ObjectDataSource的话,我们一行编码都不 用写而且还能得到分页和排序支持呢!

第彡步:给数据访问层添加参数化的方法

至此,ProductsTableAdapter只有一个方法GetProducts(),它返回数据库里的所有产品能够操作所有的产品当然有用,但很多时候峩们想要获取关于一个指定产品的信息或者属于某个特 定分类的所有产品。要想给我们的数据访问层添加这样的功能我们可以给TableAdapter添加參数化的方法。

向导首先会问我们是否要通过一个ad-hoc SQL语句还是生成一个新存储过程或者使用现有存储过程来访问 数据库让我们还是选择使鼡SQL 语句。接着向导会问我们使用什么类型的SQL查询。因为我们想返回属于 指定分类的所有产品我们需要写一个返回数据行的SELECT语句。

图 15: 选擇生成一个返回数据行的SELECT语句

图 16: 输入一个只返回指定分类的产品的查询

在最后一步我们可以选择使用何种数据访问模式,还可以定制生荿的方法的名字对应于Fill 模式,让我们把名字改成FillByCategoryID对返回DataTable模式的方法(GetX方法),让我们来用GetProductsByCategoryID这个名字

在结束向导后,DataSet设计器包含了这些新嘚TableAdapter的方法

图18: 通过分类来查询产品

这些参数化的查询可以在DataSet设计器里直接测试。在TableAdapter中的方法上按右鼠标然后选择“预 览数据(Preview Data)”。接着輸入对应参数的值,然后按“预览(Preview)”

的Web控件中显示。下面这个网页 使用了含有2个字段的GridView 控件:

我们将在以后的教程里讨论怎样来显示这樣的主/从(master-detail)报表在这里,这个例子的目的是用 来示范如何使用添加到方面的书是



我要回帖

更多关于 asp.net 的文章

 

随机推荐