前些日子做个项目,在Silverlight的Page.xaml页面中读取数据库的信息,要将此登录信息传递给Aspx页面,涉及到Silverlight与Asp.Net交互的问题。
这里要将UserID、RoleID的值传递给一个Aspx页面,变成登录的Session变量,如何解决!
这里用一个简单的方法来实现。
这里如果是要将Aspx中的值传递给Silverlight中Xaml的页面,如何解决呢?这里给个思路!
在Silverlight2中可以用那个InitParameter来传递,但在Sl3中又改变了方式:
<param name="initparams" value="path=GeneratedImages/dzc_output.xml,zoomIn=3" />
App.Xaml.cs里
if (e.InitParams != null)
{
foreach (var data in e.InitParams)
{
.....
}
}
这里还可以采用以下直接的方法:
把参数直接存在: <input type="hidden" id="YouParaName" name="YouParaName" value="YouParaValue" >
然后在SL里面:HtmlPage.Document.GetElementById("YouParaName").GetAttribute("value")
这样也很方便,而且更容易理解,而且方便Post到服务器。