我自己有一个自托管的WCF服务器设置,它提供clientaccesspolicy.xml和index.htm,它只是指向我的xap(可通过app.xap访问)。
我目前通过以下代码为他们提供服务:
Public Function GetPolicy() As System.IO.Stream Implements IClientAccessPolicy.GetPolicy
WebOperationContext.Current.OutgoingResponse.ContentType = "application/xml"
Return New IO.MemoryStream(IO.File.ReadAllBytes("Server Files/ClientAccessPolicy.xml"))
End Function
Public Function GetIndex() As IO.Stream Implements ISilverlightServer.GetIndex
WebOperationContext.Current.OutgoingResponse.ContentType = "text/html"
Return New IO.MemoryStream(IO.File.ReadAllBytes("Server Files/index.htm"))
End Function
Public Function GetXap() As IO.Stream Implements ISilverlightServer.GetXap
WebOperationContext.Current.OutgoingResponse.ContentType = "application/x-silverlight-app"
Return New IO.MemoryStream(IO.File.ReadAllBytes("Server Files/app.xap"))
End Function
它有效,是我做的工作。但是,我不认为这会正确地传输xap,我知道它是一种流媒体类型。如果这不是正确的流式传输,我该如何流式传输呢?
(XAP和index.htm文件通过的端点具有webHttpBinding绑定)
它是否正常流式传输?或者我应该做些改变吗?
答案 0 :(得分:2)
没关系,XAP文件不需要流式传输到客户端。实际上,它需要首先完全下载(因此在客户端缓冲)才能启动SL应用程序,因此在这种情况下您无需担心流式传输。