当前位置:首页 » 存储配置 » aspnet存储过程分页

aspnet存储过程分页

发布时间: 2024-10-08 08:01:47

1. ASP.NET常见错误大全

检测到有潜在危险的 Request Form 值

原因:

( )在提交数据的页面或webconfig中没有对validateRequest的属性进行正确的设置

( )HTML里面写了轿烂旅两个<form>引起

解决:

方案一 在 aspx文件头中加入这句 <%@ Page validateRequest= false %>

方案二 修改nfig文件:

<configuration>

<system web>

<pages validateRequest= false />

</system web>

</configuration>

因为validateRequest默认值为true 只要设为false即可

在没有任何数据时进行无效的读取尝试 解决办法

原因

所返回的sqldatareader无数据记录 但没有作记录判断力处理 返回的是空值

加上判断即可 if (reader read()) { TextName Text =

reader[ FieldName ] ToString(); }

数据为空 不能对空值调用此方法或属性

原因:

若对象是null 那么调用对象的方法例如ToString()肯定出错一般是数历宴据库字段的值为空

在grideview等闭凳数据控件常出现

解决:因此建议作NULL处理

阅读器关闭时 FieldCount 的尝试无效

原因:

使用了SqlDataReader来绑定数据后 将connection对象作了Close()处理

类似

public SqlDataReader GetSomething()

{

conn open();

SqlDataReader reader =

sqlcmd ExcecutReader(CommandBehavior CloseConnection));

conn close();// occur error here

return reader;

}

在绑定的时候调用了这个方法来指定数据源 如果使用这个方法则需要在调用函数中关闭Re

ader这样conn就可以自动关闭

如果是使用的是SqlDataAdapter和DataSet那么请去掉显式关闭conn的调用 或者在finally

中调用之

未能映射路径

原因:可能是在webconfig中的路径配置不正确所致 在FCKEditor的配置中这种问题比较突出

<add key= FCKeditor:BasePath value= ~/admin/fckeditor/ />

<add key= FCKeditor:UserFilesPath value= /UserFiles/ />

Unreachable code detected

原因

一般是在异常处理理或返回值时使用了 throw 或return 可能是其位置放在前面 造成后面的代码执行到了

解决

把相关的异常抛出处理的语句(throw)或return 的语句放到代理执行的最后一行

索引超出范围 必须为非负值并小于集合大小

原因

( ) 没有设置DATAKEYFIELD设为数据库中相对应的唯一字段(一般是主键)

( ) DataGrid Columns > e Item Cells

解决

( ) 设置datakeyfield

( ) 加入判断语句unt (datagrid可以是其它相类似的服务器控件)

数据源不支持服务器端的数据分页

解决方法:

不要使用DataReader 改成使用DataSet 或使用自定义分页形式 不采用提供的分页功能

OleDbDataAdapter da = new OleDbDataAdapter(sql connection);

DataSet ds = new DataSet();

da Fill(ds News );

GridView DataSource = ds ;

GridView DataBind();

对象名 ***** 无效

原因:当前使用的数据库中没有*****这张表

解决: 查看是否程序中是否写错了所调用的表的名称或看一下SQL数据库中是否存在你所调用的表

在建立与服务器的连接时出错 在连接到 SQL Server 时 在默认的设置下 SQL

Server 不允许进行远程连接可能会导致此失败 (provider: 命名管道提供程序

error: 无法打开到 SQL Server 的连接)

solution: 主机上需要用固定的IP地址或服务器地址

SqlDateTime 溢出 必须介于 / / : : AM 和 / / : : PM

之间

出现这种问题``多半是因为你更新数据库时``datetime字段值为空``默认插入 年 月

日``造成datetime类型溢出

出现 表示 属性 此处应为 方法

原因:

VB与c#的方法 属性的格式有所不一样导致

可能是在design中绑定数据的语法出现错误 解决: 记住属性用[] 方法用()

