如何在asp.net-Silverlight应用程序中精确获取aspx页面传递的参数

教程大全 2026-02-05 19:43:24 浏览

在ASP.NET Silverlight应用程序中获取载体ASPX页面参数

随着互联网技术的不断发展,ASP.NET和Silverlight技术已经广泛应用于Web应用程序的开发,在开发过程中,我们经常需要在载体ASPX页面中传递参数到Silverlight应用程序中,本文将详细介绍如何在ASP.NET Silverlight应用程序中获取载体ASPX页面参数。

使用Query String传递参数

在ASPX页面中,可以通过在URL后面添加查询字符串的方式来传递参数,以下是一个示例:

访问Silverlight应用程序

在Silverlight应用程序中,可以通过以下方式获取这些参数:

string param1 = Request.QueryString["param1"];string param2 = Request.QueryString["param2"];

使用Postback传递参数

如果载体ASPX页面使用了Postback,那么可以通过隐藏字段(Hidden Field)来传递参数,以下是一个示例:

在Silverlight应用程序中,可以通过以下方式获取这些参数:

string param1 = this.FindName("hfParam1").ToString();string param2 = this.FindName("hfParam2").ToString();

使用ViewState传递参数

如果载体ASPX页面使用了ViewState,那么可以通过ViewState来传递参数,以下是一个示例:

在Silverlight应用程序中,可以通过以下方式获取这些参数:

string param1 = ViewState["hfParam1"].ToString();string param2 = ViewState["hfParam2"].ToString();

使用Session传递参数

应用中精确获取aspx页面传递的参数

如果需要在多个页面之间传递参数,可以使用Session来存储参数,以下是一个示例:

在Silverlight应用程序中,可以通过以下方式获取这些参数:

string param1 = smParams["param1"].ToString();string param2 = smParams["param2"].ToString();

使用Cookies传递参数

如果需要在客户端存储参数,可以使用Cookies来传递参数,以下是一个示例:

在Silverlight应用程序中,可以通过以下方式获取这些参数:

string param1 = cmParams["param1"].Value.ToString();string param2 = cmParams["param2"].Value.ToString();

Q1:在Silverlight应用程序中,如何判断是否接收到参数?

在Silverlight应用程序中,可以通过判断参数是否为null或者空字符串来判断是否接收到参数,以下是一个示例:

if (!string.IsNullOrEmpty(param1)){// 参数存在}else{// 参数不存在}

Q2:在传递大量参数时,哪种方式更加高效?

在传递大量参数时,推荐使用Session或Cookies,因为它们可以存储更多的数据,并且对性能的影响较小,Query String和ViewState在传递大量参数时可能会对性能产生较大影响。


C#获取某应用程序窗体中控件的句柄

如果窗口是现有程序的,使用vs自带的spy++获取窗口的相关信息,然後使用winapi获取句柄,具体参考spy++的使用方法和winapi的使用findwindow(lpclassname,{窗口的类名}lpwindowname: pchar {窗口的标题}): hwnd;{返回窗口的句柄; 失败返回 0}//findwindowex 比 findwindow 多出两个句柄参数:findwindowex(parent: hwnd; {要查找子窗口的父窗口句柄}child: hwnd;{子窗口句柄}classname: pchar; {}windowname: pchar {}): hwnd;如果窗口是你的程序动态生成的,使用如下语句 form _form=new form();intptr _p = _;_p就是你实例化的窗口句柄

aspx怎样调用cs函数,带参数,要获取返回值

1、使用ajax调用,不过那样也不能直接调用的,只能通过ajax传递的数据,再在后台进行判断,然后在后台进行调用该方法。 2、第二种在页面中用<%Login(string name, string pw)%>,但这种方法肯定不能满足的登录需求的,因为这样调用会在页面周期的最后进行执行,而不是点击登录或什么的时候执行3、还是使用ajax,不过这个方法不放在本页面的里,可以放在文件中,然后进行异步请求(要同步执行)。

ASP.net的三层架构

为何使用N层架构? 因为每一层都可以在仅仅更改很少量的代码后,就能放到物理上不同的服务器上使用,因此结构灵活而且性能更佳。 此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不再需要重新编译或者更改全部的层了。 这是个很强大的功能。 例如,如果把数据访问代码与业务逻辑层分离,当数据库服务器更改后,你只需要更改数据访问的代码,因为业务逻辑层是不变的,因此不需要更改或者重新编译业务逻辑层。 一个N层的应用程序通常有三层:表现层、业务层和数据层。 下面让我们看看每层都做些什么。 表现层(Presentation Layer) 表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。 在中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。 业务层(Business Tier) 业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。 在中,该层包括使用SqlClient或OleDb从SQL Server或Access数据库取数据、更新数据及删除数据,并把取得的数据放到DataReader或DataSet中返回给表现层。 返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。 BLL和DAL 通常该层被划分成两个子层:业务逻辑层(Business Logic Layer,BLL)和数据访问层(Data Access Layers,DAL)。 业务逻辑层在数据访问层之上,也就是说BLL调用DAL的类和对象。 DAL访问数据并将其转给BLL。 在中,该层可以用SqlClient或OleDb从SQL Server或Access数据库取数据,把数据通过DataSet 或DataReader的形式给BLL,BLL处理数据给表现层。 有的时候,例如直接把DataSet 或DataReader送给表现层的时候,BLL是一个透明层。 数据层(Data Tier) 数据层是数据库或者数据源。 在中,通常它是一个SQL Server或Access数据库,但不仅限于此两种形式,它还可能是Oracle,mySQL,甚至是XML。 逻辑层VS(分布式)物理层 人们容易将这两个概念搞混。 我们说逻辑层是把层按类的集合来划分,而这些层都在同一台个服务器上。 (分布式)物理层是指类的集合在不同的服务器上,用附加的代码来处理层间的通信,比如remoting和web服务。 决定如何划分你的层(是物理的还是不是物理的)是非常重要的。 在划分时应考虑下面因素: 1、注意如果划分成物理层,你的应用程序的速度会因为不同服务器在网络中通信的延迟而减慢。 所以,如果你决定用物理层,请确保获得性能的提升大于性能的降低。 2、按照n层架构设计你的应用程序。 3、部署以及维护物理分布式的应用程序的成本是很高的。 你首先需要不止一台服务器,你还需要网络硬件来连接这些服务器。 在这种情况下,部署应用变得更加复杂!因此这样做之前请确定这样做是否值得。 另外还要注意,你的应用程序的每层都做何使用。 你也许因为运行的多个服务都需要某一层而把该层放到别台服务器上。 例如,你也许会因为给不同的用户定制不同的表现层,而将业务逻辑层放于别处;你也许会因为还有其它的应用访问同一个数据库,而把SQL server服务放到别处

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