我们可以从SIlverlight应用程序访问Asp.Net中的Session变量吗?

Mis*_*ish 2 silverlight

我们可以从SIlverlight应用程序访问Asp.Net中的Session变量吗?

Ant*_*nes 5

获取Session变量值有两种方法.

第一种是在托管Silverlight应用程序的ASPX页面的生成HTML中包含该值.InitParams <Param>在silverlight对象的标记中添加值.

 <param name="initParams" value="myValue=<%=Server.HTMLEncode(Session["myValue"].ToString())%>" />
Run Code Online (Sandbox Code Playgroud)

现在在Silverlight代码中,您可以访问此值: -

string myValue = Application.Current.Host.InitParams["myValue"];
Run Code Online (Sandbox Code Playgroud)

以上是最可能出现的情况.如果您还需要在执行Silverlight应用程序期间改变会话值和/或读取变量的可能更改值,那么事情就会变得棘手.

在这一点上,许多人可能会建议创建一些WCF以帮助解决这个问题.或者,我可能倾向于创建一个简单地接受和/或返回一些Xml的.ashx文件,它可以帮助完成这种非常简单的服务器端工作.