除了可能需要进行的 WCF 调整(在此处记录here),您还需要考虑将文件存储在服务器上的位置。您不能只写入本地驱动器。好吧,您可以,但本地存储不能保证持续存在。相反,您需要考虑将上传存储在 Azure Blob 中,这被认为是持久性存储(它备份到多个位置)。
如果您直接从 Silverlight 客户端上传到 Azure Blob,则需要使用 Azure 存储 API 进行连接。您需要小心嵌入您的密钥在 Silverlight 应用程序中,建议使用共享访问签名 - 有关此更多信息,请参见Steve Marx's post。
您还可以继续使用 WCF 服务,并使该服务方法将您的上传存储到 Blob 中。这使您能够保持 Silverlight 应用程序的上传逻辑完整,并且还依赖于您的服务层来跟踪对已上传文件的访问。