aspnetvb报表 aspnet mvc 报表

怎样用aspnet

asp.net是一种使嵌入网页中的脚本可

公司主营业务:做网站、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联建站是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联建站推出五大连池免费做网站回馈大家。

由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server

Pages(动态服务器页面) ,运行于 IIS(Internet Information Server

服务,是Windows开发的Web服务器)之中的程序 。

ASP .NET开发的首选语言是C#及VB .NET,同时也支持多种语言的开发

如:C#、VB .NET、 F# 、 Powershell 、Java/J#、Python、Ruby、Delphi 、JScript

如何让服务器支持水晶报表

1,

要在服务器安装CRRedist2008_X64.msiCRRedist2008_X64_CHS.msiCRRedist2008_x86.msiCRREdist2008_x86_chs.msi这几个文件,因为我们的服务器是Win2008,所以我选择了CRRedist2008_X64.msiCRRedist2008_X64_CHS.msi这两个文件进行安装。

这个是必须安装的,否则页面会报以下错误:

未能加载文件或程序集“CrystalDecisions.ReportAppServer.CommLayer,Version=10.2.3600.0,Culture=neutral,PublicKeyToken=692fbea5521e1304”或它的某一个依赖项。系统找不到指定的文件。

2,

文件发布的时候,web.config下要有以下几个引用:

add assembly="CrystalDecisions.Data.AdoDotNetInterop, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/

add assembly="CrystalDecisions.CrystalReports.Engine, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/

add assembly="CrystalDecisions.ReportSource, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/

add assembly="CrystalDecisions.Shared, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/

add assembly="CrystalDecisions.VSDesigner, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/

add assembly="CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/

add assembly="CrystalDecisions.Windows.Forms, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/

并且bin目录下必须有这几个引用,如果没有,把这几个文件拷贝进来(在C盘里找就可以);

3,

要把C:\ProgramFiles\CommonFiles\businessobjects\2.7\Managed下所有的文件都copy到服务器网站的bin目录下,这一步也是必要的,否则页面会报以下错误:

注意:这一步我没有在服务器中找到,所以我没有做;

未能加载文件或程序集“CrystalDecisions.Web,Version=10.2.3600.0,Culture=neutral,PublicKeyToken=692fbea5521e1304”或它的某一个依赖项。系统找不到指定的文件。

4,

如果水晶报表工具条无法显示,图片变成一个一个红叉,那我们还需要把本机C:\Inetpub\wwwroot下的aspnet_client目录copy到服务器网站根目录下。

以上功课做完了,按理说水晶报表应该可以正常运行了(

我做到这已经可以了

),但是打开页面又跳出来一个错误:

文件UNKNOWN.RPT内出错:无法将请求提交给后台处理。

在网上搜了一下,应该是因为

“出现这个错误的主要原因是水晶报表引擎没有权限生成报表。查看了一个服务器的权限设置,发现C盘的根目录Users组没有权限,只要把Users组设置为对C盘有写入的权限问题就解决了。如果认为User组对整个C盘有写入权限不安全,也可以把Temp目录设为有写入权限,问题也可以解决。

初步估计水晶报表引擎可能要在Temp目录里生成一些临时的交换文件,所以需要C盘Temp目录的操作权限。”

用aspnet

在 模型中 vs 已经完全脱离了编译而成为了一个彻底的ide 算是一个不小的改动 其中更是取消了有关Web Application的概念 使得习惯了vs 的人刚开始的时候会有一些摸不著头脑 下面简单说一下我在使用过程中自己总结的 算是一点经验

新建web工程并且位置是文件系统的时候 vs 只是帮你建好了一个sln文件 这个东西只是指引m *** uild 如何进行编译的 过程是 ide 调用 m *** uild m *** uild解析sln文件 m *** uild调用aspnet_piler exe进行网站的编译 所以aspnet_piler exe只是负责进行网站的编译的

预编译的概念在framework 里面就存在了 vs 中的预编译指的是将页面对应的cs/vb文件与resx文件编译后统一集成到一个dll中放到bin目录下 将aspx文件直接拷贝过去 这样做会留下隐患 因为aspx文件就直接暴露在最后的发行包中 如果完全是codeb behind模型还好 只能改改界面 如果采用了页面上的来生成页面 源代码就暴露了 针对这些问题 vs 采用了一种新的模式

请参看ASP NET 编译工具 (Aspnet_piler exe) 这篇文章了解对各种文件的处理方式