记住绑定数据的正确语法(有以下几种方式::<%Container DataItem( 字段名 )%> <%

#Eval( 字段名 )%> <%Bind( 字段名 )%>等)

未能从程序集 DAL Version= Culture=neutral

PublicKeyToken=null 中加载类型 DAL SqlHelper

原因:修改了其他层后未能重新编译成dll

解决:编译一下(Rebuild)

为过程或函数 指定的参数太多

solution:调用存储过程与定义的存储过程所用的参数数量或所执行的SQL语句中所传入的参

数个数不一致(这是个SQL的错误)

解决方案:仔细检查在存储过程中所设定的参数变量 与实际输入的参数值是否一一对应

无法启动调试 绑定句柄无效

原因:系统的Terminal Services没有开启

Unable to debugging on the web server Debug failed because integrated windows authentication is not enable

解决方法:

打开vs >工具(Tools) >选项(Option) >调试(debugging) >编辑并继续(Edit and Continue) >全部打勾

Automation 操作中文件名或类名未找到: RegExp

解决方法:regsvr vbscript dll

System NullReferenceException: 未将对象引用设置到对象的实例

原因:

( )所设置的变量为空值或没有取到值 一般出现在传递参数的时候出现这个问题 也会在使用datagrid或gridview或datalist等数据控件时出现

( )控件名称与codebehind里面的没有对应

( )未用new初始化对象

( )在程序中所引用的控件不存在

解决方法:

( )使用try catch finally捕捉错误 或直接用response write()输出所取的变量值

( )查看代码中是否存在未初始化的变量

错误 文件被数字签名策略拒绝(安装vs sp 时)解决方法:

( ) 单击 开始 单击 运行 键入 control admintools 然后单击 确定

( ) 双击 本地安全策略

( ) 单击 软件限制策略 (注意 如果未列出软件限制 请右击 软件限制策略 然后单击 新建策略 )

( ) 在 对象类型 下 双击 强制

( ) 单击 除本地管理员以外的所有用户 然后单击 确定

( ) 重新启动计算机

微软说明

vs 不能从源文件模式切换到视图模式

解决方法:dos下运行下 devenv /resetskippkgs (win+r cmd)

Validation of viewstate MAC failed

解决办法:页面的顶部page加 EnableViewState= False EnableViewStateMac = False 来解决这个问题

Automation server can t create object (Automation 服务器不能创建)

解决办法:运行: Regsvr scrrun dll 即可

包加载失败

未能正确加载包 Visual Web Developer Trident Designer Package (GUID =

{ AE E C D E F A AEFF }

解决方法:

设置系统变量 VsLogActivity=

在%APPDATA%MicrosoftVisualStudio 文件夹下创建文件ActivityLog xml

Error

Microsoft Visual Studio

LoadLibrary failed for package [Visual Web Developer Trident Designer Package]

{ AE E B C D E F A AEFF }

e

c:Program FilesMicrosoft Visual Studio Common Packages ridsn dll

从 WINNTMicroSoft NETFrameworkv xxx 复制文件gdiplus dll 到 Program FilesVisual Studio Common Packages文件夹下

在命令行下运行命令 devenv /resetskippkgs

Error spawning cmd exe

解决方案:把cmd exe 拷贝到VS安装目录下的VC/BIN目录里 可以解决问题

尝试读取或写入受保护的内存

解决:硬件有问题 一般内存有问题

无法在证书存储区中找到清单签名证书

解决方法:用记事本打开项目的 csproj文件 删除类似

该项目中不存在目标 ResolveKeySource

原因:这个问题很罕见 查询国外相关资料后 大致说是由于部署的不是一个标准的solution 需要在VS自带的命令提示中运行下面这个东西恢复

解决方法:

( ) 将下列代码存为XML文件 命名为TestBuild xml

<Project DefaultTargets= Build xmlns= >

<PropertyGroup>

<TargetConnectionString>Data Source= sql % BUser ID=SqlUser% BPooling=False% BPassword=X</TargetConnectionString>

</PropertyGroup>

<ItemGroup>

<DatabaseProject Include= Database Database dbproj />

<DatabaseProject Include= Database Database dbproj />

</ItemGroup>

<Target Name= BuildAllDatabaseProjects >

<MSBuild

Properties= TargetConnectionString=$(TargetConnectionString)

Projects= @(DatabaseProject)

Targets= Build;Deploy >

</MSBuild>

</Target>

( )在命令提示中运行:m *** uild /t:BuildAllDatabaseProjects TestBuild xml

</Project>

不能将值 NULL 插入列 **

原因:这是数据库表设计的错误 所涉及的表的字段中设置了不能为空的属性 但是传入的值为null 所以报错

解决方法:查看是否所传入的值是否为Null 或修改数据库中表的所对应的列的属性

未能加载类型 命名空间 类

原因:

( )项目修改后没有进行编译

( )项目中原有的命名空间可能被修改了

( )项目中所需要的ascx或其他页面不存在 或不包含在项目中

解决方法:

( )在修改完成之后 请重新生成或编译整个项目或解决方案

( )手工修改所改动的命名空间 注意名称的大小写 再重新编译

( )将相关的文件包含在项目中

不能访问只读文件 **** ***

解决方案:

给虚拟目录所对应的文件加上 Everyone/写入 权限即可

请求因 HTTP 状态 失败 Access Denied解决方法:在iis信息服务器上把匿名访问和允许iis控制密码给勾上

有一个无效 SelectedValue 因为它不在项目列表中

原因

( )在没有绑DropDownList之前就给DropDownList SelectedValue 赋值

( )dropdownlist中出现了null值

无法在 已存在的情况下创建/影像复制该文件

解决方案 重新编译项目(多个project全部重新编译) 关闭vs 重新打开 必要时重新启动机子

用户 CASPNET 登录失败登录失败

异常详细信息: System Data SqlClient SqlException: 用户 COOASPNET 登录失败

这是怎么回事啊?

因为你的程序连接SQLServer的连接字符串是用了windows集成登陆 你可以改成用数据库帐号密码登陆 连接字符串的写法是

server=localhost;uid=sa;pwd=xxxx;database=master;

server是数据库服务器的机器名或者IP 如果是同一台机可以用localhost

uid是数据库登陆帐号

pwd是数据库密码

database是数据库初始owner名称

答案

右击桌面我的电脑 选择 管理 双击打开的 计算机管理 对话框中的 本地用户和组 下的 组 在右边的窗口中双击 Remote Desktop Users 组 在打开的 Remote Desktop Users 属性对话框中 单击添加 在打开的 添加用户 对话框中单击 高级 再单击 立即查找 按钮 在 搜索 结果中 双击ASPNET(如果是IIS NEOR SERVERCE )再点击两次确定完成添加 用户

单击 开始 所有程序 Microsoft SQL Server 企业管理器 在打开的 控制台根目录 选择相应的数据库 右击该数据库的中的 用户 选择 新建数据库用户 在 新建用户 对话 框中点击 登陆名 右侧的下拉列表框 选择 新建 打开 新建登陆对话框 点击名称右侧的 省略号按钮 在打开的对话框中将 列出的名称 中选择 本机的名称 再在下面的名称框中选定 Remote Desktop Users 然后点击 成员 按钮 双击 ASPNET(如果是IIS NEOR SERVERCE ) 然后点击确定 在 新建登陆对话 框 中的默认设置的 数据库 选项中选择相应的数据库名称 再在 数据库访问 选项下勾选相应 的数据库点击确定 完成将默认的匿名用户添加到SQL

用户 nt authority eork service 登录失败

> sqlserver 调成sql server 和windows验证模式

>

(以下方法仅供参考)

第一步 把 NT AUTHORITYNEORK SERVICE 添加到Administrator组中

我的电脑 >右键 >管理 >本地用户和组

选择 组 >双击Administrators >单击 添加 >单击 高级 >单击 立即查找 >在下面的列表中选择Neork Service用户 >两次单击 确定 >加入

第二步 在企业管理器中加入NetWord Service用户

打开Sql Server企业管理器 >选择数据库实例 >打开 安全性 节点 >选择 登录 >在右边的列表中单击右键 >选择 新建登录 >在 常规 选项卡中单击 名称 旁边的按钮 >选择 Administrators 组 >单击下面的 成员 按钮 >选择 Neork Service >单击 添加 按钮 >单击 确定 返回 新建登录 对话框 >保证身份验证类型为 windows验证 和 允许访问 >单击 确定 >关闭 企业管理器

第三步

重新运行程序 数据库连接字符串选择windows验证即可

> 在sqlserver中添加帐户或IIS_WPG工作组

此方法来自于

未能加载视图状态 正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配 例如 当以动态方式添加控件时 在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配

原因 viewstate的在作用是将控件的状态保存 在下次Post给服务器 服务器进行恢复控件的状态 (控件的状态包括 值和事件 )

解决方法

( )每一个UserControl的viewstate都改为false

( )加入这个

this Page EnableViewState = false;

此方法来源于 _astar/archive/ / / /l

由于启动用户实例的进程时出错 导致无法生成 SQL Server 的用户实例 该连接将关闭

问题原因

这是微软的bug 并且微软已经承认 详情如下

出现此错误的条件是 你用过远程桌面连接 并且安装了SQL +VS 就有很大可能触发这个问题 微软说会在将来的XP SP 里面解决掉这个问题

解决

ID= &SiteID=

如果你看不懂英文 那么我告诉你我的解决办法

删除C:Documents and Settings[USERNAME]Local SettingsApplication DataMicrosoftMicrosoft SQL Server DataSQLEXPRESS目录即可 [USERNAME]是Windows用户名 比如说Administrator

此问题来于

Server Application Unavailable

The web application you are attempting to access on this web server is currently unavailable Please hit the Refresh button in your web browser to retry your request

Administrator Note: An error message detailing the cause of this specific request failure can be found in the application event log of the web server Please review this log entry to discover what caused this error to occur

解决

如果你运行WinXP/IIS 为了给ASPNET工作进程访问你的web工程文件夹的权力请到网站文件所在的目录 右键一级文件夹 选Security-Add-键入 ASPNET 点击OK或点击Check Names 如果弹出对话框提示 Name not Found 则应点击Locations改变位置到本机计算机名 点击OK 分配此用户权限为 Full Control 点击OK

错误变为

You are not authorized to view this page

You do not have permission to view this directory or page using the credentials you supplied

解决

在IIS里右键此虚拟目录-Properties-Directory Security-Edit 勾选上Integrated Windows authentication即可

超时时间已到 超时时间已到 但是尚未从池中获取连接 出现这种情况可能是因为所有池连接均在使用 并且达到了最大池大小

可能原因如下 并发操作 Connection用后没有关闭 或者因为DataReader连接独占连接

解决方法

修改几个关键页面或访问比较频繁的数据库访问操作 使用DataAdapter和DataSet来获取数据库数据 不要使用DataReader

在访问数据库的页面上使用数据缓存 如果页面的数据不是经常更新(几分钟更新一次)的话 使用Cache对象可以不用访问数据库而使用缓存中的内容 那么可以大大减少连接数量

修改代码 把使用Connection对象的地方都在Close()后面加上Dispose()调用

建议对数据库操作进行大的修改 建立自己的数据库操作代理类 继承System IDisposable接口 强迫释放资源 这样就不会出现连接数量不够的问题了

包加载失败

未能正确加载包 Visual Web Developer Trident Designer Package (GUID =

{ AE E C D E F A AEFF } 请与包供应商联系以获得帮助 由于可能会发生环境损坏 建议重新启动应用程序 要禁止将来将来加载此包吗?可以使用 devenv reswetskippkgs 重新启用包加载

每次开机打开vs 都会有这个提示 烦

于是在google了一下 发现很多方法都试过了 只有一个解决一试就行

解决方法如下:

设置系统变量 VsLogActivity=

在%APPDATA%MicrosoftVisualStudio 文件夹下创建文件ActivityLog xml

从 WINNTMicroSoft NETFrameworkv xxx 复制文件gdiplus dll 到 Program FilesVisual Studio Common Packages文件夹下

在命令行下运行命令 devenv /resetskippkgs

注:发现此问题只有在win 会出现 win 就不会出现这个问题

用户 xxxASPNET登录失败

第一步

把 NT AUTHORITY NetWORK SERVICE 添加到Administrator组中

我的电脑 >右键 >管理 >本地用户和组

选择 组 >双击Administrators >单击 添加 >单击 高级 >单击 立即查找 >在下面的列表中选 Neork Service用户 >两次单击 确定 >加入

第二步 在企业管理器中加 Neork Service用户

打开Sql Server企业管理器 >选择数据库实例 >打开 安全性 节点 >选择 登录 >在右边的列表中单击右键 >选择 新建登录 >在 常规 选项卡中单击 名称 旁边的按钮 >选择 Administrators 组 >单击下面的 成员 按钮 >选择 Neork Service >单击 添加 按钮 >单击 确定 返回 新建登录 对话框 >保证身份验证类型为 windows验证 和 允许访问 >单击 确定 >关闭 企业管理器

第三步

重新运行asp Net程序 数据库连接字符串选择windows验证即可

以上针对win 如果是win 加ASp Net用户

无法在 已存在的情况下创建/影像复制该文件

解决方法 重新编译整个项目 或者重启电脑

Could not create an environment: OCIEnvCreate returned

解决方案一

主要是将oracle主目录oracle的读写权限赋予或者是IUSER_ 和IWAM_ 重启计算机

解决二:

打开在IIS中的WEB属性--主目录--执行权限【改为-脚本和可执行文件】

-应用程序池【改为-MSSharePointAppPool】 刷新OK

解决三:

文件夹权限可以不用管

设置ORACLE_HOME变量的方法如下

控制面板>>系统>>高级>>环境变量>>系统变量>>新建系统变量

变量名写ORACLE_HOME

变量值添实际的ORACLE_HOME路径 在注册表中有

由于目标机器积极拒绝 无法连接

在添加完引用后 用localhost替换掉所有的localhost: 重新编译

能加载视图状态 正在向其中加载视图状态的控件树必须与前一请求期间用于保存视图状态的控件树相匹配 例如 当以动态方式添加控件时 在回发期间添加的控件必须与在初始请求期间添加的控件的类型和位置相匹配

解决 在页面的 Page 项添加 EnableViewState= false 即可

在以下方法或属性之间的调用不明确 method 和 method

因隐式转换的缘故 编译器无法调用重载方法的某种形式 可以用以下方法纠正该错误

以不发生隐式转换的方式指定此方法的参数

移除此方法的所有重载

在调用方法之前 强制转换到正确的类型

在应用程序级别以外使用注册为 allowDefinition= MachineToApplication

解决 在网站对应的虚拟目录上右键 选属性 然后在应用程序名后点创建 名字随便填

[子目录不会继承上级的属性 所以要将aspx文件所在的目录属性设置正确]

无法识别的配置节 connectionStrings

原因

用vs 开发的应用程序需要使 framework 而在iis中的默环境是 这时将发生不可识别的节点的问题

解决办法

环境升级为 开始-》运行-》cmd-》

C:WINDOWSMicrosoft NETFrameworkv aspnet_regiis exe i

Timeout expired The timeout period elapsed prior to obtaining a connection from the pool This may have occurred because all pooled connections were in use and max pool size was reached

Description: An unhandled exception occurred ring the execution of the current web request Please review the stack trace for more information about the error and where it originated in the code

Exception Details: System InvalidOperationException: Timeout expired The timeout period elapsed prior to obtaining a connection from the pool This may have occurred because all pooled connections were in use and max pool size was reached

主要原因可能有

使用了连接池 大量的sqlconnection用了后忘记关闸门 导致SQL占用严重 可以用 exec sp_who 这个存储过程查看一下

连接池的连接数有所限制

解决方法:

释放连接池 调用Connection对象的Close()方法关闭数据库连接

利用try catch finally对数据库连接进行异常处理 当无法连接数据库时将抛出异常 并显示出错信息 见catch代码块所示 在此程序中 无论是否发生异常 都可以通过finally区块关闭数据库的连接 从而节省计算机资源

将SqlConnection对象包含到using区块中 这样程序会自动调用Dispose()方法释放SqlConnection对象所占用的系统资源 无需再使用SqlConnection对象的Close()方法

指定min pool size表示连接池允许的最小连接数(默认为 ) 下面的代码指定了SqlConnection对象的max pool size为 min pool size为

lishixin/Article/program/net/201311/11175

2. 求一个sql存储过程分页。支持多表联合查询,模糊查询!

可以加个游标 使用更方便

@PageCount bigint output,--总页数
@Pages bigint output --当前页
as
if @Pages<=0 --判断页数
set @Pages=1
declare @指针定位 bigint
set @指针定位=9*(@Pages-1)--这个是每页10条

declare @hid bigint,--获取定位Id 主要是用自增值判断的
@余数 bigint--存余数 这个余数是 记录数/10 余下的数

select @PageCount=count(*) from [表] where [Id] = @Id
set @余数=@PageCount%10 --这里的@PageCount 是记录总数
if @余数>0
set @PageCount=@PageCount/10+1 --这里的@PageCount是总页数
else
set @PageCount=@PageCount/5 --这里的@PageCount是总页数
if @Pages>@PageCount --@Pages是当前页
set @Pages=@PageCount

declare mycur scroll cursor for
select [Id] from [表] where [Id] = @Id
open mycur
fetch absolute @指针定位 from mycur into @hid --@hid获取定位Id
if @hid is null
set @hid=0

SELECT TOP 10 * --这里的10 是指 页数大小
FROM 表
WHERE (Id NOT IN --------在where后面 可以加条件 如where [列1]=2 and (Id NOT IN-----
(SELECT TOP (@hid) Id
FROM 表
ORDER BY Id))
ORDER BY Id
--上面的是我根据下面的 自己改的 我也不确定速度快否 也请高手看看 不过挺好用--

SELECT TOP 页大小 *
FROM TestTable
WHERE (ID NOT IN
(SELECT TOP (页大小*(页数-1)) id
FROM 表
ORDER BY id))
ORDER BY ID
这是我自己整理的 你仔细看看 很好用的

3. 动软代码生成器的功能说明

一键自动生成各种代码,可以节省大量的时间来做业务逻辑的代码,那些重复的代码就交给它去做吧,1分钟生成一个架构所有的基本代码。有了它开发项目的效率简直轻松多了。
自动生成三层架构的完整项目和代码:简单三层结构;基于工厂模式三层架构;自定义结构模版
自动生成ASPNET页面和cs后台代码
自动生成父子表的(事务)的代码
可以自定义代码生成的页面模板,批量生成项目代码。 可以自定义手工选择生成的字段。
可以自由设定命名空间和实体类名。
自动生成方法属性注释。
支持对表和视图的代码生成。
支持对多种类型数据库生成代码:如SQLServer2000/2008、Oracle、MySQL、OleDb等。
可以生成多种不同类型数据层代码,例如: 基于SQL字符串方式,基于Parameter方式和基于存储过程方式的数据层。 支持SQL Server2005/2008、Oracle、MySQL、OleDb四种类型的数据库同时管理。
实现类似SQLServer2008的查询分析器的功能,方便平常在代码编辑的时候想查看数据库的信息,并且可以很直观的查看字段类型,长度,主键,默认值等详细信息,省去了在代码和数据库管理器之间的来回切换,方便快捷。
同时支持表的重命名,删除,数据浏览等常用操作。 实现类似SQLServer2008的查询分析器的功能,方便编写代码时想进行数据查询。
实现执行选中部分SQL语句。
实现关键字高亮。
支持F5快捷键执行语句。
实现打开现有脚本,保存当前脚本功能。
实现错误检测提示功能。 免费提供数据访问类库组件,页面数据校验等等通用函数类库源码。 你也可以自己进行类库完善封装与全球用户分享.

4. 代码中使用aspnet_User表需要用到什么引用

1.先做成实体类。即model层。字段封装好之后。在DAL里面导入命名空间就可以用。

2.如果你问的不是这个问题,那么应该指的是VS直接连接数据库,然后代码里面引用表结构。

这个就需要用到LINQ了。VS2008集成的有LINQ。

如果你是VS2008,那么就很简单了。

首先,用VS连接数据库,(服务器资源管理器--右键数据库连接---添加连接--MicrosoftSqlServer--后面的呢自己输了。。。)

连接好之后。

1.右键你解决方案下面的网站,然后选择“添加新项”,在打开的对话框中找到“LINQtoSQL类”添加进来。

2.他会提示你添加到APP_Code文件夹下面,这些都不用管。你只管到左边你已经添加好的数据库中找到你想要添加的表。

3.打开你添加的“LINQ”名字你一般不要修改,叫“DataClasses.dbml”,双击打开,把选好的表拖进去。这样引用表就完成了,下面是让他自动生成方法。

4.把你想要对表的操作写成存储过程,然后把存储过程直接拖到右侧,我下面给你的例子左边有3张拖进去的表,右边有3个拖进去的存储过程。拖好之后,记住保存。

5.最后,你会发现“DataClasses.dbml”下面有一个类:“DataClasses.designer.cs”这个里面就是他根据你的表还有存储过程生成的代码,类似DAL层,但是他里面还有你的表的实体,字段的封装,方法统统都有,属于是3层的融合,它里面有自己的一些独特属性,你可以研究研究。

6.等所有操作完成之后,你在类里面引入命名空间,然后就调用方法就可以了。。真的很方便,下面我给你贴一张图,你看看。然后底下是自动生成的代码其中的一小段,因为我用了3长表,代码太多,只贴一段代码给你看。

#pragmawarningdisable1591

//------------------------------------------------------------------------------

//<auto-generated>

//此代码由工具生成。

//运行库版本:2.0.50727.3603

//

//对此文件的更改可能会导致不正确的行为,并且如果

//重新生成代码,这些更改将会丢失。

//</auto-generated>

//------------------------------------------------------------------------------

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Data.Linq;

usingSystem.Data.Linq.Mapping;

usingSystem.Linq;

usingSystem.Linq.Expressions;

usingSystem.Reflection;

[System.Data.Linq.Mapping.DatabaseAttribute(Name="PropertyHome")]

:System.Data.Linq.DataContext

{

privatestaticSystem.Data.Linq.Mapping.MappingSourcemappingSource=newAttributeMappingSource();

#

partialvoidOnCreated();

partialvoidInsertT_PH_UserEstinfo(T_PH_UserEstinfoinstance);

partialvoidUpdateT_PH_UserEstinfo(T_PH_UserEstinfoinstance);

partialvoidDeleteT_PH_UserEstinfo(T_PH_UserEstinfoinstance);

#endregion

publicDataClassesDataContext():

base(global::System.Configuration.ConfigurationManager.ConnectionStrings["PropertyHomeConnectionString"].ConnectionString,mappingSource)

{

OnCreated();

}

publicDataClassesDataContext(stringconnection):

base(connection,mappingSource)

{

OnCreated();

}

publicDataClassesDataContext(System.Data.IDbConnectionconnection):

base(connection,mappingSource)

{

OnCreated();

}

publicDataClassesDataContext(stringconnection,System.Data.Linq.Mapping.MappingSourcemappingSource):

base(connection,mappingSource)

{

OnCreated();

}

publicDataClassesDataContext(System.Data.IDbConnectionconnection,System.Data.Linq.Mapping.MappingSourcemappingSource):

base(connection,mappingSource)

{

OnCreated();

}

publicSystem.Data.Linq.Table<agent_score>agent_score

{

get

{

returnthis.GetTable<agent_score>();

}

}

publicSystem.Data.Linq.Table<estinfo>estinfo

{

get

{

returnthis.GetTable<estinfo>();

}

}

publicSystem.Data.Linq.Table<T_PH_UserEstinfo>T_PH_UserEstinfo

{

get

{

returnthis.GetTable<T_PH_UserEstinfo>();

}

}

[Function(Name="dbo.PA_GetEstByCode")]

publicISingleResult<PA_GetEstByCodeResult>PA_GetEstByCode([Parameter(DbType="VarChar(50)")]stringestCode,[Parameter(Name="Type",DbType="Int")]System.Nullable<int>type)

{

IExecuteResultresult=this.ExecuteMethodCall(this,((MethodInfo)(MethodInfo.GetCurrentMethod())),estCode,type);

return((ISingleResult<PA_GetEstByCodeResult>)(result.ReturnValue));

}

[Function(Name="dbo.PA_GetPlate")]

publicISingleResult<PA_GetPlateResult>PA_GetPlate([Parameter(DbType="Int")]System.Nullable<int>op_no,[Parameter(DbType="Int")]System.Nullable<int>page,[Parameter(DbType="Int")]System.Nullable<int>rows,[Parameter(DbType="VarChar(50)")]stringuserid,[Parameter(DbType="VarChar(50)")]stringestName)

{

IExecuteResultresult=this.ExecuteMethodCall(this,((MethodInfo)(MethodInfo.GetCurrentMethod())),op_no,page,rows,userid,estName);

return((ISingleResult<PA_GetPlateResult>)(result.ReturnValue));

}

[Function(Name="dbo.PA_GetEstInfoByName")]

publicISingleResult<PA_GetEstInfoByNameResult>PA_GetEstInfoByName([Parameter(DbType="VarChar(50)")]stringestName,[Parameter(DbType="VarChar(50)")]stringstfID,[Parameter(DbType="Int")]System.Nullable<int>page,[Parameter(DbType="Int")]System.Nullable<int>rows,[Parameter(Name="Type",DbType="Int")]System.Nullable<int>type)

{

IExecuteResultresult=this.ExecuteMethodCall(this,((MethodInfo)(MethodInfo.GetCurrentMethod())),estName,stfID,page,rows,type);

return((ISingleResult<PA_GetEstInfoByNameResult>)(result.ReturnValue));

}

}

[Table(Name="dbo.agent_score")]

publicpartialclassagent_score

{

privatestring_AgentNo;

privatestring_AgentCName;

privatestring_AgentName;

privatestring_AgentMobile;

privatestring_AgentEmail;

privatestring_AgentLicense;

privatestring_BranchCName;

privateSystem.Nullable<int>_post_counter;

privatestring_agentphoto;

privatestring_Agentpage;

privatestring_enquirypage;

privatestring_scpid;

privatestring_scpMkt;

privatestring_scp_c;

privateSystem.Nullable<double>_agentscore;

privateSystem.Nullable<double>_agentscore1;

privateSystem.Nullable<double>_agentscore2;

privateSystem.Nullable<double>_agentscore3;

privateSystem.Nullable<double>_agentscore4;

privateSystem.Nullable<double>_agentscore5;

privateSystem.Nullable<double>_agentscore6;

publicagent_score()

{

}

[Column(Storage="_AgentNo",DbType="NVarChar(10)NOTNULL",CanBeNull=false)]

publicstringAgentNo

{

get

{

returnthis._AgentNo;

}

set

{

if((this._AgentNo!=value))

{

this._AgentNo=value;

}

}

}

[Column(Storage="_AgentCName",DbType="NVarChar(50)")]

publicstringAgentCName

{

get

{

returnthis._AgentCName;

}

set

{

if((this._AgentCName!=value))

{

this._AgentCName=value;

}

}

}

。。。其它的操作看你自己咯~~~

谢谢,望采纳,我很辛苦啊,,,呵呵。。

5. 如何进行C#连接Access数据库的细节操作

许多学者总会面对于数据库的知识,以下的例子讲述到Access数据库说明,用C#的DataSet类访问数据库的一些操作方法。


操作涉及的主要C#类有:
DataSet:对应数据库表的一个集合,实际上是数据库表在内存中的一个缓存
DataTable:对应数据库表,是数据库表行的集合
DataRow:对应数据库表行
OleDbConnection:建立数据库连接
OleDbDataAdapter:由数据库生成DataSet,并负责DataSet与数据库的同步
OleDbCommandBuilder:生成更新数据库所需的指令www.kmxxfk.com

DataSet、DataTable、DataRow用于数据在缓存中的操作,这上面的操作只有更新到数据库中,修改结果才会被永久保存。OleDbConnection 是用OLEDB方法连接数据库所必需的。OleDbDataAdapter和OleDbCommandBuilder用来生成DataSet,完成数据库更新。与OleDbDataAdapter和OleDbCommandBuilder相对应,SqlDataAdapter和SqlCommandBuilder也可以完成用SQL语言为指令的数据库更新。

假设在D:盘创建了Access数据库,其路径为d:\0DBAcs\account.mdb,数据库中有一张名为kai的数据库表。表结构如下:
表名;Kai
字段Field Name类型说明
1开支IDkzID长整型自动编号
2开支人Kzren文本50字符
3开支项目名kzname文本50字符
4日期riqi日期/时间99-99-99;0掩码
5开支说明shuoming文本225字符
6总金额zonge单精度小数点任意;这项开支的总花费
7数量shuliang长整型www.kmxxfc.com
8单价Danjia单精度小数点任意

表建好之后:(1)对表中添加新数据(2)查询表中的某个字段。为了实现这两项功能,以下几个问题要考虑:
1准备工作
声明必须的公共变量
建立与数据库的连接,创建DataSet对象
2添加记录
在DataSet对象上添加记录
同步DataSet对象对象与数据库中的数据,这一点很重要,很多人忘记了数据进行同步,结果往往是添加、修改的数据不能保存到数据库中。
3查询数据库表中某记录的某字段;

我们可以将上述功能用一个类DataOper实现,下面是程序设计的主要活动。
声明要用的C#系统类
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;

声明DataOper类中的公共变量
private string DBlocation;
private OleDbConnection dbconn; //数据库连接
private OleDbDataAdapter da;

建立与数据库的连接,这里采用了OLEDB方法:
dbconn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; Data Source=d:\0DBAcs\account.mdb");
dbconn.Open();

创建DataSet对象
da = new OleDbDataAdapter(@"select * from kai", dbconn); //引用数据库连接dbconn并依据SQL语句"select * from kai"创建OleDbDataAdapter对象da
DataSet ds = new DataSet(); //创建DataSet对象
da.Fill(ds); //用OleDbDataAdapter对象da填充、更新刚创建的DataSet对象

添加记录并更新数据库
OleDbCommandBuilder cb = new OleDbCommandBuilder(da); // 创建OleDbCommandBuilder对象cb用于更新OleDbDataAdapter对象da的Insert、Delete、Update指令
da.UpdateCommand = cb.GetUpdateCommand(); //更新OleDbDataAdapter对象da的指令
设计人员可以编写自己的更新指令,也可以象上面所写的那样用系统默认的指令。但不管怎样,上面的语句不能缺少,否则程序在运行中会抛出异常System.InvalidOperationException,并提示:Update requires a valid InsertCommand when passed DataRow collection with new rows.


DataRow drx = ds.Tables[0].NewRow(); //创建一条新记录行

drx["kzren"] = "kzren";
drx["kzname"]="kzname";
drx["riqi"]=2008-10-11;
drx["shuoming"]="shuoming";
drx["zonge"] = 12;
drx["shuliang"] = 3;
drx["danjia"] = 4;
ds.Tables[0].Rows.Add(drx); //在表中追加记录
da.Update(ds); //更新数据库

要查询引用某记录的某字段,直接按如下的方法引用就可以了。
String kx=ds.Tables[0].Rows[0]["kzren"].ToString()连接access
首先看一个例子代码片断:
程序代码:www.lzfsk.com/
--------------------------------------------------------------------------------
using system.data;
using system.data.oledb;
......
string strconnection="provider=microsoft.jet.oledb.4.0;";
strconnection+=@"data source=c:\begas.Net\northwind.mdb";
oledbconnection objconnection=new oledbconnection(strconnection);
......
objconnection.open();
objconnection.close();
......
--------------------------------------------------------------------------------
解释:
连接access数据库需要导入额外的命名空间,所以有了最前面的两条using命令,这是必不可少的!
strconnection这个变量里存放的是连接数据库所需要的连接字符串,他指定了要使用的数据提供者和要使用的数据源.
"provider=microsoft.jet.oledb.4.0;"是指数据提供者,这里使用的是microsoft jet引擎,也就是access中的数据引擎,ASP.net就是靠这个和access的数据库连接的.
"data source=c:\begaspnet\northwind.mdb"是指明数据源的位置,他的标准形式是"data source=mydrive:mypath\myfile.mdb".
ps:
1."+="后面的"@"符号是防止将后面字符串中的"\"解析为转义字符.
2.如果要连接的数据库文件和当前文件在同一个目录下,还可以使用如下的方法连接:
strconnection+="data source=";
strconnection+=mappath("northwind.mdb");
这样就可以省得你写一大堆东西了!
3.要注意连接字符串中的参数之间要用分号来分隔.
"oledbconnection objconnection=new oledbconnection(strconnection);"这一句是利用定义好的连接字符串来建立了一个链接对象,以后对数据库的操作我们都要和这个对象打交道.
"objconnection.open();"这用来打开连接.至此,与access数据库的连接完成.其余操作(插入,删除...)请参阅相关书籍
连接SQL Server
例子代码片断:
程序代码:

--------------------------------------------------------------------------------
using system.data;
using system.data.sqlclient;
...
string strconnection="user id=sa;passWord=;";
strconnection+="initial catalog=northwind;server=yoursqlserver;";
strconnection+="connect timeout=30";
sqlconnection objconnection=new sqlconnection(strconnection);
...
objconnection.open();
objconnection.close();
...
--------------------------------------------------------------------------------
解释:
连接sql server数据库的机制与连接access的机制没有什么太大的区别,只是改变了connection对象和连接字符串中的不同参数.
首先,连接sql server使用的命名空间不是"system.data.oledb",而是"system.data.sqlclient".
其次就是他的连接字符串了,我们一个一个参数来介绍(注意:参数间用分号分隔):
"user id=sa":连接数据库的验证用户名为sa.他还有一个别名"uid",所以这句我们还可以写成"uid=sa".
"password=":连接数据库的验证密码为空.他的别名为"pwd",所以我们可以写为"pwd=".
这里注意,你的sql server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录.如果你的sql server设置为Windows登录,那么在这里就不需要使用"user id"和"password"这样的方式来登录,而需要使用"trusted_connection=sspi"来进行登录.
"initial catalog=northwind":使用的数据源为"northwind"这个数据库.他的别名为"database",本句可以写成"database=northwind".
"server=yoursqlserver":使用名为"yoursqlserver"的服务器.他的别名为"data source","address","addr".如果使用的是本地数据库且定义了实例名,则可以写为"server=(local)\实例名";如果是远程服务器,则将"(local)"替换为远程服务器的名称或ip地址.
"connect timeout=30":连接超时时间为30秒.
在这里,建立连接对象用的构造函数为:sqlconnection.
其余的就和access没有什么区别了!
********************************************************************************************************************
用c#访问access数据库


我编写这个程序的动机是当我希望用c sharp访问msaccess数据库的时候我没有办法获得任何信息和参考材料.网上所能获得的所有材料都是偏重于sql的,所以我们将分两步来编写这个应用程序,第一我们将展示如何连接到msaccess数据库然后看看它有多复杂.最后,我们就这样完成了这个程序.

闲言少序,让我们开始正题.连接到数据库的过程与我们早先的ado连接过程相比已经发生了较大的变化.下面的图表恰当的(我希望如此)oledbconnection--> oledbcommand --> oledbdatareader.现在那些熟悉ado的人很明显能看出两者的相似之处但是为了使那些还没有很好的适应ado的人能够明白,下面是一些解释.

oledbconnection -->代表对数据库的单一连接,根据底层数据库的功能它能给你操纵数据库的能力.有一点必须记住,虽然oledbconnection对象出了作用范围,它也不会自动被关闭.所以,你将不得不显示的调用这个对象的close()方法.

oledbcommand -->这是就象我们在ado中使用的一样的通常的command对象.你可以通过这个对象调用sql存储过程或是sql查询语句.

oledbdatareader -->这个类拥有非常大的重要性因为它提供了实际上的对数据库底层数据集的访问.当你调用oledbcommand的executereader方法的时候它就会被创建,.net beta2 sdk说不要直接创建这个类的对象.

现在你可以在.net beta 2的文档中看到更多的关于这些主要对象的说明,下面是指出如何在程序中访问数据库的源代码.

using system;
using system.data.oledb;

class oledbtest{

public static void main()
{
/创建数据库连接
oledbconnection aconnection = new oledbconnection("provider=microsoft.jet.oledb.4.0;data source=c:\\db1.mdb");

/创建command对象并保存sql查询语句
oledbcommand acommand = new oledbcommand("select * from emp_test", aconnection);
try
{
aconnection.open();

/创建datareader 对象来连接到表单
oledbdatareader areader = acommand.executereader();
console.writeline("this is the returned data from emp_test table");

/循环遍历数据库
while(areader.read())
{
console.writeline(areader.getint32(0).tostring());
}

/关闭reader对象
areader.close();

/关闭连接,这很重要
aconnection.close();
}

/一些通常的异常处理
catch(oledbexception e)
{
console.writeline("error: {0}", e.errors[0].message);
}
}
}

成功运行这个程序的步骤
1.用msaccess创建一个名叫db1.mdb的数据库
2.创建一个名叫emp_test的表单
3.使它包含下列数据域
emp_code int
emp_name text
emp_ext text
4.将上面的代码保存到sample.cs文件中
5.确保数据库位于c:\并确保mdac2.6或是更新的版本已经被安装
6.编译运行

现在让我们来了解一些我们在oledbconnection对象的构造函数看到的东西的一些细节,在这里你看见诸如"provider="之类的东西.下面是一些和ado.net兼容的驱动程序类型.
sqlolddb --> microsoft ole db provider for sql server,
msra --> microsoft ole db provider forOracle,
microsoft.jet.oledb.4.0 --> ole db provider for microsoft jet
你可以选择其中的任何一个但是他们会需要传递不同的参数,例如jet.oledb.需要传递mdb文件的名字而sqloledb需要传递用户名和密码.

所有这些驱动程序都位于system.data.oledb命名空间里,所以你必须包括它,而且它们和oledb provider for odbc不兼容,也就是说你不能在VB6.0程序里使用这些驱动程序来访问数据库,所以不要去寻找解释为什么要把这些数据库放在c:\上的资料了

当你使用microsoft sql server 7.0 或者更新版本的时候,下面是微软给出的一些指导:
推荐使用.net data provider在下列情况中,使用microsoft sql server 7.0 或者更新版本的中间层应用程序,使用microsoft data engine (msde)或icrosoft sql server 7.0 或者更新版本的单层应用程序.
建议将ole db provider for sql server (sqloledb)和ole db .net data provider一起使用.
对于microsoft sql server 6.5和更早的版本,你必须同时使用ole db provider for sql server 和 ole db.net data provider.
推荐使用microsoft sql server 6.5和更早的版本或是oracle的中间层应用程序使用ole db .net data provider.
对于microsoft sql server 7.0 或者更新版本,推荐sql server .net data provider.
推荐单层应用程序使用microsoft access数据库.
不推荐一个中间层程序同时使用ole db .net data provider和microsoft access数据库.
不再支持ole db provider for odbc (msdasql)

6. ASPNET怎样调用一个存储过程(带参数的)

ASPNET怎样调用一个存储过程(带参数的)使用的是Ado.NET中的相关的数据库操作方法。
Ado.NET连接数据库有以下几个步骤:
1:使用配置的数据库连接串,创建数据库连接 Connection 对象
2:构建操作的sql语句
3:定义command对象
4:打开数据连接
5:执行命令
举一个例子,删除操作
public int DeleteStudent3(int stuID)
{

int result = 0;

using (SqlConnection connection = new SqlConnection(connString))
{
SqlCommand objCommand = new SqlCommand(dboOwner + ".usp_DeleteStudent", connection);
objCommand.CommandType = CommandType.StoredProcere;

objCommand.Parameters.Add("@stuID", SqlDbType.Int).Value = stuID;

connection.Open();
result = objCommand.ExecuteNonQuery();
}
return result;
}

7. 求.net面试题

下面有关用户控件与aspx页面区别说法错误的是(B)
aa// 用户控件不能再包含<HTML><BODY><FORM>标记,而aspx页面可以包含
bb// 用户控件不能触发服务器端的事件,只是一种外观重用方式,而aspx页面可以
cc// 用户控件继承自System.Web.UI.UserControl,而aspx页面继承自System.Web.UI.Page
dd// 用户控件可以包含其它用户控件,但是不能直接访问,必须包含在某个aspx页面中才可以访问,而aspx页面是可以直接访问的

想在在aspx页面使用用户控件,则aspx页面开始部分必须添加下面哪个页面指令A
aa// <%@ Page %>
bb// <%@ Master %>
cc// <%@ Control %>
dd// <%@ Register %>

根据你的理解,你认为第三控件与用户控件的主要区别是A
aa// 第三方控件是编译后的代码,后缀为dll,只要应用程序引用进来,就可以使用,而用户控件是页面文件,属于非编译代码,只限于在当前应用程序中使用
bb// 用户控件比第三方控件更灵活,可以在应用程序中多个地方使用
cc// 用户控件出现在工具箱中,而第三方控件不会出现在工具箱中
dd// 用户控件比第三方控件的执行效率要高一些

下面关于HttpHandler与HttpMole说法正确的是C
aa// 一个Http请求中可以经历多个HttpMole和一个HttpHandler
bb// 一个Http请求中可以经历多个HttpHandler和一个HttpMole
cc// HttpMole是一个Http请求的最终处理者
dd// HttpHandler通常做一些停止数据向客户端输出的操作

在aSPNET中,关于HttpHandler说法不正确的是:(D)
aa// 通常文件后缀名为ashx
bb// 它是一个Http请求处理的最终点
cc// 它实现了IHttpHandler
dd// 当它的IsReusable属性为false时,表示只能使用一次

下面哪个选项不能在web.config文件中配置的(C)
aa// 连接字符串
bb// 身份验证
cc// 网站导航
dd// 程序出现错误时,定向到的错误提示页面

aSPNET支持三种验证方式,不属于其中的是(B)
aa// passport
bb// SqlServer身份
cc// Windows
dd// Forms

在网站某个目录的web.config配置文件中,有一段关于该目录授权的代码,经过分析,你认为正确的答案是:B
<authentication>
<deny user="?" /> 拒绝所有匿名用户
<allow users="xiaozhang" /> 容许xiazhang
<deny roles="*"> 拒绝所有用户
</authentication>
aa// 所有用户都可以访问该网站目录,除xiaozhang以外
bb// 所有用户都不能访问该网站目录,除xiaozhang以外
cc// 匿名用户和xiaozhang都不能访问该网站目录
dd// 所有角色和用户都不能访问该网站目录

已知在网站的根目录下有一个web.config文件,有如下关于验证的代码,正确说法的是B
<authorization mode="Forms">
<forms name="userLogin" loginUrl="~/login.aspx" timeout="20">
</forms>
</authorization>
aa// loginUrl的作用是,当用户登录不成功时,转向login.aspx页面
bb// loginUrl的作用是,当用户进入网站如果未登录,就转向login.aspx页面
cc// timeout是超过20分钟不登录,就退出网站
dd// timeout的作用是当20分钟后,用户还没有登录,就转向login.aspx页面

下列关于部署的说法,正确的是(a d)
aa// 部署就是将站点文件复制到相关web目录中
bb// 应该在本地站点将内容处理好,比如数据库连接字符串设置好并加密,然后直接复制到站点到远程服务器相关目录即可
cc// 发布预编译站点,如果将来需要更新某个页面,最好不要选择使用”使用固定命名和单页程序集”
dd// 发布预编译站点就是将站点所有文件都编译到dll中

下面(C)不属于导航控件
aa// Menu
bb// SiteMapPath
cc// View
dd// SiteMapDataSource

在asp.net中的母版中的内容页中能包含的HTML元素是(D)
aa// <html>
bb// <head>
cc// <body>
dd// <script>

如果希望使用TreeView控件显示时默认全部展开应设置(D)属性
aa// ExpandDepth
bb// ExpandImageToolTip
cc// ExpandImageUrl
dd// Expand

在SiteMapPath控件中,要设置导航路径中分隔符应设置(B)属性
aa// PathDirection
bb// PathSeparator
cc// PathSeparatorStyle
dd// Provider

下列关于ContentPlaceHolder控件说法错误的是(C)ContentPlaceHolderMain
aa// ContentPlaceHolder 控件为母版页中的内容定义一个相对区域
bb// 母版页还包括一个或多个 ContentPlaceHolder 控件
cc// ContentPlaceHolder 控件必须包含在内容页中
dd// Content 控件使用其 ContentPlaceHolderID 属性与 ContentPlaceHolder 关联.

下列(c)模板不属于Repeater控件
aa// ItemTemplate
bb// alternatingItemTemplate
cc// SelectedItemTamplate
dd// SeparatorTemplate

设置(a)属性将会页面显示DataList控件时调用EditItemTemplate模板
aa// EditItemIndex
bb// EditIndex
cc// SelectedItemIndex
dd// ModifyItemIndex

如果在DataList中实现分页一般(AB)(选择二项)
aa// 使用Sql语句
bb// 使用PagedDataSource对象进行分页
cc// 设置CurrentPageIndex属性
dd// 设置DataList的PageIndex属性

DataList中的交替行模板是(B)
aa// ItemTemplate
bb// alternatingItemTemplate
cc// SelectedItemTamplate
dd// SeparatorTemplate

下面关于DataList说法错误的是(C)
aa// DataList没有内置分页功能
bb// DataList具有SelectedItemTamplate模板
cc// DataList不能使用ObjectDataSource控件进行绑定数据 可以使用ObjectDataSource控件进行绑定数据
dd// DataList比Repeater控件多了二个模板 DataList有编辑模板和选择模板

在一个aSPX页面的Page_Load事件中,编写了如下代码,则执行该页面后,将在页面中输出(a)。(选择一项)
private void Page_Load(object sender , System.Eventargs e){
Response . Write(“欢迎光临”);
Response . End();
Response . Write(“欢迎下次光临”);
}
aa// 欢迎光临
bb// 欢迎下次光临
cc// 欢迎光临
欢迎下次光临
dd// 欢迎光临欢迎下次光临

在aSP.NET中,application是(C)类的实例
aa// Httpapplication
bb// HttpapplicationUtility
cc// HttpapplicationState
dd// Page

在aSP.NET中,下列关于session对象的说法正确的是(D)。(选择一项)
aa// 用户每次打开一个web页面,将会创建一个session对象
bb// 用户关闭客户端web页面后,session对象将立即消失
cc// 应用程序退出后,session对象的值才能消失
dd// 每个用户的Session对象不能被其他用户访问

在aSP.NET中,为了将当前页面跳转到一个相同目录下名为Main.htm的页面,下面方法正确的是(C)。(选择一项)
aa// Server.Execute(“Main.htm”);
bb// Servlet.Transfer(“Main.htm”);
cc// Response.Redirect(“Main.htm”);
dd// Response.Write(“Main.htm”);

某个用aSP。NET技术开发的网站拥有大量的访问量,最近该网经常因为服务器内存占用率过高而宕机,作为该网站技术员的你仔细检查了该网站的系统,发现内存占有率过高是因为每个用户都有大量数据保存在Session中,为了解决该问题你应该进行(C)处理。(选择一项)
aa// 将保存在Session中的数据保存在application中
bb// 将保存在Session中的数据保存在Cookie中
cc// 将Session中对安全性要求不高的数据保存在Cookie中,不经常使用的数据保存在数据库中
dd// 将Session中对安全性要求不高的数据保存在application中,不经常使用的数据保存在Cookie中

对于第三方在线文本编辑控件FreeTextBox,如果需要获取控件中录入文本的HTML代码,需要访问什么属性(A)(选择一项)
aa// Text
bb// HtmlText
cc// Value
dd// SelectText

有时候编辑过程中会出现如下的错误,如果要避免该错误,需要在Page页面指令上做何设置(D):(选择一项)
aa// EnableEventValidation="true"
bb// EnableEventValidation="false"
cc// ValidateRequest="true"
dd// ValidateRequest="false"

使用验证码生成控件Webvalidates,生成验证码的方法为(C):(选择一项)
aa// Generate()
bb// Initial()
cc// Create()
dd// Next()

CodeSmith中,脚本标签写法正确的是(B):(选择一项)
aa// <script runat=”server”></script>
bb// <script runat=”template”></script> 如果不添加会被视为普通文本
cc// <CodeTemplate runat=”server”></CodeTemplate>
dd// <CodeTemplate runat=”template”></CodeTemplate>

利用CodeSmith生成实体类的代码,对于DbType.Int32,应输出的类型为:(C)(选择一项)
aa// byte
bb// short
cc// int
dd// long

下面那种数据源控件适合于三层结构数据绑定(C)
aa// SqlDataSource
bb// accessDataSoure
cc// ObjectDataSoure
dd// XmlDataSoure

下面对于几种数据源控件说法错误的是(A)
aa// SqlDataSource数据源控件不能用于oracle数据库和access数据库。
bb// ObjectDataSource可以对业务对象或其他返回数据的类执行特定的数据访问。
cc// XmlDataSource可以对XML文档执行特定访问,包括物理访问和内存访问。
dd// SiteMapDataSource可以对站点地图提供程序所存储的Web站点执行特定的站点地图数据访问.

为绑定的行添加脚本事件的方法是什么(D)
aa// ItemDataBound
bb// DataBinding
cc// DataBound
dd// RowDataBound

DropDownList控件的哪个属性可获取当前选择的项(A)
aa// DropDownList.SelectedItem.Value
bb// DropDownList.SelectedItem.Text
cc// DropDownList.SelectedValue
dd// DropDownList.SelectedItem

Gridview控件的基类是(C)
aa// HierarchicalDataBoundControl
bb// ListControl
cc// CompositeDataBoundControl
dd// BaseGridriew

下面关于Eval和Bind的区别,说法不正确的是(B)
aa// Eval()方法是静态(只读)方法
bb// Eval方法没有Bind?方法访问速度快
cc// Bind?方法支持读/写功能,可修改回传服务器。
dd// Bind 方法不能格式化字符串

下面关于FileUpload控件说法不正确的是()
aa// 获取上传文件名的属性是FileUpload.PostedFile.FileName
bb// 获取上传文件大小的属性是FileUpload.PostedFile.ContentLength
cc// 获取上传文件类型的属性是FileUpload.PostedFile.ContentType
dd// 保存上传文件的方法是FileUpload.SevaAs

如果用户信息必须填写电话号码,使用那个验证控件(C)
aa// RequiredFieldValidator
bb// REgularExpression
cc// RequiredFieldValidator和regularExpression;
dd// CompareValidator和RequiredFieldValidator;

现在需要验证Textbox的输入数据为年龄,并且要求大于18,小于65应该使用的控件是(C)
aa// RequiredFieldValidator
bb// REgularExpression
cc// RequiredFieldValidator和RangeValidator
dd// CompareValidator和RequiredFieldValidator

ValidationSummary控件的作用是(B)
aa// 检查总和数
bb// 集中显示所有验证的结果
cc// 判断有无超出范围
dd// 检查数值大小

在VS中,下列说法错误的是: D
aa// 内置了轻量级的Web服务器
bb// 无须配置IIS、设置相应权限
cc// 内置了80多个控件
dd// 代码前置,逻辑分明

运行下列代码,如果当天是星期天,且用户输入“accp”(输入框TextBox的ID是txtName),则将输出(C)
string outPut="";
switch (DateTime.Now.DayOfWeek.ToString())
{
case "Saturday": outPut = "{0},Hi"; break;
case "Sunday": outPut = "{0},Ok"; break;
default: outPut = "{0},Bye"; break;
}
string message = string.Format(outPut,txtName.Text);
Response.Write(message);
aa// Hi
bb// Ok
cc// Bye
dd// 无输出

App_Data目录是用来放置(A)
aa// 专用数据文件
bb// 共享文件
cc// 被保护的文件
dd// 代码文件

VS创建Asp.net网站时自动生成的文件和目录有(BCD) 选择三项
aa// app_resource文件夹
bb// app_Data目录
cc// 扩展名为aspx和cs的文件
dd// Web.Config文件

现有用来做开发的生产机和用来做布署的服务器,关于开发布署发布网站说法正确的是:BC 选择二项
aa// 生产机必须安装IIS
bb// 服务器必须安装IIS
cc// 生产机必须安装Windows Server操作系统
dd// 服务器必须安装Windows Server操作系统

B/S典型应用有:BCD 选择三项
aa// 某酒店的内务管理
bb// 购物网站
cc// 个人博客
dd// 论坛

在开发三层结构的网站时,与数据表对应的实体类应写在(D)层
aa// 表示层
bb// 业务逻辑层
cc// 数据访问层
dd// 模型层

某个论坛上有这样的规定:在线时长不够100小时不能发贴,相关的代码应该写在(B)层
aa// 表示层
bb// 业务逻辑层
cc// 数据访问层
dd// 模型层

对于存储过程的调用,应该出现在(C)层
aa// 表示层
bb// 业务逻辑层
cc// 数据访问层
dd// 模型层

下列说法正确的是(AB) 选择二项
aa// 数据访问层要添加模型层的引用
bb// 业务逻辑层要添加数据访问层的引用
cc// 表示层要添加数据访问层业务逻辑层和模型层的引用
dd// 模型层要添加数据访问层的引用

热点内容
2013年二级c语言真题 发布:2024-10-08 10:44:47 浏览:242
linux的locale 发布:2024-10-08 10:44:36 浏览:91
2rsa算法 发布:2024-10-08 10:29:53 浏览:542
南京社保密码多少 发布:2024-10-08 10:21:01 浏览:472
国内的少儿编程 发布:2024-10-08 10:21:00 浏览:520
vscode编译调试闪退 发布:2024-10-08 10:19:27 浏览:671
oracle数据库用户权限 发布:2024-10-08 09:46:00 浏览:708
立方的算法口诀 发布:2024-10-08 09:44:30 浏览:820
python输入到excel表格 发布:2024-10-08 09:36:31 浏览:285
脚本拒绝访问闪退 发布:2024-10-08 09:34:55 浏览:939