IDE发布

vs 中选择 生成 〉发布网站 在对话框中的操作将映射到aspnet_piler exe的参数中 可更新的发布对应 u 其他选项类似 请参考上面的文章了解

注意 发布时将忽略nfig中的debug?问骋簧晌薜魇孕畔⒌奈募?

手工编译

简单说来 如果是无更新发布模式编译 appcode下面的class编译成dll放在bin下 页面内容清空位置不变作占位用 同时页面被编译成一个随机名称的dll 增加一个同piled文件到bin目录下 内容大概如下

?xml version= encoding= utf ?

preserve resultType= virtualPath= /Forum/AdminList aspx hash= c filehash= f d c flags= assembly= App_Web_hmrycg w type= ASP forum_adminlist_aspx

filedeps

filedep name= /Controls/footer ascx /

filedep name= /Controls/header ascx /

filedep name= /Forum/AdminList aspx /

filedep name= /Forum/AdminList aspx cs /

filedep name= /Forum/menu ascx /

filedep name= /Forum/menu ascx cs /

/filedeps

/preserve

里面只是列出了页面上的customcontrol 这里已经完成了和masterfile的映射 这样最大限度的保护了页面的敏感信息 发布过的网站中只能看见一堆文件名了 可更新的发布模式与vs 类似 页面就直接拷贝过来不予编译了

讲了一堆原理 下面说一下aspnet_piler exe的调用方法 这是我使用的例子

我的开发目录是这样的

Project/

library/

devroot/

pubroot/

proj sln

使用的命令如下

aspnet_piler v / p \devroot f \pubroot

分析

v / 指明了iis的虚拟目录

p \devroot 表示代码实际位置

\pubroot 指明了要发布的位置

f 表示强制改写目标位置

lishixinzhi/Article/program/net/201311/13677

VB.NET中使用AspNetPager控件的详细用法

AspNetPager简单使用方法 AspNetPager作为分页工具,常常用于绑定数据控件,如DataGrid , Repeater等

在这里,简单讲解下 绑定 Repeater 控件的方法,其余控件绑定方法类似:

'全局变量 i 用于 读取 数据集记录的条数(注意:读取一次就够了)

Dim i As New Integer

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

If i = 0 Then

con = New SqlConnection(ConfigurationManager.ConnectionStrings("NEWS_ConnectionString").ConnectionString)

con.Open()

cmd = New SqlCommand()

cmd.Connection = con

cmd.CommandText = "select count(*) from XWNRB "

'AspNetPager控件 可见

Me.AspNetPager1.Visible = True

'AspNetPager控件 每页显示大小为10条记录

Me.AspNetPager1.PageSize = 10

'AspNetPager控件 记录总的记录条数

Me.AspNetPager1.RecordCount = Convert.ToInt32(cmd.ExecuteScalar())

'AspNetPager控件 数据绑定

Me.SHOW_DATA_LIST()

i = i + 1

con.Close()

End If

End Sub

Protected Sub SHOW_DATA_LIST()

con = New SqlConnection(ConfigurationManager.ConnectionStrings("NEWS_ConnectionString").ConnectionString)

sql_Text = "select * from XWNRB where "

da = New SqlDataAdapter(sql_Text, con)

Dim ds As New Data.DataSet

'第一个参数为存储入的数据集为ds

'第二个参数为存储的起始记录序号

'第三个参数为存储的记录每页条数

'第四个参数为存储入的数据集ds中的具体某个表

da.Fill(ds, Me.AspNetPager1.PageSize * (Me.AspNetPager1.CurrentPageIndex - 1), Me.AspNetPager1.PageSize, "NEWS_LIST")

'真正绑定

Me.Repeater2.DataSource = ds.Tables("NEWS_LIST").DefaultView

Me.Repeater2.DataBind()

End Sub

'即每次点击新的页面,或者点击 Pre,Next,Last.....时候都会触发这个事件

Protected Sub AspNetPager1_PageChanged(ByVal src As Object, ByVal e As Wuqi.Webdiyer.PageChangedEventArgs) Handles AspNetPager1.PageChanged

'更新当前所在的页数序列

Me.AspNetPager1.CurrentPageIndex = e.NewPageIndex

'更新完后绑定

Me.SHOW_DATA_LIST()

End Sub


文章标题:aspnetvb报表 aspnet mvc 报表
转载注明:http://hbruida.cn/article/dodesdg.html